VirtualBox:Guest 突然只能启动到 UEFI Interactive Shell

Lin*_*eak 16 virtual-machine virtualbox uefi

VirtualBox 5.x 在 GNU/Linux Debian 9.x 主机上运行的问题:

启用 EFI 的来宾突然只能启动到UEFI Interactive Shell。

UEFI 交互式外壳

它等待 5 秒钟,然后下降到Shell>

我不记得对主机、来宾或 VirtualBox 本身所做的任何修改。

Lin*_*eak 19

合理的修复:

  1. 在 UEFI Interactive Shell 中,输入文件系统:

    fs0:
    
    Run Code Online (Sandbox Code Playgroud)
  2. 继续创建此文件:

    edit startup.nsh
    
    Run Code Online (Sandbox Code Playgroud)
  3. 输入此行或类似行:

    \EFI\debian\grubx64.efi
    
    Run Code Online (Sandbox Code Playgroud)
  4. CTRL+S保存文件。

  5. ENTER确认文件名。

  6. CTRL+Q退出编辑器。

  7. 重新启动访客:

    reset
    
    Run Code Online (Sandbox Code Playgroud)

重要笔记:

  1. 出于某种原因,您只有几秒钟的时间来编辑和保存文件。如果您需要更长的时间,那么客人的反应可能会显着延迟。或者它甚至可能冻结。

  2. 替换debian为您系统的 ID,例如ubuntu. 您可以通过简单地进入\EFI\目录并运行ls.


其它的办法:

如果你不成功,假设你的访客是 Linux 类型,我自己必须这样做:

  1. 使用任何 Linux 从实时 USB 启动。

  2. 挂载根文件系统。

  3. 在已挂载的文件系统上创建此文件,将路径调整到已挂载的位置:

    /boot/efi/startup.nsh
    
    Run Code Online (Sandbox Code Playgroud)
  4. 输入上面解释的行。


小智 5

解决方法:

在虚拟机的 VirtualBox 设置中,转到系统设置,然后在主板部分取消选中

启用 EFI(仅限特殊操作系统)。

保存设置并重新启动虚拟机。


重要笔记:

  1. 这将使来宾系统在 BIOS / MBR 传统引导上运行。

  2. 仅当上述解决方案对您不起作用时才使用。