如何在 virsh 域/VM 中运行 shell
要在 virsh 域(VM)中运行 shell,你可以使用 virsh console 命令。这允许你连接到运行中虚拟机的控制台。以下是操作方法:
- 打开终端在你的主机上。
- 列出运行中的域以找到你要连接的 VM 的名称或 ID:run_shell_in_vm.sh
virsh list - 连接到控制台使用其名称或 ID 连接到所需 VM 的控制台:virsh_console.sh
virsh console <domain-name-or-id> - 退出控制台完成后按
Ctrl+](这是 virsh console 的默认转义序列)。
如果 virsh console 不起作用
如果 virsh console 不起作用,可能是由于 VM 没有在其 /dev/ttyS0 上配置控制台。
在这种情况下,如果 VM 运行了 SSH 服务器,你只能使用 SSH 连接到 VM。你可以使用 libvirt/virsh:如何列出所有域/VM 及其 IP 地址中的方法:
virsh_dhcp_leases.sh
virsh net-dhcp-leases default示例输出:
virsh_dhcp_leases_output.txt
Expiry Time MAC address Protocol IP address Hostname Client ID or DUID
-----------------------------------------------------------------------------------------------------------------------------------------------------
2025-02-05 02:11:17 4c:68:29:d5:aa:55 ipv4 192.168.122.73/24 abcdefghi-vm01 ff:b5:5e:67:ff:00:02:00:00:ab:11:53:fb:4f:97:fb:ea:c5:13
2025-02-05 02:06:19 52:54:00:12:34:56 ipv4 192.168.122.76/24 test1234-vm ff:40:56:63:a2:00:02:00:00:ab:11:39:d1:c8:61:96:3d:82:64现在你可以使用输出中显示的 IP 地址通过 SSH 连接到 VM:
ssh_into_vm.sh
如果通过 SSH 连接对你不起作用
在这种情况下,你需要配置串行控制台并重启 VM。
请按照 Ravada 中的方法进行操作。
Check out similar posts by category:
VirtIO
If this post helped you, please consider buying me a coffee or donating via PayPal to support research & publishing of new posts on TechOverflow