在Linux From Scratch (LFS)中设置启动项通常涉及到修改系统的引导加载程序配置
首先,确保你已经完成了LFS的构建过程,并且已经安装了GRUB引导加载程序。如果还没有安装,请参考以下步骤:
a. 安装必要的软件包:
make linux-boot
b. 复制GRUB引导加载程序到目标文件系统:
make install-grub
找到GRUB配置文件。在LFS中,它通常位于/boot/grub/grub.cfg
。你可以使用任何文本编辑器打开它,例如nano
或vi
:
sudo nano /boot/grub/grub.cfg
在grub.cfg
文件中,找到你想要添加的启动项。启动项通常以menuentry
关键字开始,后面跟着一个描述性标签和启动内核的相关参数。例如:
menuentry "Ubuntu (64-bit)" {
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
linux /boot/vmlinuz-linux root=/dev/sda1 ro
initrd /boot/initramfs-linux.img
}
要添加新的启动项,请在grub.cfg
文件中添加一个新的menuentry
条目,如下所示:
menuentry "Custom Linux (64-bit)" {
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
linux /boot/vmlinuz-linux root=/dev/sda1 ro
initrd /boot/initramfs-linux.img
}
在这个例子中,我们添加了一个名为"Custom Linux (64-bit)"的新启动项。
保存并关闭grub.cfg
文件。
重启系统,你应该能在GRUB引导菜单中看到新的启动项。选择新添加的启动项并按回车键启动系统。
请注意,直接修改grub.cfg
文件可能会导致引导加载程序在下次更新时丢失更改。为了避免这种情况,你可以通过编辑/etc/default/grub
文件来配置GRUB,然后重新生成grub.cfg
文件。具体步骤如下:
使用文本编辑器打开/etc/default/grub
文件:
sudo nano /etc/default/grub
修改GRUB_DEFAULT
变量,将其设置为你想要默认启动的内核对应的菜单条目名称。例如,如果你想要默认启动刚刚添加的"Custom Linux (64-bit)"启动项,可以将其设置为:
GRUB_DEFAULT="Custom Linux (64-bit)"
保存并关闭/etc/default/grub
文件。
重新生成grub.cfg
文件:
sudo update-grub
重启系统,新的默认启动项应该已经生效。