Nfs
nfs 掛載失敗:伺服器給出的原因:沒有這樣的文件或目錄
nfs 伺服器正在執行 Arch Linux。下面的 nfs 客戶端(“pc1”)正在執行 Ubuntu 16.04。兩者都使用nfs4。
root@PC1:~# cat /etc/fstab(相關行如下所示):
server:/backup/system/pc1 /backup/system nfs4 auto,noatime 0 0
客戶端啟動後,nfs掛載失敗:(
journalctl -b -p err
輸出如下圖):Aug 25 17:56:43 LatishaPC1 systemd[1]: Failed to mount /backup/system.
root@PC1:~# showmount -e server(輸出如下所示):
Export list for server: /export 192.168.1.0/24 /export/backup/system 192.168.1.0/24 /export/backup/system/pc1 192.168.1.8
手動嘗試掛載(以root身份)使用
mount /backup/system
給出以下輸出:mount.nfs4: mounting server:/backup/system/pc1 failed, reason given by server: No such file or directory
但是,我們從
showmount
伺服器確實列出了目錄。這是伺服器上的 /etc/exports 文件:
/export 192.168.1.0/24(fsid=0,rw,sync,no_subtree_check) /export/backup/system/ 192.168.1.0/24(rw,sync,no_root_squash,no_subtree_check,nohide) /export/backup/system/pc1 192.168.1.8(rw,sync,no_root_squash,no_subtree_check)
我在沒有和沒有上面最後一行的情況下都試過了。無論哪種方式都相同的錯誤。我已經解決了幾天,但沒有解決它。(我有其他按預期工作的 nfs 伺服器和客戶端,我已經將此配置與工作系統進行了比較,我看不出有什麼區別。)我檢查了許多類似的問題。我可能忽略了一個明顯的答案。如果這已經在 StackExchange 上的某個地方得到回答,我提前道歉。我還沒有找到解決方案。
更新 1:
客戶端可以掛載 server:/ 並且掛載提供了另一個線索。將掛載導航到 /backup/system/ 時,目錄為空。它應該包含“pc1”,如上面的 showmount 命令所示。
這是伺服器上顯示的文件權限。
[root@server export]# cd backup/ [root@server backup]# ls -la drwxr-xr-x 1 root root 76 Jun 3 02:31 . drwxr-xr-x 1 root root 12 Aug 25 02:44 .. drwxr-xr-x 1 root root 142 Jul 5 19:58 system [root@server backup]# cd system/ [root@server system]# ls -la drwxr-xr-x 1 root root 142 Jul 5 19:58 . drwxrwx--- 1 root root 6 May 28 11:35 pc1
更新2:
root@PC1:~# ip a
跟隨 的輸出。它表明伺服器上/etc/exports 中列出的IP 地址是正確的。2: enp0s31f6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 inet 192.168.1.8/24 brd 192.168.1.255 scope global dynamic enp0s31f6
不適用於
NFSv4
:為什麼之前不包含該文件夾
/backup/
?它應該是 :
server:/export/backup/system/pc1 /backup/system nfs4 auto,noatime 0 0
您需要根據您的導出文件掛載它。
編輯 :
可能是您僅將文件 pc1 導出到 IP 地址
192.168.1.8
,而您的客戶端沒有該 IP。嘗試更改 IP 地址:
/export/backup/system/pc1 192.168.1.0/24(rw,sync,no_root_squash,no_subtree_check)