LFS kernel panic解决方法之替换内核及配置fstab等

/*********************************************************************
 * Author  : Samson
 * Date    : 04/27/2015
 * Test platform:
 *              gcc (Ubuntu 4.8.2-19ubuntu1) 4.8.2
 *              GNU bash, 4.3.11(1)-release (x86_64-pc-linux-gnu) 
 * *******************************************************************/

进行LFS实操的版本选择的是LFS 7.7,有关文档及应该下载的源码包的列表等可以下面地址中下载到:
http://www.linuxfromscratch.org/lfs/downloads/stable/, 其中的wget-list文件中的内容为下载的包的地址,LFS-BOOK-7.7.pdf是LFS操作的一步一步的操作及注意事项。

其中,磁盘的布局方式为:
root@ufo:/home/ufo# lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0    45G  0 disk
├─sda1   8:1    0  43.1G  0 part /
├─sda2   8:2    0     1K  0 part
└─sda5   8:5    0   1.9G  0 part [SWAP]
sdb      8:16   0    20G  0 disk
├─sdb1   8:17   0  15.5G  0 part /mnt/lfs
└─sdb2   8:18   0   4.5G  0 part
sr0     11:0    1   222M  0 rom  /media/cdrom0

//查看宿主机的fstab配置即可看到宿主机使用的是sda硬盘,即第一块硬盘
root@ufo:/home/ufo# cat /etc/fstab
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sda1 during installation
UUID=a22e5a2c-9642-40ec-8ff8-15563b649944 /               ext4    errors=remount-ro 0       1
# swap was on /dev/sda5 during installation
UUID=8ea7c2a2-3d4b-4bc8-ab49-0724190fba8d none            swap    sw              0       0
/dev/sr0        /media/cdrom0   udf,iso9660 user,noauto     0       0
/dev/fd0        /media/floppy0  auto    rw,user,noauto  0       0
//使用blkid查看每个分区的UUID,以和上面的fstab中的UUID进行对应,以找到对应的磁盘分区。
root@ufo:/home/ufo# blkid
/dev/sda5: UUID="8ea7c2a2-3d4b-4bc8-ab49-0724190fba8d" TYPE="swap"
/dev/sda1: UUID="a22e5a2c-9642-40ec-8ff8-15563b649944" TYPE="ext4"
/dev/sdb1: UUID="81f51ac1-1e1c-4238-82fa-8ef65d6f7fa2" TYPE="ext4"
/dev/sdb2: UUID="1c603624-94f8-4dfd-bfe9-31a4f5857b94" TYPE="swap"
/dev/sr0: LABEL="Debian 7.8.0 amd64 1" TYPE="iso9660"

其中,由以上命令可以看出,sda主要是用于宿主机的,我们将在sdb(即第二块硬盘)中进行LFS环境的搭建。选择sdb1为LFS根分区,sdb2为LFS的swap空间,通过上面的blkid可知(执行此条命令的时候已经分析好了硬盘空间,并已经进行了格式化)。

UUID与磁盘的对应关系查看:
ls /dev/disk/by-uuid/ -l

lrwxrwxrwx 1 root root 10  8月 16 09:46 250b1d96-6c30-455f-bc9b-1cc31dc9b957 -> ../../sda6
lrwxrwxrwx 1 root root 10  8月 16 09:46 29c8d688-ac41-4dd6-971d-da21d7be20c6 -> ../../sda7
lrwxrwxrwx 1 root root 10  8月 16 09:46 76c825c3-1f61-463f-a229-f2294e605eb3 -> ../../sda5
lrwxrwxrwx 1 root root 10  8月 16 09:46 7CDEA21BDEA1CDA8 -> ../../sda3
lrwxrwxrwx 1 root root 10  8月 16 09:46 A4A29DF2A29DC966 -> ../../sda2
lrwxrwxrwx 1 root root 10  8月 16 09:46 AC661A3E661A0A2A -> ../../sda1

以下命令都在宿主机进行:
//使用宿主机Debian中的内核4个文件自制到lfs环境的boot下
cp /boot/config-3.2.0-4-amd64 /boot/initrd.img-3.2.0-4-amd64 /boot/vmlinuz-3.2.0-4-amd64 /boot/System.map-3.2.0-4-amd64 /mnt/lfs/boot/
//update-grub is a stub for running  grub-mkconfig -o /boot/grub/grub.cfg to generate a grub2 config file.
//在宿主机环境下执行以下命令进行基于宿主系统的grub项的更新,即添加定制的LFS到grub菜单中。
update-grub2

//修改LFS环境的fstab(建议在chroot的环境下修改)
vim /etc/fstab
# Begin /etc/fstab
# file system mount-point type options dump fsck
# order
/dev/sda1 / ext4 defaults 1 1
/dev/sda2 swap swap pri=1 0 0
proc /proc proc nosuid,noexec,nodev 0 0
sysfs /sys sysfs nosuid,noexec,nodev 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
tmpfs /run tmpfs defaults 0 0
devtmpfs /dev devtmpfs mode=0755,nosuid 0 0
# End /etc/fstab

然后重启,即可进入到grub选择菜单,选择LFS相关项即可启动LFS系统。

163
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值