
VMware Fusion を使用して、Ubuntu 11 サーバーを仮想マシンとしてインストールしています。ファイルの一部は、Mac と共有するためにマウントされたドライブ /mnt/hgfs にあります。
マウントされたドライブ上のファイルを変更するまで、すべて正常に動作します。たとえば、再起動してから次の操作を実行すると、
$ ll /mnt/hgfs/public/index.php
返される結果:
-rw-r--r-- 1 501 dialout 251 2011-08-01 01:59 /mnt/hgfs/public/index.php
しかし、マウントされたドライブ上のファイルを変更し、再度
$ ll /mnt/hgfs/public/index.php
出力は次のようになります。
ls: cannot access /mnt/hgfs/public/index.php: Invalid argument
ここで何が問題なのですか?
私はドライブをマウントしました
$ sudo mount -t vmhgfs -v -o ro .host:/my-app /mnt/hgfs
答え1
修正方法は次の通りです: http://viraj-workstuff.blogspot.com/2013/07/vmware-fusion-permissions-on-shared.html
VMWare はこれを使用して、この問題を完全に修正できるはずです。
- sudo vim /etc/vmware-tools/services.sh
- 「vmhgfs_mnt="/mnt/hgfs"」を検索します。この行の後に「vmuser=${VMWARE_MNT_USER:-root}」を追加します。
- 次に、「vmware_exec_selinux "mount -t vmhgfs .host:/ $vmhgfs_mnt"」を検索し、次のセクションに置き換えます: uid=
id --user $vmuser
gid=id --group $vmuser
vmware_exec_selinux "mount -t vmhgfs .host:/ $vmhgfs_mnt -o uid=$uid,gid=$gid" - sudo vim /etc/init/vmware-tools.conf 「pre-start」と「post-stop」の行の前に以下を追加します: env VMWARE_MNT_USER=[必要なゲストユーザー]
- sudo 再起動