可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
I was trying to start up my vagrant machine, so I navigated to the folder where my vagrantfile is, and used:
vagrant up && vagrant ssh
but I got the following error message:
The VirtualBox VM was created with a user that doesn't match the
current user running Vagrant. VirtualBox requires that the same user
be used to manage the VM that was created. Please re-run Vagrant with
that user. This is not a Vagrant issue.
The UID used to create the VM was: 0 Your UID is: 501
I also tried with sudo, but that didn't work either.
Do I need to switch UID's? And how would I do this?
回答1:
I ran into the same problem today.
I edited my UID by opening the file .vagrant/machines/default/virtualbox/creator_uid
and changing the 501 to a 0.
After I saved the file, the command vagrant up worked like a champ.
NB: the .vagrant
folder is in the same directory as your Vagrantfile, where you ran vagrant up
回答2:
Ran into this problem in a slightly different situation. The issue was that ".vagrant" was checked into the git repo, and the committer was running under a different UID than I was.
Solution: add .vagrant to .gitignore.
回答3:
I ran into the same issue, but in my case it was because I had ran vagrant up
under sudo
, and when I came back to it later I'd forgotten.
Silly mistake, but I'm sure it's not the first time it's happened someone :)
回答4:
I tried changing the id in .vagrant\machines\default\virtualbox\creator_uid and that did not work for me but deleting the file, creator_uid did the trick.
回答5:
just change user ID here
.vagrant/machines/default/virtualbox/creator_uid
回答6:
According to the VirtualBox User Manual:
As a security measure, the Linux implementation of internal networking
only allows VMs running under the same user ID to establish an
internal network.
In other words, you have to switch to root (UID 0
) to run it.
回答7:
It's possible you ran the command: sudo vagrant up
This would mean as your regular user you are unable to see or even delete the /.vagrant
folder and files.
If so, simply run: sudo vagrant destroy -f
Then you should be able to run (as your normal user account): vagrant up
回答8:
Run the following commands:
bash
sudo vagrant up
回答9:
I had the same problem after I got a new computer. Instead of of copying all files from my old computer, I had to check out the vagrant projects again from the git repository. After that, vagrant up
worked fine.
回答10:
Just to add on to Fred's https://stackoverflow.com/a/32256848/2065804 answer.
Make sure you changed the correct VM's machine. For example, my VM name is NOT default but rather called homestead-7.
So the path to the correct one is:
.vagrant/machines/homestead-7/virtualbox/creator_uid
and not:
.vagrant/machines/default/virtualbox/creator_uid
This error happened to me when I changed my Mac to another Mac.
回答11:
Remove the content of .vagrant hidden dir in the current working dir and re-run vagrant up command.
Error, because of copy / backup of Vagranfile /s from one system to another system. user id's mismath to the Vagrant to bring up the environment..
hope it helps cheers..!! :))
if u don't wish to delete that folder u can update uid of current user in file in the hidden dir of current working dir, i.e .vagrant/machines/jenkins/virtualbox$ vim creator_uid
回答12:
I've faced the same situation, but I have a multi-machine Vagrantfile.
To replace the old uid (1001) by the new one (1000) I've used the following command:
for i in $(find . -type f -iname "creator_uid" ) ; do echo 1000 > $i ; done
回答13:
I had the same problem I had forgotten to place sudo
before vagrant up
, you just have to execute sudo vagrant up
in the folder of your vagrant file.