使用Cygwin访问VirtualBox虚拟机

12

我无法从cygwin控制台访问我的虚拟机。(Windows 7,UAC已禁用)

Matthias@laptop0x4d53 /cygdrive/c/Program Files/Oracle/VirtualBox
$ ./VBoxManage list vms

然而,Windows控制台可以访问我的虚拟机。

C:\Program Files\Oracle\VirtualBox>VBoxManage.exe list vms
"GlassFish" {68874e4d-817a-4315-9ea2-38726964ac32}
"Tomcat" {2e22a7c0-9950-4593-8eda-778d404476c7}
"LAMP" {36aa6968-df52-49b5-be52-1f59c50f1527}

也许是用户权限的问题。我该如何在cygwin中访问我的虚拟机?


即使UAC已禁用,您可能仍然没有所有权限... 您的cygwin窗口是否已提升?右键单击图标并以管理员身份运行,您也可以在快捷方式属性中执行此操作(可能仍然不是您的问题)。 - nhed
@nhed 这并没有帮助,但提到这样的陷阱总是好的。 :) - Matthias
如果您添加一个标签来指示有关Windows的信息,您可能会得到一些有用的答案。有很多选择。祝你好运! - shellter
4个回答

9

你是否尝试过官方论坛?有一些解决方案 在~/.bashrc中导出一些变量 并以无头模式启动VB(这是最近的帖子,来自2011年)。甚至还有一个丑陋的方法,可以通过使用bat文件导出一堆环境变量。

#export VBOX_USER_HOME='/cygdrive/c/Documents\ and\ Settings/SomeNameHere/.VirtualBox/'
export VBOX_USER_HOME='C:\Documents and Settings\SomeNameHere\.VirtualBox\'

...或者在Windows上将VirtualBox作为服务运行(使用cygrunsrv.exe)。据报道,这在Cygwin 1.7b上可以正常工作。

$ cygrunsrv --list
vboxd-myvm

1
C:\cygwin\home\[用户名]\.bashrc 中设置 $VBOX_USER_HOME 就解决了问题! - Matthias

1

这个答案是在考虑这种可能性的精神下给出的 ;-)

你对于将cygwin作为你在Windows上的Unix工具有多依赖呢?我的经验是,cygwin非常慢,但它的优势在于它带有各种类似Linux的工具,并且可能拥有最大的用户支持社区。

至少有两个替代cygwin的工具我使用过并可以推荐,并且通过快速测试已经返回了我的活动vms_s列表。它们是UWIN和MinGW。

在这里阅读我关于ksh和UWIN的写作Regarding 'for' loop in KornShell(第2条消息)

同时也请查看MinGW环境。我主要安装MinGW以便在cygwin之外访问gcc,并且它有相当数量的类似Linux的工具。

希望这可以帮到你。


0

方便修复 - 您需要在您的 .bashrc 文件中使用 Windows 路径语法

将此 - VBOX_USER_HOME='C:\Documents and Settings\user.VirtualBox'

替换为这个 - VBOX_USER_HOME=/cygdrive/c/users/user/.VirtualBox


0

我所做的一切,是为了让VBoxManage在cygwin中正常工作

$ alias VBoxManage='cmd /C VBoxManage '

例如:

$ VBoxManage list vms

这个别名分配强制VBoxManage在Windows的"cmd" shell下运行。stdin、stdout和命令开关都能正常工作。


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