詳細な解決方法は書いてませんので,解決方法が知りたい方は他をあたってください....と一応書いておく.
訳あって色々と CentOS をいじり中.
macOS 上で vagrant をつかって CentOS7 をいじくるとどうなるのかなと思ってさくっと環境立ち上げ.所要時間 30分 くらいで環境自体は動作するようになりました.大半が provision スクリプトの修正だったんだけどね.
けど,あれ?何かおかしい.
と思ったら /vagrant 以下のファイルがホスト OS 側となぜかリアルタイムで同期しないんだけど.
CentOS 上でファイルをいじっても macOS 側に反映されていない.macOS 上でファイルをいじっても CentOS 側に反映されていない.ファイル変更も新規ファイル作成も.macOS 上でいじったファイルは vagrant を立ち上げ直すと反映はされるみたい.
ん?
一瞬,selinux のせいかなとも思ったけど disable にしてるし.
謎だなぁ.
あ,環境は macOS + vagrant + vmware fusion って組み合わせ.virtualbox は使っていません.
ググると apache の設定を変えましょうって話は出てくるけど,そういう問題じゃないよね.
しばらく試行錯誤したけど,vagrant で CentOS を使うことが目的じゃなくて,CentOS 上でプログラムの動作確認をしたいだけなので,別に vmware fusion 上で直接行えば良いかということで今回はさっくり諦めることにしました.
少しだけ試行錯誤&調べた内容を書いておくと....
CentOS を立ち上げようとしたときの vagrat up のログには
==> default: Rsyncing folder: /xxx/yyy/zzz/ => /vagrant
ってことで rsync 使って同期しているみたいな記述が出てるんだけど,vagrant のマニュアル見ると rsync の時には vagrant up とか vagrant reload したときしか同期されないって書いてる.確かに up と reload の時にしか同期されない.しかも一方通行.
==> default: Enabling and configuring shared folders...
default: -- /xxx/yyy/zzz: /vagrant
みたいなログになってる.
ってことは CentOS の時には rsync ではなくて,強制的に nfs なりを使うような記述を Vagrantfile に記述すれば良いのかなぁと思ったり.けど,どうして CentOS と debian で共有フォルダをマウントしようとするときの vagrant での動作が違うのかなぁ.何かのパッケージなり設定なりが CentOS 側に足りないのか?
一方,virtualbox の時には virtualbox にある共有フォルダの仕組みを使ってるって書いてあるので上記のようなことは発生しないようですね.ってことは CentOS の時だけ vmware fusion は使わずに virtualbox を使った方が良いのかな?
まぁ,時間があって気が向いたときにはもうちょっと調べてみようかなとは思いますが,現状はあんまり深追いせずに諦めます.はい.
なんかすっきりしないけど,とりあえず現状は時間切れかな.vagrant の provider に vmware を使うと色々とありますね....