vagrant up が Permission denied でおこられた理由

vagtant を up しようと思って vagrant up したら、エラーが出た。
こないだまで何の問題もなく動いてた Vagrantfile なのに。

/Applications/Vagrant/embedded/gems/gems/vagrant-1.6.3/lib/vagrant/environment.rb:410:in `initialize': Permission denied - /[ホームディレクトリ]/.vagrant.d/data/lock.fpcollision.lock (Errno::EACCES)

何か Permission denied 出てる。

対処

この ~/.vagrant.d/data/lock.fpcollision.lock の権限を見ると

-rw-r--r-- root lock.fpcollision.lock

オーナーが root になってたので

sudo chown [自分] lock.fpcollision.lock

して修正。なおりました。
もう chown じゃなくて rm でもよかったかな。

原因

そういえばこないだ root 権限が必要な Vagrant のプラグインを試してみる機会があって

sudo vagrant up

したんだった。

これで起動したものを正しく終了しなかったせいで
sudo でつくられたロックファイルがそのまま残ってたんじゃないかな。
次に動かそうとしたらそのファイルをつつく権限がなくておこられる。

あまり覚えてないんだけど、
そういえばこの VM を vagrant halt した記憶がない。
何か強制的に落としたんだったかな。

きをつけること

やむを得ず vagrant upsudo で行うときは、正しく終了すること。

いや sudo してもしなくても正しく終了した方がいいんだけど、
Vagrant だと壊してまた作ればいいや、と思って
ついホスト OS より扱いが雑になりませんか。
なりませんかね。なりますよね。

  • このエントリーをはてなブックマークに追加