root ユーザーと www-data ユーザーがアクセスするには vmhgfs が必要です。
ルートとして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をインストールすると、rootwww-data
ではアクセスできなくなりますが、www-data
アクセスできます。
答え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.mount
セクションOptions
にパラメータを追加すると、再起動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