nfs服務器的配置,配置文件/etc/exports:
ro 該主機對該共享目錄有只讀權限
rw 該主機對該共享目錄有讀寫權限
root_squash 客戶機用root用戶訪問該共享文件夾時,將root用戶映射成匿名用戶
no_root_squash 客戶機用root訪問該共享文件夾時,不映射root用戶
all_squash 客戶機上的任何用戶訪問該共享目錄時都映射成匿名用戶
anonuid 將客戶機上的用戶映射成指定的本地用戶ID的用戶
anongid 將客戶機上的用戶映射成屬於指定的本地用戶組ID
sync 資料同步寫入到內存與硬盤中
async 資料會先暫存於內存中,而非直接寫入硬盤
insecure 允許從這台機器過來的非授權訪問
例子
/ zhang (rw) wang (rw,no_root_squash)
表示共享服務器上的根目錄(/)只有zhang和wang兩台主機可以訪問,且有讀寫權限;
zhang主機用root用戶身份訪問時,將客戶機的root用戶映射成服務器上的匿名用戶(root_squash,該參數為缺省參數),相當於在服務器使用nobody用戶訪問目錄;
wang主機用root用戶身份訪問該共享目錄時,不映射root用戶(no_root_squash),即相當於在服務器上用root身份訪問該目
/root/share/ 192.168.1.20 (rw,insecure,sync,all_squash)
表示共享服務器上的/root/share/目錄只有192.168.1.20主機可以訪問,且有讀寫權限;
此主機用任何身份訪問時,將客戶機的用戶都映射成服務器上的匿名用戶(all_squash),相當於在服務器上用nobody用戶訪問該目錄(若客戶機要在該共享目錄上保存文件(即寫操作),則服務器上的nobody用戶對該目錄必須有寫的權限)
/home/ljm/ *.gdfs.edu.cn (rw,insecure,sync,all_squash)
表示共享/home/ljm/目錄,*.gdfs.edu.cn域中所有的主機都可以訪問該目錄,且有讀寫權限
/home/share/ .gdfs.edu.cn (ro,sync,all_squash,anonuid=student,anongid=math)
表示共享目錄/home/share/,*.gdfs.edu.cn域中的所有主機都可以訪問,但只有只讀的權限,所有用戶都映射成服務器上的uid為student、gid為math的用戶
啟動nfs后又修改了/etc/exports,不用重啟該服務,使用exports命令即可:
exports [-aruv] -a 全部mount或umount文件/etc/exports中的內容 -r 重新mount文件/etc/exports中的共享內容 -u umount目錄 -v 在export的時候,將詳細的信息輸出到屏幕上
例:
[root@localhost ~]#/usr/sbin/exportfs –rv 全部重新export一次
[root@localhost ~]#/usr/sbin/exportfs –au 全部卸載
nfs客戶端的配置:
若是臨時使用可直接執行mount命令:mount servername(or IP): 共享目錄 本地掛載目錄
若客戶機啟動就自動掛載服務器的共享目錄,則需修改客戶機上的/etc/fstab文件
/etc/fstab格式: (192.168.233.139:/share /mnt nfs defaults 0 2) fs_spec fs_file fs_type fs_options fs_dump fs_pass fs_spec:定義希望加載的文件系統所在的設備或遠程文件系統,對於nfs則設為IP:/共享目錄 fs_file:本地掛載點 fs_type:掛載類型 fs_options:掛載參數 fs_dump:該選項被“dump”命令使用來檢查一個文件系統該以多快頻率進行轉儲,若不需轉儲即為0 fs_pass:該字段被fsck命令使用來決定在啟動時需要被掃描的文件系統的順序,根文件系統“/”對應該字段值為1,其他文件系統為2,若該文件系統無需在啟動時被掃描則為0
[root@localhost ~]#vi /etc/hosts.allow Portmap:192.168.5.123:allow [root@localhost ~]#vi /etc/hosts.deny Portmap:ALL:deny
安全提醒:確保網絡安全,使用nfs時結合tcp_wrappers來限制使用范圍(如只想192.168.5.123主機可掛載nfs服務器上的共享目錄),另外還可結合iptables來加強
關機時若nfs server上有client聯機時,先關掉portmap與nfs兩個系統服務。若無法正確將此2項服務關掉,用netstat –utlp找出PID,然后用kill殺掉進程才關機
nfsstat查看NFS的運行狀態,調整NFS運行大有幫助
rpcinfo查看rpc執行信息,用於檢測rpc運行情況
掛載格式:
mount –t nfs hostname(or IP):/directory /mount point
卸載:
umount /本地掛載目錄(本地client卸載方法,但用exports –au為server卸載)
showmount –e IP(查看NFS服務器上共享了那些目錄)
showmount –a IP(用於nfs server上,顯示已經mount上本機NFS服務器的client(客戶機))
