루트 파일 시스템이 있는 NFS, 마운트된 하위 디렉터리에 액세스할 수 없음

루트 파일 시스템이 있는 NFS, 마운트된 하위 디렉터리에 액세스할 수 없음

나는 이것을 천천히 포기했다 ...

NFS를 통해 루트 파일 시스템을 내보내려고 하는데 마운트된 /usr/portage하위 디렉터리가 비어 있거나 /.

자세한 내용은 다음과 같습니다.

주인:

mount | grep portage

/usr/portage.mount/portage.sfs on /usr/portage.mount/readonly type squashfs (ro,noatime)
unionfs on /usr/portage type fuse.unionfs (rw,nosuid,nodev,noatime,user_id=0,group_id=0,default_permissions,allow_other)

첫 번째 방법.

주인:

/etc/exports
/ *(sync,rw,no_root_squash,no_subtree_check,crossmnt)

손님:

mount -t nfs -o rw,noatime,nocto,actimeo=60,lookupcache=positive,vers=4,fsc 192.168.1.1:/ /mnt/192.168.1.1
ls -l /mnt/192.168.1.1/usr/portage

결과 = 빈 폴더

두 번째 방법.

주인:

/etc/exports
/usr/portage *(sync,rw,no_root_squash,subtree_check,nohide,fsid=0)
/ *(sync,rw,no_root_squash,no_subtree_check,crossmnt,nohide)

손님:

mount -t nfs -o rw,noatime,nocto,actimeo=60,lookupcache=positive,vers=4,fsc 192.168.1.1:/ /mnt/192.168.1.1
ls -l /mnt/192.168.1.1

결과: 호스트 시스템의 /usr/portage 내용(루트 파일 시스템에는 usr/portage가 마운트되어 있어야 합니다)

세 번째 방법.

주인:

mount -t bind / /media/root

/etc/exports
/media/root *(sync,rw,no_root_squash,no_subtree_check,crossmnt,nohide)

손님:

mount -t nfs -o rw,noatime,nocto,actimeo=60,lookupcache=positive,vers=4,fsc 192.168.1.1:/media/root /mnt/192.168.1.1
ls /mnt/192.168.1.1
ls: cannot access 'media': Too many levels of symbolic links

내가 무엇을 놓치고 있나요?

고마워요, 바트

답변1

두 내보내기 모두에 fsid를 추가하기만 하면 됩니다.

주인:

cat /etc/exports

/usr/portage *(sync,rw,no_root_squash,subtree_check,nohide,fsid=1)
/ *(sync,rw,no_root_squash,no_subtree_check,crossmnt,nohide,fsid=0)

관련 정보