Windows 7 虚拟机已成为';无法访问';-流浪汉不再工作
由于某种原因,今天早上当我运行“vagrant up”时,我得到了以下错误(这在一年多的时间里工作得非常好) 我可以尝试删除我现有的.vagrant文件夹,然后做一个vagrant up,但这将永远花费在我们非常缓慢的互联网速度上-有人能建议如何快速修复此问题吗?这对我很有效 在对调试输出进行了一些挖掘之后,我发现即使实际的虚拟机是完整的(我可以从VirtualBox GUI应用程序加载并运行它),VirtualBox还是会在其内部的某个地方将此虚拟机标记为“”。流浪汉,正确地相信它所说的,吐出了错误信息 在查看VBoxManage的帮助后,我发现其中一个命令list VM列出了在VirtualBox中注册的所有虚拟机:Windows 7 虚拟机已成为';无法访问';-流浪汉不再工作,windows-7,vagrant,virtual-machine,virtualbox,Windows 7,Vagrant,Virtual Machine,Virtualbox,由于某种原因,今天早上当我运行“vagrant up”时,我得到了以下错误(这在一年多的时间里工作得非常好) 我可以尝试删除我现有的.vagrant文件夹,然后做一个vagrant up,但这将永远花费在我们非常缓慢的互联网速度上-有人能建议如何快速修复此问题吗?这对我很有效 在对调试输出进行了一些挖掘之后,我发现即使实际的虚拟机是完整的(我可以从VirtualBox GUI应用程序加载并运行它),VirtualBox还是会在其内部的某个地方将此虚拟机标记为“”。流浪汉,正确地相信它所说的,吐出
$ /cygdrive/c/Program\ Files/Oracle/VirtualBox/VBoxManage.exe list vms
"precise64" {3613de48-6295-4a91-81fd-36e936beda4b}
"<inaccessible>" {2568227e-e73d-4056-978e-9ae8596493d9}
"<inaccessible>" {0fb42965-61cb-4388-89c4-de572d4ea7fc}
"<inaccessible>" {c65b1456-5771-4617-a6fb-869dffebeddd}
"<inaccessible>" {9709d3d5-ce4d-42b9-ad5e-07726823fd02}
$ C:\Program Files\Oracle\VirtualBox\VBoxManage.exe registervm C:\cygwin\home\Philip\Virtual VMs\rails-vm-v2\rails-vm-v2.vbox
现在您应该能够按预期启动VM了- {vm id}.vbox prev
- {vm id}.vbox tmp
从“{vm id}.vbox tmp”重命名为“{vm id}.vbox”解决了我的问题,我可以调用“vagrant up”您只需从项目文件夹中删除.vagrant文件夹,然后再次运行vagrant up 使用以下命令之一查找无法访问的命令:
$ vagrant global-status
或:
然后记下GUID,并将其从VirtualBox.xml
文件中删除(OS X:~/Library/VirtualBox/VirtualBox.xml
,Windows:%HOME%/.VirtualBox
)
或者从虚拟机所在的文件夹中删除.vagrant
文件夹,从头开始(vagrant up
)
另请参见:在VirtualBox,这里没有任何东西适合我
vagrant up
现在问题解决了。我的问题是一样的,但解决方法却大不相同。。。我的虚拟机存储在网络驱动器上,可通过NFS共享访问。重新启动后,远程驱动器无法启动,因此无法访问虚拟机。 我花了一段时间才意识到原因,同时四处打猎,没有找到解决办法 然后我意识到,掌心,登上小路,一切都很顺利 简而言之,这是一个路径问题
我觉得我应该把它包括在这里,以防它对同舟共济的人有所帮助。VirtualBox Manager可能会为您提供更多有用的信息,例如在我的案例中,它报告说
.vbox
文件不存在
查看后,问题确实是该文件不存在-有人将其重命名为x.vbox-tmp
(可能在虚拟机仍在运行的情况下关闭电脑?)
我将
x.vbox-prev
文件复制到x.vbox
并再次尝试启动虚拟机,一切正常。我必须将[VM id].vbox tmp(在VirtualBox虚拟机上)重命名为[VM id].vbox。之后,如果不删除.vagrant文件夹,我就可以运行vagrant,它工作得很好。如果有人手动从VirtualBox VMs文件夹中删除您的vm,那么在这种情况下,您的vm将无法访问。但是,您将无法取回您的机器,但vagrant仍会在列表中显示您的vm。要将其从vm列表中完全删除,请转到
\.vagrant.d\data\machine-index
然后打开索引文件。删除无法访问的计算机的引用。下次运行下面的命令时,它将不会显示无法访问的计算机
vagrant global-status --prune
在Linux上,以下操作将注销计算机:
VBoxManage list vms
VBoxManage unregistervm <inaccessible machine UID>
删除
.vagrant
文件夹可能会有所帮助,但您必须重建计算机。通过使用命令行,您可以使用一行程序删除所有无法访问的框:
VBoxManage list vms |grep inaccessible |cut -d "{" -f2 |cut -d "}" -f1 |xargs -L1 VBoxManage unregistervm
参见我也有这个问题。
重新启动macOS后更改virtualBox目录时,所有虚拟机都无法访问virtualBox
我的解决方案奏效了
只需将虚拟框移动到默认目录。
从gui中删除所有不可访问的虚拟机,然后从默认路径注册虚拟机,然后运行它
或
可能重复保存的我的一天(在Win7主机上)!谢谢当与
vboxmanage
命令而不是VBoxManager.exe
一起使用时,这在linux中也能起作用,而VBoxManager.exe显然不存在于linux中。这就像一个符咒一样有效:)首先尝试一下这个答案,这个答案比公认的答案好,因为它简单得多(如果它对您有效的话)。对我来说也很有魅力:)干得好。感激它:)对我来说也是完美的方式。谢谢也可以在Win10上工作。节省了我很多时间谢谢!这对我有效,重命名了我的.VirtualBox以防万一,然后运行homestad up/vagrant up。我将把它添加到我的解决方案中。我选择了另一个文件,homestad-7.vbox-tmp,并将其重命名回homestad-7.vbox,然后再次工作。我还选择了.vbox prev
而不是x.vbox-tmp
,考虑到临时工可能会因意外终止而出现不一致。(谢谢你的windows更新。)我的理由确实是在虚拟机仍在运行的情况下关闭电脑。谢谢你也为我工作。。。可能是系统崩溃造成的。。供快速参考:vbox文件可在适用于Windows的“\VirtualBox VMs”中找到。这似乎与@Danny Wheeler的答案及其注释中的建议中所述的解决方案相同。删除.vagrant文件夹可能会导致vagrant从头开始重新创建VM。如果您需要修复损坏的VM,这可能不是正确的方法。如果虚拟机是完全可丢弃和可重新创建的,那么这是解决问题的简单方法。谢谢!它用于删除先前创建的缓存,因此它会显示最新状态。
vagrant global-status --prune
VBoxManage list vms
VBoxManage unregistervm <inaccessible machine UID>
sudo /sbin/vboxconfig
VBoxManage list vms |grep inaccessible |cut -d "{" -f2 |cut -d "}" -f1 |xargs -L1 VBoxManage unregistervm
vagrant up