我使用 vmware fusion 将 ubuntu 11 服务器安装为虚拟机。我的一些文件位于已安装的驱动器 /mnt/hgfs 上,以便与我的 mac 共享。
在我更改已安装驱动器上的任何文件之前,一切都运行正常。例如,在重新启动后,然后:
$ 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 重启