启动虚拟机后,无法正常进入系统

问题描述

开启虚拟机后通过ssh命令连接虚拟机,无法正常进入系统,出现如下报错“ssh: connect to host xxx port 22: No route to host”。

可能原因

EFI引导有误,无法进入系统。

解决方案

  1. 登录物理机。
  2. 执行如下命令,查询需要修改的虚拟机名称。

    virsh list --all

  3. 执行如下命令,进入EFI的shell命令界面。

    virsh console 虚拟机名称

    • 若显示如下,则表示无法登录虚拟机,请继续执行4
      Shell:
    • 若能够进入登录界面,请执行7

  4. 执行如下命令,进入分区FS0(根据环境实际情况选择分区)。

    FS0:

  5. 执行如下命令,进入EFI内的目录(根据虚拟机OS选择EFI内的目录)。

    cd EFI/虚拟机OS名称

  6. 执行如下命令,选择grub引导文件重新启动OS(在OS目录内根据实际情况选择执行的grub引导文件)。

    ls

    ./grubxxx.efi

    等待虚拟机OS启动。
    图1 OS启动示意图

  7. 执行如下命令,登录虚拟机。

    ssh 虚拟机名称

    若显示如下,表示登录虚拟机成功。

    login: