vmhgfs-fuse 权限被拒绝问题

vmhgfs-fuse 权限被拒绝问题

我需要 vmhgfs 可供 root 用户和 www-data 用户访问。

作为 root,我vmhgfs-fuse .host:/ /mnt/hgfs/在 rc.local 中运行命令

但是,网络服务器无法读取共享文件夹。所以我检查了它的许可,

www-data@ubuntu16:~$ ls /mnt/ -lh
ls: cannot access '/mnt/hgfs': Permission denied
total 0
d????????? ? ? ? ?            ? hgfs
www-data@ubuntu16:~$

(/mnt 的权限为 777)

我不知道发生了什么事。看起来像是内核问题。它在 Ubuntu 14.04 中从未发生过,现在在 16.04 和内核中4.4.0-21-generic,它变成了这样。

PS 如果我使用帐户安装 hgfs www-data,则可以由 访问www-data,但不能由 root 用户访问。

答案1

解决。使用allow_other选项授予访问权限

vmhgfs-fuse -o allow_other .host:/ /mnt/hgfs

答案2

要添加到雏菊的回答:

如果您希望此更改在重新启动后继续存在,请将其放入您的/etc/fstab文件中,例如

.host:/ /mnt/hgfs fuse.vmhgfs-fuse allow_other,defaults 0 0

答案3

如果您在 macOS Big Sur(运行 VMware Fusion 12)或更高版本以及 Ubuntu 18.x+ 上尝试此操作,请务必从以下位置查看新的配置选项vmhgfs-fuse

vmhgfs-fuse --help

/etc/fstab相应地设置你的:

sudo vmhgfs-fuse -o allow_other,default_permissions,uid=1000,gid=1000 .host:/ /mnt/hgfs

然而由于某种原因fstab重新启动后未正确设置权限(可能被 中找到的配置覆盖/etc/systemd/system/mnt-hgfs.mount)。

因此,一旦我修改了文件/etc/systemd/system/mnt-hgfs.mountOptions在部分中添加了参数Mount,重新启动后一切正常。

[Unit]
Description=VMware mount for hgfs
DefaultDependencies=no
Before=umount.target
ConditionVirtualization=vmware
After=sys-fs-fuse-connections.mount

[Mount]
What=vmhgfs-fuse
Where=/mnt/hgfs
Type=fuse
Options=default_permissions,allow_other,uid=1000,gid=1000

[Install]
WantedBy=multi-user.target

相关内容