NFS 伺服器正在導出錯誤的目錄
承認有點尷尬,但我無法讓我的 NFS 伺服器導出正確的目錄。我在客戶端和伺服器上都使用最新的 CentOS 6.2。
伺服器已啟動並執行,防火牆在測試期間被禁用。
在伺服器端,我創建了這個
/etc/exports
:/home/user1/documents/ *(ro,sync)
該目錄是軟體raid 卷的根目錄。
mount
輸出如下:/dev/mapper/lvm--raid-lvol0 on /home/user1/documents type ext4 (rw,nosuid,nodev)
伺服器上的命令
showmount -e
顯示正確的輸出:Export list for servername: /home/user1/documents (everyone)
我嘗試從客戶端掛載該共享並獲得以下輸出:
mount.nfs: access denied by server while mounting servername:/home/user1/documents
但是,當我在伺服器上查看文件時,
/proc/fs/nfsd/exports
我看到了多個掛載點,但不是正確的# Version 1.2 # Path Client(Flags) # IPs / *(ro,root_squash,sync,no_wdelay,no_subtree_check,v4root,fsid=0,uuid=696f3ea6:3d7641f3:b6315631:bd63c833) /home *(ro,root_squash,sync,no_wdelay,no_subtree_check,v4root,uuid=696f3ea6:3d7641f3:b6315631:bd63c833) /home/user1 *(ro,root_squash,sync,no_wdelay,no_subtree_check,v4root,uuid=696f3ea6:3d7641f3:b6315631:bd63c833)
這些條目來自哪裡,為什麼沒有以 開頭的行
/home/user1/documents
?我嘗試安裝/home/user1
而不是/home/user1/documents
從客戶端安裝,這很奇怪。使用者的 UID 在伺服器和客戶端上是相同的。要導出的目錄是自己掛載的,會不會有問題?
編輯
該文件
/var/lib/nfs/xtab
為空。
我看到您正在使用 NFSv4(/proc/fs/nfsd/exports 輸出中的 fsid=0 將其洩露)。NFSv4 需要 NFS 根。這個 /etc/exports 可能會讓你有更好的運氣。
/home *(ro,fsid=0) /home/user1/documents/ *(ro,sync)
您可能還需要在 /etc/idmapd.conf 中為伺服器和客戶端編輯域。
附帶說明一下,如果您不希望不受信任的系統可以訪問您的數據,我強烈建議您用子網替換該星號。
我有一個問題:
/my/dir1 *(rw,sync,fsid=0,crossmnt,no_subtree_check) /my/dir2 *(rw,sync,fsid=0,crossmnt,no_subtree_check)
並且兩個 mount 都出現了
/my/dir1
。我試圖使用與 Ubuntu 16.04
nfs-kernel-server
包/etc/exports
範例文件中給出的相同的預設選項:https ://unix.stackexchange.com/questions/198009/what-provides-etc-exports-and-how-do-i-find -那個-出解決方案是刪除
fsid=0,crossmnt
並使用:/my/dir1 *(rw,sync,no_subtree_check) /my/dir2 *(rw,sync,no_subtree_check)
我真的不知道所有這些都是做什麼的,有一天我會學習 NFS。也許。