![从 busybox 更改 UEFI 启动顺序](https://linux22.com/image/140112/%E4%BB%8E%20busybox%20%E6%9B%B4%E6%94%B9%20UEFI%20%E5%90%AF%E5%8A%A8%E9%A1%BA%E5%BA%8F.png)
使用 efibootmgr 生成新的 efi 启动项后:
# efibootmgr -c -g -L "Debian (EFI stub)" -l '\EFI\debian\vmlinuz' -u "root=UUID=955548bd-9c77-4893-8633-3a5e7966dfc9 ro quiet rootfstype=ext4 add_efi_memmap initrd=\\EFI\\debian\\initrd.img"
系统无法启动,只是陷入BusyBox shell。
如何将引导顺序更改为旧条目?就像是
# efibootmgr -o 0004,0005,0000,0001,0002,0003
答案1
以下是在 Debian 系统上更改 efi 启动顺序的步骤:
在 BusyBox 上,加载 fs 的内核模块,在我们的例子中:
# modprobe ext4
挂载所需的分区。请注意,在我们的特定情况下,root fs 位于 sda3 上:
# mkdir /mnt
# mount -t ext4 /dev/sda3 /mnt
# mount /proc /mnt/proc
# mount /sys /mnt/sys
chroot 进入它:
# chroot /mnt
加载挂载文件系统和使用 efibootmgr 所需的内核模块:
# modprobe efivars
# modprobe vfat
# modprobe efivarfs
挂载所需路径:
# mount -t efivarfs efivarfs /sys/firmware/efi/efivars
现在,您可以使用 efibootmgr:
# bin/efibootmgr -v
# bin/efibootmgr -o 0005,0004,0000,0001,0003,0001,0002
以 chroot 结束并退出:
# sync
# exit
重新启动并享受。