ubuntu从传统模式切换到uefi安全启动

  • 创建一个大小为100-200MB的FAT32分区
    可以用fdisk,parted,gparted等分区工具创建,分区类型为主分区,开启boot标志。如果没有剩余空间可以用livecd启动调整分区大小
  • 安装uefi启动相关依懒
    apt install shim-signed grub-efi grub-efi-amd64-signed
    shim-signed 是使用微软签名的uefi启动文件,是支持安全启动必须的
    grub-efi 为grub启用efi支持,但是不支持安全启动
  • 修复uefi启动
    ubuntu有三种方式可以修复启动

    1. 纯手工
      • 用ubuntu livecd启动进行桌面
      • 执行以下命令
        mount -t efivarfs none /sys/firmware/efi/efivars
        mount /dev/sdb3 /mnt
        mount /dev/sdb2 /mnt/boot
        mount /dev/sdb1 /mnt/boot/efi
        mount /dev/sdb2 /mnt/
        mount /dev/sdb1 /mnt/boot/efi
        for i in /dev /dev/pts /proc /sys /sys/firmware/efi/efivars /run; do mount -B i /mnt/i; done
        chroot /mnt
        grub-install /dev/sdb
        update-grub
        

        按Ctrl-D退出chroot
        重启电脑或虚拟机

    2. boot-repair包
      • 安装boot-repair
        sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt update
        sudo apt install -y boot-repair && boot-repair
        
      • 修复
        启动boot-repair,点击Recommended repair或者点开高级选项,然后分别选择efi分区,boot分区,系统分区,最后点击apply按钮
    3. 使用boot-repair disk
      boot-repair disk实际上就是一个集成了bot-repair的livecd,相当于Windows上的WinPE

      • 下载boot-repair disk
        https://sourceforge.net/projects/boot-repair-cd/files/
      • 使用下载的iso启动系统
        下面的步聚跟liveCD方式一样了

注意:
使用iso启动时若不能启动可以暂时关闭bios中的安全启动
以上方法即可以用于轨换启动式到uefi,也可以用于修复uefi引导
我是先在bios中切换到uefi启动然后去修复操作系统的引导的,不知道先修复引导再改bios行不行

发表回复