To be a better coder
分类: LINUX
2020-05-08 09:57:43
顺便先试一下EFISTUB。这个更早,11年Linux 3.3加入。简单来说,它让kernel自己成为EFI bootloader,从而不需要再安装别的bootloader(如grub),而直接从EFI BIOS引导。
安装方法非常简单:
efibootmgr -d /dev/sda -p 1 -c -L "Arch Linux" -l /vmlinuz-linux -u "root=/dev/sda2 rw initrd=/initramfs-linux.img"
好了,重启进BIOS选择引导顺序就成了。比安装grub步骤更少。
理论上也可以不用efibootmgr,在BIOS里直接添加引导项。但我不知道怎么在BIOS里输入命令行参数...
说回systemd-boot。安装也不复杂。
title archlinux
linux /vmlinuz-linux
initrd /initramfs-linux.img
options root=/dev/sda2 rw
好了。
systemd-boot的优点(相比grub):
可是问题来了:systemd-boot只能引导两种东西:
而前面说了,Linux kernel本身就是EFI bootloader。所以这东西就是个选择EFI bootloader的菜单,和BIOS自带的菜单功能差不多。唯一好处是,编辑配置文件毕竟比操作efibootmgr简单。可是,rEFInd可以0配置完成同样功能。所以说,systemd搞这个有啥用啊... 倒是前面被我们嫌弃的grub反而不可替代,因为它可以loopback引导live iso。