2017-06-04 99 views
0

我在virtualbox上安装了ubuntu serveropenssh server,它工作正常。当我从GUI启动它时,我可以通过ssh和Putty访问它,这没有任何问题。当我从virtualbox gui启动无头模式时,也没有问题。Virtualbox-以无头模式运行时无法访问VM

问题是,当我使用VBoxManage startvm "Ubuntu" --type headless运行它时,它返回一条消息,说Ubuntu正在无头模式下运行,但是当我想通过ssh连接它时,它不可访问。我的主机操作系统是Windows 10和Ubuntu的服务器名称为“Ubuntu的”和操作系统版本是ubuntu-16.04.2-server-x64和我装openssh-serverdkms,因为它说明如下:https://www.htpcbeginner.com/install-virtualbox-guest-additions-on-ubuntu-debian/

,当我在GUI evrything工作是不错,但我想运行它从Windows命令行中节省一些时间。

看起来好像命令行vm "Ubuntu"与GUI vm "Ubuntu"不一样。但是我在virtualbox上只有一个虚拟机。在gui中有一个,并在cmd vboxmanage list vms返回一个vm。那么问题是什么? 我还添加了VirtualBox的客人除了从设备菜单中的VirtualBox GUI

编辑:

我看到另一个命令:VBoxHeadless --startvm "Ubuntu"它不工作要么。但不像上一个命令,它不显示Ubuntu正在运行的消息。实际上它会停留在执行阶段,并且光标变成永远闪烁的破折号。所以我应该关闭cmd来获取它。

我检查了一些东西。如果我在网络适配器和端口转发上使用NAT,它甚至可以从cmd工作。但是在使用桥接时避免使用端口转发不起作用。在网桥模式下有连接和ping正在工作,但不能SSH到Ubuntu。

回答

0

我找到了解决方案。解决方案是我应该将NAT接口保持为默认的主接口,并在virtualbox gui设置中创建辅助接口。辅助接口应该是仅主机。然后通过使用this问题及其答案,我向guest虚拟机Ubuntu添加了一个接口到一个静态地址。现在我可以ssh到静态ip地址,即使我从命令行运行vm,并且不需要端口转发。