vmware 共享文件(hgfs)的问题(权限,用户)

centos中mount共享目录
  1. 虚拟机重启后,运行 lsmod | grep vm 命令来检测VMWare Tools是否正确启动
  2. mount共享目录:

    mount -t vmhgfs .host:/share-name /mnt/share-name

    也可以通过 /sbin/mount.vmhgfs 命令来mount

  3. 可以在 /etc/fstab 中添加如下条目,实现开机就 mount 共享目录

    .host:/share-name /mnt/share-name vmhgfs defaults 0 0

以上是在CentOS 6.5下设置的, 也就是内核版本小于3.x的linux下可以正确设置,但是到了CentOS 7.0这种设置无效,还会导致重启后/etc/fstab无法正确挂载而进入Emergency mode,没研究过内核,不懂什么原因。

mount -t vmhgfs .host:/projects /root/projects

这个命令也会出错提示(projects是我共享文件夹名称):

Could not add entry to mtab, continuing.

看了下/etc/mtab,倒数第二行已经挂载了,而最后一行是我刚才敲的.

.host:/  /mnt/hgfs  vmhgfs rw,relatime 0 0

.host:/projects /root/projects vmhgfs rw,relatime 0 0

/etc/mtab这个是指向/proc/self/mounts,这个文件是当前系统mount的信息,对所有人都是只读,虽然网上有修改手段,但是还是不打算修改,既然默认会mount到/mnt/hgfs,那一定是VMware tools写死了,chkconfig查看到vmware-tools 的启动服务:

[root@localhost ~]# chkconfig

iprdump            0:off    1:off    2:on    3:on    4:on    5:on    6:off
iprinit            0:off    1:off    2:on    3:on    4:on    5:on    6:off
iprupdate          0:off    1:off    2:on    3:on    4:on    5:on    6:off
netconsole         0:off    1:off    2:off    3:off    4:off    5:off    6:off
network            0:off    1:off    2:on    3:on    4:on    5:on    6:off
vmware-tools       0:off    1:off    2:on    3:on    4:on    5:on    6:off
vmware-tools-thinprint    0:off    1:off    2:on    3:on    4:on    5:on    6:off

直接修改这个脚本:

# vim /etc/init.d/vmware-tools

搜索/mnt/hgfs,可以看到在748行

vmhgfs_mnt=”/mnt/hgfs”

看来真的写死了, 在1030行挂载函数

# Mount all hgfs filesystems
vmware_mount_vmhgfs() {
if [ "`is_vmhgfs_mounted`" = "no" ]; then
vmware_exec_selinux "mount -t vmhgfs .host:/ $vmhgfs_mnt"
fi
}

这两处都修改下,reboot,OK。

既然可以mount过载就可以通过-o参数指定用户和用户组了,hgfs不再有任何权限问题。

参考资料:

VMware中CentOS 7.0设置文件夹共享

vmware 共享文件(hgfs)的问题(权限,用户)》上有1条评论

发表评论

电子邮件地址不会被公开。

CAPTCHA

*