wordpress Vagrant Up失败,因为名称已存在

11dmarpk  于 2023-02-21  发布在  WordPress
关注(0)|答案(6)|浏览(207)

我最近开始使用Virtualbox、Vagrant和VVV作为我本地的WordPress开发环境。
我遇到的一个问题是,在使用'vagrant halt'关闭后,下次使用'vagrant up'启动时,我会得到这个错误:

==> default: Setting the name of the VM: vagrant-local 
The name of your virtual machine couldn't be set because VirtualBox
is reporting another VM with that name already exists. Most of the
time, this is because of an error with VirtualBox not cleaning up
properly. To fix this, verify that no VMs with that name do exist
(by opening the VirtualBox GUI). If they don't, then look at the
folder in the error message from VirtualBox below and remove it
if there isn't any information you need in there.

VirtualBox error:

VBoxManage.exe: error: Could not rename the directory 'C:\VirtualBox VMs\ubuntu-cloudimg-trusty-va
230_94704' to 'C:\VirtualBox VMs\vagrant-local' to save the settings file (VERR_ALREADY_EXISTS)
VBoxManage.exe: error: Details: code E_FAIL (0x80004005), component SessionMachine, interface IMac
VBoxManage.exe: error: Context: "SaveSettings()" at line 3015 of file VBoxManageModifyVM.cpp

我访问了列出的位置C:\VirtualBox VMs\,确实,目录“vagrant-local”已经存在。如果我删除(或重命名)此目录并再次运行“vagrant up”,计算机将启动。但是,它也会执行完整的配置过程。当然,这需要很长时间。
我正在使用VVV和Vagrant的所有默认配置。我应该做些什么来帮助VirtualBox“正确清理”,并认识到它不需要在我每次停止和重新启动时重新创建VM。
或者我错过了什么?
欢迎“初学者水平”的回答,如果不是首选。我是一个初学者在这方面,我感谢帮助!谢谢。
当前状态:我已经从C:\VirtualBox VMs\中删除了有问题的VM;以管理员身份运行Git Bash,我可以再次使用vagrant up(进行完全配置)、vagrant haltvagrant up,所有结果都符合预期(第二个up上没有配置)。到目前为止,似乎一切正常。

cld4siwp

cld4siwp1#

如果您使用的是Mac,vagrant destroy无法正常工作,您会收到以下消息:The name of your virtual machine couldn't be set because VirtualBox is reporting another VM with that name already exists.然后,您需要转到用户文件夹中的 VirtualBox VMs文件夹,并删除VM文件夹。
它处于一种奇怪的状态,无法构建VM,因为它正在尝试为已经存在的同名文件夹创建设置。

mlnl4t2r

mlnl4t2r2#

我的比大多数的都要简单一些。我检查了“虚拟机”目录(对于Windows),并删除了它试图命名的文件夹。这为我解决了这个问题。

kmbjn2e3

kmbjn2e33#

嗯...这是一个奇怪的问题。当你运行vagrant halt时,它只是发送信号终止虚拟机。
Vagrant将所有配置保存在一个.vagrant目录下(至少对于mac os和linux,不完全确定是否是windows),您永远不应该删除此目录,因为它包含所有对您的虚拟机的引用,因此当您下次运行vagrant up时,Vagrant将从此目录中搜索信息以启动相应的虚拟机,并且它知道它不需要重新创建虚拟机或配置。
删除虚拟机信息的正确方法是运行vagrant destroy,它将删除所有.vagrant目录和虚拟机。
这是从.vagrant和您的vm再次建立这种链接的方法,但有点棘手,不确定是否得到官方支持
当你使用vagrant时,VirtualBox应该变得(几乎)透明,你应该不需要启动它来使用你的VM,所有的东西都应该从vagrant运行(至少在初级水平)

注意:在Windows上运行,如果您以管理员身份运行,应该没问题

epfja78i

epfja78i4#

我得到了上面提到的git bash错误,而流浪起来。有多种可能性发生这个问题。
我已经使用下面提到的步骤和流浪者命令正常工作。
1.打开Oracle VM虚拟管理器-在此Oracle VM虚拟管理器面板中,删除当前正在运行的虚拟机。
1.从git bash命令提示符退出
1.再次打开git bash
1.将"漫游"命令作为"漫游"命令运行
Vagrant up命令将成功运行。
请注意:确保在关闭git bash命令提示符时运行vagrant halt命令。
首先,漫游停止,然后退出命令。

mbjcgjjk

mbjcgjjk5#

VBoxManage:错误:无法将目录“<SOURCE>”重命名为“<DESTINATION>”以保存设置文件(VERR_ALREADY_EXISTS
如果你不关心你的虚拟机状态,你可以从头开始设置它,删除你的目标文件夹,然后它应该工作。还仔细检查,如果你已经从VirtualBox列表中删除它。
如果VirtualBox未正确清理或您中断了清理过程(例如,在vagrant destroy中间按Ctrl-C),则可能会发生这种情况。

uplii1fm

uplii1fm6#

在我的例子中,我必须清理VirtualBox文件。它基本上显示了文件位置和错误消息,但如果你没有看到它,请按照以下命令操作。我使用的是Ubuntu 22.02。
cd /home/<username>/VirtualBox\ VMs/
看看里面有没有不必要的目录。
ls
您需要删除不需要的文件目录,因此运行
rm -rf <directory-name>
那就回到你的流浪汉目录点击,
vagrant up
这样就能解决问题了!

相关问题