NFS v4는 암호화된 파티션을 내보냅니다. 클라이언트가 빈 디렉터리를 마운트합니다.

NFS v4는 암호화된 파티션을 내보냅니다. 클라이언트가 빈 디렉터리를 마운트합니다.

내 LAN 서버에 암호화된 하드 드라이브가 있습니다. luks/dm-crypt를 사용하여 암호화됩니다. 서버는 NFS v4를 실행하여 LAN에서 파일을 공유합니다. 암호화된 USB 하드 드라이브를 제외하고는 작동합니다. 클라이언트가 파일 시스템에 공유를 마운트하면 해독된 파일이 포함되어야 하는 빈 폴더를 찾을 수 있습니다.

설정은 다음과 같습니다.

어떻게서버 설치이것루크스 디비전:

sudo cryptsetup luksOpen /dev/sdb1 data1
sudo mount /dev/mapper/data1 /exports/user1/data1

서버에서 드라이브의 암호를 해독하고 마운트하면 정상적으로 작동합니다. 내가 가면 /exports/user1/data1해독된 파일을 얻을 것이다.

이것NFS 내보내기:

/exports            192.168.178.20(rw,sync,fsid=0,no_subtree_check,root_squash) 192.168.178.21(rw,sync,fsid=0,no_subtree_check,root_squash)
/exports/user1      192.168.178.20(rw,sync,no_subtree_check,root_squash) 192.168.178.21(rw,sync,no_subtree_check,root_squash)

따라서 해독된 USB 드라이브는 NFS 내보내기에 직접 마운트됩니다./exports/user1/data1

이것이 방법이다클라이언트 설치이것공유 된 폴더:

sudo mount.nfs4 192.168.178.10:/ /fs_data -o soft,intr,rsize=32768,wsize=32768

이제 클라이언트가 서버 마운트를 해당 파일 시스템으로 내보내면 "data1" 폴더가 비어 있음을 알게 됩니다.

내가 놓친 것이 있나요?

고쳐 쓰다:

감사합니다 자일스좋은 대답나는 성공했다. 나는 궁극적인 상황을 피하고 피하려고 crossmnt노력 한다.nohide인덱스 노드질문. 이것이 내가 지금 사용하고 있는 것입니다:

/etc/export

/exports/user1           192.168.178.20(rw,sync,fsid=0,crossmnt,no_subtree_check)
/exports/user1/data1     192.168.178.20(rw,sync,no_subtree_check)

클라이언트 명령 마운트데이터 1:

sudo mount.nfs4 192.168.178.10:/data1 /fs_data -o soft,intr,rsize=32768,wsize=32768

답변1

Linux 커널 NFS 서버의 경우 디렉토리 트리를 내보내면 트리에 마운트된 모든 파일 시스템이 포함되지 않습니다. nohide옵션 설명 참조exports(5)매뉴얼 페이지.

마운트된 파일 시스템을 명시적으로 내보내야 합니다. 즉, exportsfor 에 별도의 줄이 필요합니다 /exports/user1/data1. 또한 설치 후 NFS 서버를 (다시) 시작해야 합니다 /exports/user1/data1.

클라이언트 측에서는 /fs_data/data1별도로 마운트해야 합니다. 매뉴얼 페이지에서 설명한 대로 on 옵션 이나 on 옵션을 포함하면 이를 방지 exports할 수 있지만 클라이언트가 동일한 파일 시스템으로 보이는 항목에서 동일한 inode 번호를 가진 파일을 볼 수 있기 때문에 문제가 발생할 수 있습니다. 예를 들어, 이로 인해 파일 복사 또는 보관 프로그램이 파일을 백업했다고 생각하기 때문에 파일을 무시할 수 있습니다(프로그램이 inode 42를 본 경우 inode 42와 관련 없는 파일이 동일한 파일 시스템에 있는 것으로 생각할 것입니다 .) 하지만 실제로는 아니요 - 동일한 파일입니다).nohide/exports/users1/data1crossmnt/exports/users1/fs_data/foo/fs_data/data1/bar

답변2

포인트 부족에 대해서는 언급할 수 없으므로 /etc/exports에 추가 파일 시스템을 추가한 후 nfs 서버를 다시 시작할 필요가 없다는 점을 추가하겠습니다. 대신 커널 nfs를 사용하기 때문에 고통스러울 것입니다. 또 다른 내보내기fs -a는 새로 지정된 내보내기를 내보냅니다.

관련 정보