为什么 `virsh console x` 挂在“转义字符是 ^]”上? (qemu-kvm)

为什么 `virsh console x` 挂在“转义字符是 ^]”上? (qemu-kvm)

我两个月前开始工作的公司有一个旧的虚拟机管理程序,运行着一些虚拟机。我登录到其中一台机器(当时我不知道它是虚拟机器)并更改了一些网络设置并重新启动了网络服务。从那一刻起,我无法再通过网络访问该机器,所以我认为我在配置上犯了错误。当我开始搜索物理服务器时,我发现它是一个虚拟机。

我确实可以通过 SSH 访问虚拟机,并且可以看到虚拟机仍在运行 ( virsh list),但无法访问机器,virsh console machinename因为它挂起Escape character is ^]

当然,我用谷歌搜索了这个错误,发现它与 ?? 有关。虚拟串口配置?和/或一些? grub 设置??,都在虚拟机上。这些解决方案都是基于这样的事实:我可以登录虚拟机,但我不能......

有没有办法通过虚拟机管理程序 SSH 连接访问虚拟机?

有关虚拟机管理程序的一些信息。不要责怪版本,因为该虚拟机管理程序(和虚拟机)很快就会被替换:

  • 操作系统:CentOS 版本 6.4(最终版)
  • 使用库:libvirt 0.10.2
  • 使用的API:QEMU 0.10.2
  • 运行管理程序:QEMU 0.12.1

的结果yum info qemu-kvm

Installed Packages
Name        : qemu-kvm
Arch        : x86_64
Epoch       : 2
Version     : 0.12.1.2
Release     : 2.506.el6_10.7

我不知道这些信息是否足以帮助我,但我也不知道还需要哪些信息。如果缺少某些内容,请告知我们,提前感谢您的帮助!

答案1

例如,运行virsh console machinename是连接到系统上的控制台,就像将串行电缆和哑终端连接到物理主机一样。如果您的虚拟机没有getty侦听该控制台端口,那么您不应期望看到任何内容。

根据主机的配置,如果您将 console=ttyS0 添加到引导加载程序的内核参数(假设它是第一个串行控制台),它可能会自动检测虚拟控制台。

此外,如果您可以通过其他方式登录,则可以在虚拟机上手动启动它。systemctl start [email protected]

答案2

我无法以某种方式访问​​虚拟机,因为我在网络配置中犯了一个错误,并且virsh console machinename没有按照我的问题中的解释工作。

经过很长时间的搜索,我找到了这个工具Virtual Machine Managerhttps://virt-manager.org/)。我将其安装在 Ubuntu 桌面计算机上,并且能够将该工具连接到虚拟机管理程序。该工具为实际运行的虚拟机提供了 ssh 接口。这样我就能够修复网络设置并配置serial interface.

我想说,问题解决了

相关内容