Invalid signature

ここは俺の日記帳

CakePHP のための初期設定で躓く

要約

CakePHP のためにディレクトリのパーミッションを変える必要が発生。
参考にしたページにあった、同期ディレクトリの設定でグループに
vagrant 以外を指定するとダメらしいことがわかった。

パーミッション設定で躓く

CakePHP のブログチュートリアルを始めた。
 初めのほうで app/tmp のパーミッションを変更する指示があるが上手くいかない。

検索してみると以下の様な記述を見つけた。

Vagrantのファイルパーミッションはコマンドで直接変更ができないように
なっているようで、upする際にパーミッションを決めて上げる必要があるみたいです。
参考ページ:http://qiita.com/deconcepter/items/bc90d6c2080eb19e9ff7

同期ディレクトリの設定をこの記事を参考に修正したら、
マウントでエラーが発生するようになった。

そこでマウントのエラーについて調べ、以下のページを参考にvboxadd setup
を実行した。 http://qiita.com/osamu1203/items/10e19c74c912d303ca0b
するとエラーが発生し以下のメッセージを吐き出した。

  The make utility was not found. If the following module compilation fails then
  

このエラーメッセージで検索すると、make, gcc をインストールしろとの
アドバイスを見つけた。
http://ubuntuforums.org/showthread.php?t=1812472
make, gcc がインストールされていないのを確認し、インストール。
そして再びsudo /etc/init.d/vboxadd setupを試す。 すると、以下の
エラーメッセージを吐き出した。

The headers for the current running kernel were not found. If the following
module compilation fails then this could be the reason.

Building the main Guest Additions module ...fail!
(Look at /var/log/vboxadd-install.log to find out what went wrong)
  

そして見ろと言われているログの中身がこちら。

/tmp/vbox.0/Makefile.include.header:97:
*** Error: unable to find the sources of your current Linux kernel.
Specify KERN_DIR= and run Make again.
  

検索をかけると build-essential を入れろというアドバイスを見つけた。
http://ubuntuforums.org/archive/index.php/t-853374.html
しかし状況は変わらない。 同スレの下の方を見ていると、以下のコマンドを
実行したら上手く言ったとある。

1) sudo apt-get install linux-headers-`uname -r`
2) sudo /etc/init.d/vboxdrv setup
  

1 の実行は完了、2 の方は vboxdrv というコマンドがが見つからないと言われるので
上の方で試したvboxadd setupを試してみると成功した。

再起動するとまだマウントに失敗する。
先ほどのvboxadd setup時に


The headers for the current running kernel were not found.

と出ていたがその後の処理が失敗していなかった。 だが、
まだ問題か解決していないためこのメッセージで検索をかけてみる。
するとまたもそれらしい解答を見つけた。
http://sunnyday.hatenablog.jp/entry/20111017/p1

sudo apt-get update
sudo apt-cache search linux-headers-$(uname -r)
sudo apt-get install linux-headers-$(uname -r)
  

 これを行った後vboxadd setupを再度行ったが、またヘッダーが
見つからないとのメッセージが出た。
途方に暮れていた時に田中さんのサンプルの件を思い出した。
同期ディレクトリの設定の部分をコピペしてみたらマウントで失敗しなくなった。
そこでそのコピペした部分を色々いじった結果、グループの指定で
vagrant 以外を指定するとダメらしい。

色々調べたが、どれも自分が該当する問題のように見え、どれも解決で終わっているのに
自分の環境では解決せず大変だった。