Network File System 網絡文件系統,基於內核的文件系統;vim
Sun公司開發,經過使用NFS,用戶和程序能夠像訪問本地文件同樣訪問遠端系統上的文件,基於RPC(Remote Procedure Call Protocol遠程過程調用)實現;安全
RPC採用C/S模式。客戶機請求程序調用進程發送一個有進程參數的調用信息到服務進程,而後等待應答信息。在服務器端,進程保持睡眠狀態直到調用信息到達爲止。當一個調用信息到達,服務器得到進程參數,計算結果,發送答覆信息,而後等待下一個調用信息,最後,客戶端調用進程接收答覆信息,得到進程結果,而後調用執行繼續進行;服務器
NFS優點:節省本地存儲空間,將經常使用的數據如:home目錄,存放在一臺NFS服務器上且能夠經過網絡訪問,那麼本地終端將能夠減小自身存儲空間的使用。網絡
軟件包:nfs-utils
異步
內核模塊:nfs.ko
async
端口:隨機,向rpcbind註冊使用,rpcbind的端口是111性能
依賴服務:rpcbind
,使用rpcinfo
命令可查看註冊信息ui
服務:systemctl start nfs.service
spa
日誌:/var/lib/nfs/
3d
vim /etc/sysconfig/nfs RQUOTAD_PORT=875 LOCKD_TCPPORT=32803 LOCKD_UDPPORT=32769 MOUNTD_PORT=892 STATD_PORT=662 STATD_OUTGOING_PORT=2020
配置文件:
/etc/exports
配置文件格式:/share/dir host1(opt1,opt2) host2(opt1,opt2)...
host:
單個主機:ipv4,ipv6,FQDN
IP networks:兩種掩碼格式均支持
wildcards:主機名通配,例:*.example.com
netgroups:NIS域的主機組,@group_name
anonymous:表示使用*通配全部客戶端
options:
默認選項:(ro,sync,root_squash,no_all_squash)
ro,rw:只讀和讀寫
async:異步,數據變化後不當即寫磁盤,性能高
sync:同步,數據在請求時當即寫入磁盤,安全性高
no_all_squash:保留共享文件的UID和GID
all_squash:全部遠程用戶(包括root)的文件屬主屬組都變成nfsnobody
root_squash:遠程root映射爲nfsnobody,UID爲65534
no_root_squash:遠程root映射成root用戶
anonuid和anongid:指明匿名用戶映射爲特定用戶UID和組GID,而非nfsnobody,可配合all_squash使用
rpcinfo命令:
exportfs命令:
showmount -e host:查看指定主機NFS共享信息
NFS相關的掛載選項:mount.nfs -o