在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
-
重启系统,新的默认启动项应该已经生效。