流浪汉没有启动。创建虚拟机的用户与当前用户不匹配


123

我试图启动我的无业游民的机器,所以我导航到我的无业游民的文件所在的文件夹,并使用:

流浪汉&&流浪ssh

但我收到以下错误消息:

创建的VirtualBox VM的用户与运行Vagrant的当前用户不匹配。VirtualBox要求使用同一用户来管理创建的VM。请与该用户重新运行Vagrant。这不是流浪汉的问题。

用于创建VM的UID为:0您的UID为:501

我也尝试过sudo,但是那也不起作用。

我需要切换UID吗?我该怎么做?

Answers:


252

我今天遇到了同样的问题。
我通过打开文件并将501更改为0来编辑UID.vagrant/machines/default/virtualbox/creator_uid

保存文件后,无所事事的命令像冠军一样工作。

注意:该.vagrant文件夹与您运行的Vagrantfile位于同一目录中vagrant up


64
我发现自己处在相同的情况下,我用ubuntu机器压缩了一个压缩包。因此,只需删除rm -rf .vagrant在ubuntu中创建的目录即可解决此问题。
杰夫·谢菲尔德

1
//,哇,谢谢@Fred!Stackoverflow通过这种精确的,难以解决的解决方案,为我们提供了最好的解决方案,而以前的解决方案是必须要解决的。我通常会在.vagrant基于Unix的计算机上哪里找到该文件夹?
弥敦道(Nathan Basanese),2015年

1
不确定,@ Nathan。您可以为creator_uid文件运行定位命令吗?在命令行中尝试“定位creator_uid”以找到要编辑的文件的路径。
Fred

4
在我的情况下,creator_uid包含“ 90210”,但我的UID是502。按照此解决方案的建议,与其将文件中的UID更改为0,而是将其更改为502。
LS

5
@NathanBasanese .vagrant文件夹与您运行的位置相同vagrant up
Harish Reddy

33

在稍微不同的情况下遇到此问题。问题是“ .vagrant”已签入git repo,并且提交者在与我不同的UID下运行。

解决方案:将.vagrant添加到.gitignore。


15
这就是我面临的问题;然而,简单地增加.vagrant,以.gitignore解决问题-因人而异,但git rm -rf .vagrant也应该被运行。
Marco Massenzio

@marco:你说得很对。如果将“ .vagrant”添加到了回购中,则之后将其添加到.gitignore中为时已晚:)
Chris Cogdon 2015年

8

我遇到同样的问题,但对我来说,那是因为我已经跑vagrant upsudo,当我回到它以后我都忘了。

愚蠢的错误,但我敢肯定这不是第一次有人发生:)


1
同样的问题,在这里忘记运行sudo。但是不幸的是,错误消息并不能很好地表明这一点。
Zac Blazic '16

5

我尝试更改.vagrant \ machines \ default \ virtualbox \ creator_uid中的ID,这对我不起作用,但是删除了文件,creator_uid达到了目的。



1

根据VirtualBox用户手册

作为安全措施,Linux内部网络实现仅允许以相同用户ID运行的VM建立内部网络。

换句话说,您必须切换到root(UID 0)才能运行它。


10
不应以sudo身份运行,只需删除.vagrant目录并以用户身份运行
Jeremy

1

您可能会运行以下命令: sudo vagrant up

这意味着作为普通用户,您将无法看到甚至删除/.vagrant文件夹和文件。

如果是这样,只需运行: sudo vagrant destroy -f

然后,您应该能够运行(作为普通用户帐户): vagrant up



0

买一台新电脑后,我遇到了同样的问题。与其从旧计算机上复制所有文件,不如从git存储库中再次签出流浪者项目。之后,vagrant up工作正常。


0

只是添加到Fred的https://stackoverflow.com/a/32256848/2065804答案中。

确保您更改了正确的VM的计算机。例如,我的VM名称不是默认名称,而是称为homestead-7。

因此,正确的路径是:

.vagrant/machines/homestead-7/virtualbox/creator_uid

并不是:

.vagrant/machines/default/virtualbox/creator_uid

当我将Mac更改为另一台Mac时,发生了此错误。


0

删除当前工作目录中.vagrant隐藏目录的内容,然后重新运行vagrant up命令。错误,因为Vagranfile从一个系统复制/备份到另一个系统。用户ID对流浪者提出的错误提起了环境..希望它有助于加油.. !! :))如果您不想删除该文件夹,则可以在当前工作目录的隐藏目录中的文件中更新当前用户的uid,即.vagrant / machines / jenkins / virtualbox $ vim creator_uid



0

我有我忘了发生同样的问题sudo之前vagrant up,你只需要执行sudo vagrant up您的无业游民文件的文件夹中。


0

我有多机流浪者文件。我已经检查了creator_uid0但仍然无法加载。因此,我已经删除creator_uid了所有多机机的文件,并且可以正常工作。路径应该是.vagrant\machines\<machine_name>\virtualbox

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.