远程运行QEMU(通过SSH)

28

我有一台我正在进行实验的服务器,有时我想在家里工作,所以我安装了“ssh守护进程”(即“sshd”),可以通过ssh连接到服务器。这个很好用。但是当我尝试在服务器上使用“qemu”运行虚拟机时,会出现以下错误:无法初始化SDL(没有可用的视频设备)-退出

能否通过ssh连接运行qemu?

请注意,我不想看到我启动的虚拟机的图形界面,只需要让它运行即可。

5个回答

63

尝试使用qemu -cursesqemu -nographic 来绕过SDL界面


4
你如何退出 curses 界面? - k4rtik
1
@k4rtik 在使用“-curses”选项时:按下Alt-1打开QEMU监视器,然后输入“quit”,再按回车键。在使用“-nographic”选项时:按下ctrl-a,然后按x退出(或按h获取帮助)。 - pcworld

16

解决此问题的最佳方法是在ssh参数中添加-X

例如:ssh -X user@server

这将允许由QEMU创建的窗口通过SSH X-Forwarded到您的计算机。无论您是否想查看窗口,如果QEMU无法打开它,则会认为它是致命错误,并出现您描述的错误。


这个解决方案对我很有帮助。我正在使用 AWS 的 EC2 上的 Ubuntu 16.04。 - Puriney

9

你可以禁用显卡:

qemu -vga none (...options...)

您也可以将屏幕导流到VNC而不是SDL - 以下内容将在端口5901上提供VNC服务器:

qemu -vnc :1 (...options...)

“-vnc :1” 对我来说是解决方案(不需要“-curses”或“-nographic”)。稍后使用“vncviewer QEMU_SERVER_IP:5901”(tigervnc)连接。 - wencha

9

qemu-system-i386 -curses 像魔法一样奏效。

要退出,请使用 ESC + 2 然后再按 q + ENTER


0

我也遇到了这个问题。 我认为位运算符不能像qemu一样打开一个新的终端窗口。 你可以在终端中编写 make clean qemu-nox,而不仅仅是 make clean qemu,它会在同一个窗口中启动它。 这对我有用。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接