从无到有构建一个Mini Linux(1)
2016-12-10 08:44
309 查看
过程(1):
首先在宿主机上添加一块新的硬盘
分区格式化并挂载
源码编译安装内核(支持硬盘,cup,pci,硬件支持)
安装grub
第一次测试
1.添加一块新的硬盘
我们添加的sdc
(a)使系统识别我们新添加的硬盘
2.分区格式化并挂载
3.源码编译安装内核
4.在目标磁盘上boot目录上安装grub
//提供grub的配置文件
5.第一次测试(第一次测试启动(只有内核和grub))
首先在宿主机上添加一块新的硬盘
分区格式化并挂载
源码编译安装内核(支持硬盘,cup,pci,硬件支持)
安装grub
第一次测试
1.添加一块新的硬盘
我们添加的sdc
(a)使系统识别我们新添加的硬盘
[root@centos6 ~]# echo "- - -" > /sys/class/scsi_host/host0/scan [root@centos6 ~]# echo "- - -" > /sys/class/scsi_host/host1/scan [root@centos6 ~]# echo "- - -" > /sys/class/scsi_host/host2/scan [root@centos6 ~]# lsblk sdc 8:32 0 20G 0 disk //成功识别
2.分区格式化并挂载
[root@centos6 ~]# fdisk /dev/sdc [root@centos6 ~]# lsblk sdc 8:32 0 20G 0 disk ├─sdc1 8:33 0 509.9M 0 part //作为/boot分区 └─sdc2 8:34 0 10G 0 part //作为根分区 [root@centos6 ~]# mkfs -t ext4 /dev/sdc1 [root@centos6 ~]# mkfs -t ext4 /dev/sdc2 [root@centos6 ~]# blkid /dev/sdc1: UUID="f71f933c-8a83-461f-adc7-4c7f2ba34da2" TYPE="ext4" /dev/sdc2: UUID="099506f4-fb21-421e-87c6-fe1bbbd03680" TYPE="ext4" [root@centos6 ~]# mount /dev/sdc1 /mnt/boot [root@centos6 ~]# mount /dev/sdc2 /mnt/sysroot/ [root@centos6 ~]# mount /dev/sdc1 on /mnt/boot type ext4 (rw) /dev/sdc2 on /mnt/sysroot type ext4 (rw)
3.源码编译安装内核
//不采用模块方式,直接将关键驱动做进内核核心中 [root@centos6 ~]# tar xf linux-3.10.67.tar.xz -C /usr/src //我们采用3.10版本的内核 [root@centos6 ~]# cd /usr/src [root@centos6 src]# ln -sv linux-3.10.67/ linux [root@centos6 src]# cd linux [root@centos6 linux]# make allnoconfig ==> 从头开始选择 [root@centos6 linux]# lscpu //查看cpu [root@centos6 linux]# lspci //查看pci、硬盘 [root@centos6 linux]# make menuconfig //选择硬件平台 [*] 64-bit kernel --> 启用 [*] Enable loadable module support ---> [*] Module unloading 支持模块动态装卸载 Processor type and features ---> [*] Symmetric multi-processing support 多处理器支持 Processor family (Generic-x86-64) ---> (X) Generic-x86-64 Bus options (PCI etc.) ---> [*] PCI support 启用PCI总线 Device Drivers ---> SCSI device support ---> <*> SCSI device support <*> SCSI disk support [*] Fusion MPT device support ---> 由上图可知 <*> Fusion MPT ScsiHost drivers for SPI <*> Fusion MPT misc device (ioctl) driver
[root@centos6 linux]# make bzImage //只编译核心(不编译模块) [root@centos6 linux]# cp arch/x86/boot/bzImage /mnt/boot/vmlinuz//内核文件已近存在,由于我们把硬件驱动直接编译在内核中,所有不需要initrd文件
4.在目标磁盘上boot目录上安装grub
[root@centos6 ~]# grub-install --root-directory=/mnt/ /dev/sdc
//提供grub的配置文件
[root@centos6 linux]# vim /mnt/boot/grub/grub.conf default=0 timeout=5 hiddenmenu title sxj Minu root (hd0,0) kernel /vmlinuz root=/dev/sda2
5.第一次测试(第一次测试启动(只有内核和grub))
相关文章推荐
- 从无到有构建一个Mini Linux(3)
- 从无到有构建一个Mini Linux(5)
- 从无到有构建一个Mini Linux(2)
- 从无到有构建一个Mini Linux(4)
- 从无到有构建一个Mini Linux(7)
- 从无到有构建一个Mini Linux(6)
- 从无到有构建一个Mini Linux(8)
- 在写一个嵌入式Linux构建的初级教程,先放上两篇,请大家拍拍转。
- 在 Linux 上构建一个 RADIUS 服务器
- linux下eclipse构建并编译android一个简单jni项目
- Build an embedded Linux distro from scratch 从无到有打造Linux发布包 之3 构建内核
- 从头开始构建一个嵌入式 Linux 发行版
- 从头开始构建一个嵌入式 Linux 发行版
- Linux实验报告-构建一个LVS的DR模型
- 自己动手制作(DIY)一个Mini-Linux系统
- 从头开始构建一个嵌入式 Linux 发行版
- 在 Linux 上构建一个 RADIUS 服务器
- 一个绿色版本的LAMP包. (快速构建linux下的php开发环境)
- linux下eclipse构建并编译android一个简单jni项目