루트 사용자와 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를 설치하면 루트 www-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