1 NFS介紹
1.1 什么是NFS?
NFS是Network File System的縮寫,中文名稱是網絡文件系統。它的主要功能是通過網絡讓不用的主機系統之間可以共享文件或者目錄。NFS客戶端通過掛載(mount)的方式將NFS服務器端共享數據目錄掛載到NFS客戶端本地系統中。
NFS網絡文件系統很像Windows系統的網絡共享、安全功能、網絡驅動器映射,類似linux系統里的samba服務。一般情況下,Windows網絡共享服務或者linux系統的samba服務用於辦公局域網共享,而互聯網中小型網站集群架構后端常用NFS進行數據共享,如果是大型網站,可能會用到分布式文件系統,如:Moosefs(mfs)、ClusterFS、FastDFSD等。
1.2 NFS企業中應用場景
1.2.1 企業集群架構工作場景
NFS網絡文件系統存儲共享視頻、圖片、附件等靜態資源文件,如:BBS產品的圖片、附件、頭像,前端所有的節點訪問這些靜態資源時都會讀取NFS存儲上的儲存的靜態資源
1.3 什么是RPC(Remote Procedure Call)
因為NFS支持的功能相當多,而不同的功能都會使用不同的程序來啟動,每啟動一個功能就會啟用一些端口來傳輸數據,因此,NFS的功能所對應的端口無法固定,它會隨機取用一些未被使用的端口來作為傳輸之用,所以需要通過RPC協議/服務來實現;其中CentOS5.x的隨機端口都小於1024,而CentOS6.x的隨機端口都是較大的
1.4 NFS工作流程圖
1.5 NFS的工作流程原理圖
注意:
Ø NFS客戶端啟動RPC服務即可,無需啟動NFS服務
Ø NFS的RPC服務,在CentOS5.x下名稱為portmap,在CentOS6.x下名稱為rpcbind
1.6 主機IP地址規划
| 服務器說明 |
外網IP地址 |
內網IP地址 |
主機名規划 |
| Rsync備份服務器 |
10.0.0.41/24 |
172.16.1.41/24 |
backup |
| NFS存儲服務器(client) |
10.0.0.31/24 |
172.16.1.31/24 |
nfs01 |
2 NFS服務端安裝過程
2.1 查看NFS服務端操作系統及內核版本信息
[root@nfs01 ~]# cat /etc/redhat-release
CentOS release 6.9 (Final)
[root@nfs01 ~]# uname -r
2.6.32-696.el6.x86_64
[root@nfs01 ~]# uname -m
x86_64
[root@nfs01 ~]# hostname
nfs01
2.2 查看NFS軟件包是否安裝
[root@nfs01 ~]# rpm -qa | egrep "nfs-utils|rpcbind"
2.3 安裝NFS軟件並查看
[root@nfs01 ~]# yum install nfs-utils rpcbind -y
[root@nfs01 ~]# rpm -qa nfs-utils rpcbind
nfs-utils-1.2.3-78.el6.x86_64
rpcbind-0.2.0-16.el6.x86_64
2.4 安裝基本常用工具軟件
[root@nfs01 ~]# yum install lrzsz nmap tree dos2unix nc –y
[root@nfs01 ~]# rpm -qa lrzsz nmap tree dos2unix nc
nmap-5.51-6.el6.x86_64
dos2unix-3.1-37.el6.x86_64
nc-1.84-24.el6.x86_64
lrzsz-0.12.20-27.1.el6.x86_64
tree-1.5.3-3.el6.x86_64
2.5 保留yum源下載的軟件
[root@nfs01 ~]# sed -i 's#keepcache=0#keepcache=1#g' /etc/yum.conf
[root@nfs01 ~]# grep "keepca*" /etc/yum.conf
keepcache=1
[root@nfs01 ~]# pwd
/root
[root@nfs01 ~]# tar zcvf nfs-rpm.tar.gz /var/cache/yum/x86_64/6/base/packages/
tar: Removing leading `/' from member names
/var/cache/yum/x86_64/6/base/packages/
/var/cache/yum/x86_64/6/base/packages/nfs-utils-lib-1.1.5-13.el6.x86_64.rpm
/var/cache/yum/x86_64/6/base/packages/dos2unix-3.1-37.el6.x86_64.rpm
/var/cache/yum/x86_64/6/base/packages/libtirpc-0.2.1-15.el6.x86_64.rpm
/var/cache/yum/x86_64/6/base/packages/nmap-5.51-6.el6.x86_64.rpm
/var/cache/yum/x86_64/6/base/packages/libevent-1.4.13-4.el6.x86_64.rpm
/var/cache/yum/x86_64/6/base/packages/nfs-utils-1.2.3-78.el6.x86_64.rpm
/var/cache/yum/x86_64/6/base/packages/keyutils-1.4-5.el6.x86_64.rpm
/var/cache/yum/x86_64/6/base/packages/nc-1.84-24.el6.x86_64.rpm
/var/cache/yum/x86_64/6/base/packages/rpcbind-0.2.0-16.el6.x86_64.rpm
/var/cache/yum/x86_64/6/base/packages/lrzsz-0.12.20-27.1.el6.x86_64.rpm
/var/cache/yum/x86_64/6/base/packages/tree-1.5.3-3.el6.x86_64.rpm
/var/cache/yum/x86_64/6/base/packages/libgssglue-0.1-11.el6.x86_64.rpm
[root@nfs01 ~]# ls -ld nfs-rpm.tar.gz
-rw-r--r-- 1 root root 3636275 Jul 22 22:15 nfs-rpm.tar.gz
[root@nfs01 ~]# sz nfs-rpm.tar.gz #下載打包的壓縮包到本地
注意:yum源下載軟件包緩存目錄為cachedir=/var/cache/yum/$basearch/$releasever
2.6 NFS服務端啟動rpcbind服務並檢查服務啟動情況
[root@nfs01 ~]# /etc/init.d/rpcbind start
Starting rpcbind: [ OK ]
[root@nfs01 ~]# /etc/init.d/rpcbind status
rpcbind (pid 1202) is running...
[root@nfs01 ~]# ps -ef | grep rpcbind | grep -v grep
rpc 1202 1 0 22:03 ? 00:00:00 rpcbind
[root@nfs01 ~]# netstat -lntup |grep rpcbind
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1609/rpcbind
tcp 0 0 :::111 :::* LISTEN 1609/rpcbind
udp 0 0 0.0.0.0:111 0.0.0.0:* 1609/rpcbind
udp 0 0 0.0.0.0:936 0.0.0.0:* 1609/rpcbind
udp 0 0 :::111 :::* 1609/rpcbind
udp 0 0 :::936 :::* 1609/rpcbind
2.7 打印rpc注冊信息
[root@nfs01 ~]# rpcinfo -p localhost
program vers proto port service
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
2.8 啟動NFS服務並檢查服務啟動狀態
[root@nfs01 ~]# /etc/init.d/nfs start
Starting NFS services: [ OK ]
Starting NFS quotas: [ OK ]
Starting NFS mountd: [ OK ]
Starting NFS daemon: [ OK ]
Starting RPC idmapd: [ OK ]
[root@nfs01 ~]# /etc/init.d/nfs status
rpc.svcgssd is stopped
rpc.mountd (pid 1287) is running...
nfsd (pid 1303 1302 1301 1300 1299 1298 1297 1296) is running...
rpc.rquotad (pid 1282) is running...
2.9 再次打印rpc注冊信息
[root@nfs01 ~]# rpcinfo -p localhost
program vers proto port service
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
100011 1 udp 875 rquotad
100011 2 udp 875 rquotad
100011 1 tcp 875 rquotad
100011 2 tcp 875 rquotad
100005 1 udp 43643 mountd
100005 1 tcp 55853 mountd
100005 2 udp 54618 mountd
100005 2 tcp 58559 mountd
100005 3 udp 44173 mountd
100005 3 tcp 41536 mountd
100003 2 tcp 2049 nfs
100003 3 tcp 2049 nfs
100003 4 tcp 2049 nfs
100227 2 tcp 2049 nfs_acl
100227 3 tcp 2049 nfs_acl
100003 2 udp 2049 nfs
100003 3 udp 2049 nfs
100003 4 udp 2049 nfs
100227 2 udp 2049 nfs_acl
100227 3 udp 2049 nfs_acl
100021 1 udp 41379 nlockmgr
100021 3 udp 41379 nlockmgr
100021 4 udp 41379 nlockmgr
100021 1 tcp 33228 nlockmgr
100021 3 tcp 33228 nlockmgr
100021 4 tcp 33228 nlockmgr
2.10 NFS、rpcbind服務設置開機自啟動
方法一(chkconfig命令):
[root@nfs01 ~]# chkconfig rpcbind on
[root@nfs01 ~]# chkconfig nfs on
[root@nfs01 ~]# chkconfig | grep "3:on" | grep -Ew "nfs|rpcbind"
nfs 0:off 1:off 2:on 3:on 4:on 5:on 6:off
rpcbind 0:off 1:off 2:on 3:on 4:on 5:on 6:off
方法二(添加啟動命令到/etc/rc.d/rc.local文件中):
[root@nfs01 ~]# echo "#start up nfs service and rpcbind service by wolf_dreams at 2018-07-28" >> /etc/rc.d/rc.local
[root@nfs01 ~]# echo "/etc/init.d/rpcbind start" >> /etc/rc.d/rc.local
[root@nfs01 ~]# echo "/etc/init.d/nfs start" >>/etc/rc.d/rc.local
[root@nfs01 ~]# tail -3 /etc/rc.d/rc.local
#start up nfs service and rpcbind service by wolf_dreams at 2018-07-28
/etc/init.d/rpcbind start
/etc/init.d/nfs start
2.11 查看啟動NFS后,系統運行的NFS相關進程
[root@nfs01 ~]# ps -ef | egrep "nfs|rpc" | grep -v grep
rpc 1204 1 0 16:29 ? 00:00:00 rpcbind
rpcuser 1226 1 0 16:29 ? 00:00:00 rpc.statd #->檢查文件一致性
root 1275 2 0 16:29 ? 00:00:00 [rpciod/0]
root 1284 1 0 16:29 ? 00:00:00 rpc.rquotad #->磁盤配額進程
root 1289 1 0 16:29 ? 00:00:00 rpc.mountd#->權限管理驗證等
root 1296 2 0 16:29 ? 00:00:00 [nfsd4]
root 1297 2 0 16:29 ? 00:00:00 [nfsd4_callbacks]
root 1298 2 0 16:29 ? 00:00:00 [nfsd]
root 1299 2 0 16:29 ? 00:00:00 [nfsd]
root 1300 2 0 16:29 ? 00:00:00 [nfsd]
root 1301 2 0 16:29 ? 00:00:00 [nfsd]
root 1302 2 0 16:29 ? 00:00:00 [nfsd]
root 1303 2 0 16:29 ? 00:00:00 [nfsd]
root 1304 2 0 16:29 ? 00:00:00 [nfsd]
root 1305 2 0 16:29 ? 00:00:00 [nfsd] #->NFS主進程
root 1334 1 0 16:29 ? 00:00:00 rpc.idmapd #->name mapping daemon
2.12 使用rpcinfo查看注冊信息,出現報錯解決方法
報錯提示:
[root@nfs01 ~]# rpcinfo -p localhost
rpcinfo: can't contact portmapper: RPC: Remote system error - Connection refused
排查方法:
1、檢查rpcbind服務是否啟動
[root@nfs01 ~]# /etc/init.d/rpcbind status
rpcbind is stopped
2、檢查端口是否啟動
[root@nfs01 ~]# lsof -i :111
解決辦法(啟動rpcbind服務並檢查rpc注冊信息顯示):
[root@nfs01 ~]# /etc/init.d/rpcbind start
Starting rpcbind: [ OK ]
[root@nfs01 ~]# rpcinfo -p localhost
program vers proto port service
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
3 NFS客戶端安裝過程
3.1 查看NFS客戶端操作系統及內核版本信息
[root@backup ~]# cat /etc/redhat-release
CentOS release 6.9 (Final)
[root@backup ~]# uname -r
2.6.32-696.el6.x86_64
[root@backup ~]# uname -m
x86_64
[root@backup ~]# hostname
backup
3.2 查看NFS軟件包是否安裝
[root@backup ~]# rpm -qa | egrep "nfs-utils|rpcbind"
[root@backup ~]# yum grouplist | grep "NFS file server"
NFS file server
3.3 安裝NFS軟件並查看
[root@backup ~]# yum install nfs-utils rpcbind –y
[root@backup ~]# yum groupinstall "NFS file server" -y
[root@backup ~]# rpm -qa | egrep "nfs-utils|rpcbind"
nfs-utils-1.2.3-78.el6.x86_64
nfs-utils-lib-1.1.5-13.el6.x86_64
rpcbind-0.2.0-16.el6.x86_64
3.4 NFS客戶端啟動rpcbind服務並檢查服務啟動情況
[root@backup ~]# /etc/init.d/rpcbind start
Starting rpcbind: [ OK ]
[root@backup ~]# /etc/init.d/rpcbind status
rpcbind (pid 1397) is running...
[root@backup ~]# ps -ef | grep rpcbind | grep -v grep
rpc 1397 1 0 17:01 ? 00:00:00 rpcbind
[root@backup ~]# netstat -lntup | grep rpcbind
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1397/rpcbind
tcp 0 0 :::111 :::* LISTEN 1397/rpcbind
udp 0 0 0.0.0.0:724 0.0.0.0:* 1397/rpcbind
udp 0 0 0.0.0.0:111 0.0.0.0:* 1397/rpcbind
udp 0 0 :::724 :::* 1397/rpcbind
udp 0 0 :::111 :::* 1397/rpcbind
3.5 打印rpc注冊信息
[root@backup ~]# rpcinfo -p localhost
program vers proto port service
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
3.6 rpcbind服務設置開機自啟動
方法一(chkconfig命令):
[root@backup ~]# chkconfig rpcbind on
[root@backup ~]# chkconfig --list rpcbind
rpcbind 0:off 1:off 2:on 3:on 4:on 5:on 6:off
方法二(添加至/etc/rc.d/rc.local配置文件中):
[root@backup ~]# echo "#start up rpcbind service by wolf_dreams at 2018-07-28" >> /etc/rc.d/rc.local
[root@backup ~]# echo "/etc/init.d/rpcbind start" >> /etc/rc.d/rc.local
[root@backup ~]# tail -2 /etc/rc.d/rc.local
#start up rpcbind service by wolf_dreams at 2018-07-28
/etc/init.d/rpcbind start
4 NFS服務端配置
4.1 查看/etc/exports配置文件
[root@nfs01 ~]# ls -l /etc/exports
-rw-r--r--. 1 root root 0 Jan 12 2010 /etc/exports
[root@nfs01 ~]# cat /etc/exports
4.2 獲取/etc/exports幫助文檔
[root@nfs01 ~]# man exports
EXAMPLE
# sample /etc/exports file
/ master(rw) trusty(rw,no_root_squash)
/projects proj*.local.domain(rw)
/usr *.local.domain(ro) @trusted(rw)
/home/joe pc001(rw,all_squash,anonuid=150,anongid=100)
/pub *(ro,insecure,all_squash)
/srv/www -sync,rw server @trusted @external(ro)
/foo 2001:db8:9:e54::/64(rw) 192.0.2.0/24(rw)
/build buildhost[0-9].local.domain(rw)
4.3 創建共享目錄/data且查看NFS服務對應的進程用戶
[root@nfs01 ~]# mkdir /data -p
[root@nfs01 ~]# id nfsnobody
uid=65534(nfsnobody) gid=65534(nfsnobody) groups=65534(nfsnobody)
4.4 授權/data目錄屬主屬組權限
[root@nfs01 ~]# ls -ld /data/
drwxr-xr-x 2 root root 4096 Jul 21 16:31 /data/
[root@nfs01 ~]# chown -R nfsnobody:nfsnobody /data/
[root@nfs01 ~]# ls -ld /data/
drwxr-xr-x 2 nfsnobody nfsnobody 4096 Jul 21 16:31 /data/
4.5 編輯/etc/exports配置文件
[root@nfs01 ~]# vi /etc/exports
#share /data by wolf_dreams for software at 2018-07-21
/data 172.16.1.0/24(rw,sync)直接將數據寫入到硬盤小並發,大並發采用async
[root@nfs01 ~]# cat /etc/exports
#share /data by wolf_dreams for software at 2018-07-21
/data 172.16.1.0/24(rw,sync)
[root@nfs01 ~]# cat /var/lib/nfs/etab
/data 172.16.1.0/24(rw,sync,wdelay,hide,nocrossmnt,secure,root_squash,no_all_squash,no_subtree_check,secure_locks,acl,anonuid=65534,anongid=65534,sec=sys,rw,root_squash,no_all_squash)
4.6 重啟nfs服務
[root@nfs01 ~]# /etc/init.d/nfs reload
[root@nfs01 ~]# exportfs -rv
exporting 172.16.1.0/24:/data
提示:/etc/init.d/nfs reload 等價於exportfs –rv, 即平滑重啟,意思就是把已經正在排隊的任務處理完成后再重啟nfs服務
4.7 NFS服務端查看掛載信息
[root@nfs01 ~]# showmount -e 172.16.1.31
Export list for 172.16.1.31:
/data 172.16.1.0/24
4.8 NFS服務端驗證測試
[root@nfs01 ~]# ls -l /data/
total 0
-rw-r--r-- 1 nfsnobody nfsnobody 0 Jul 21 16:53 nfs.txt
[root@nfs01 ~]# cat /data/nfs.txt
welcome to wolf_dreams
5 NFS客戶端配置
NFS客戶端掛載參數說明表
| 掛載命令 |
掛載文件系統類型 |
NFS服務端提供的共享目錄 |
NFS客戶端的掛載點 |
| mount |
-t nfs |
172.16.1.31:/data |
/mnt(必須存在) |
| 完整掛載命令:mount -t nfs 172.16.1.31:/data /mnt,此命令在客戶端上執行 |
5.1 NFS客戶端查看掛載信息
[root@backup ~]# showmount -e 172.16.1.31
Export list for 172.16.1.31:
/data 172.16.1.0/24
5.2 掛載NFS網絡文件系統到本地/mnt目錄(臨時)
[root@backup ~]# mount -t nfs 172.16.1.31:/data /mnt
5.3 開機自動掛載網絡文件系統NFS
方法一(添加至/etc/rc.d/rc.local開機啟動配置文件中):
[root@backup ~]# echo "#Start up and mount automatically nfs by wolf_dreams at 2018-07-28" >> /etc/rc.d/rc.local
[root@backup ~]# echo "/bin/mount -t nfs 172.16.1.31:/data /mnt" >> /etc/rc.d/rc.local
[root@backup ~]# tail -2 /etc/rc.d/rc.local
#Start up and mount automatically nfs by wolf_dreams at 2018-07-28
/bin/mount -t nfs 172.16.1.31:/data /mnt
方法二(添加至/etc/fstab配置文件中):
[root@backup ~]# echo "172.16.1.31:/data /mnt nfs defaults 0 0" >> /etc/fstab
[root@backup ~]# tail -1 /etc/fstab
172.16.1.31:/data /mnt nfs defaults 0 0
提示(使用/etc/fstab方式掛載nfs網絡文件系統需要開機netfs服務):
[root@backup ~]# /etc/init.d/netfs start
NFS filesystems queued to be mounted
Mounting filesystems: [ OK ]
[root@backup ~]# chkconfig netfs on
[root@backup ~]# chkconfig --list netfs
netfs 0:off 1:off 2:on 3:on 4:on 5:on 6:off
原因:linux操作系統開機啟動的時候先加載/etc/fstab配置文件,然后才啟動網絡服務,使其網絡正常,NFS網絡文件系統在客戶端掛載依賴於網絡聯通,只有網絡正常才能掛載成功,故需要啟動netfs服務才能實現開機自動掛載,/etc/fstab配置文件即使是本地文件系統,最后兩列也要設置為0 0,否則可能會導致linux系統無法啟動
5.4 查看當前系統已掛載文件系統信息
方法一(df -h):
[root@backup ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 18G 1.6G 15G 10% /
tmpfs 238M 0 238M 0% /dev/shm
/dev/sda1 477M 35M 417M 8% /boot
172.16.1.31:/data 18G 1.5G 15G 9% /mnt
方法二(mount):
[root@backup ~]# mount | grep mnt
172.16.1.31:/data on /mnt type nfs (rw,vers=4,addr=172.16.1.31,clientaddr=172.16.1.41)
方法三(/proc/mounts):
[root@backup ~]# cat /proc/mounts | grep mnt
172.16.1.31:/data/ /mnt nfs4 rw,relatime,vers=4,rsize=65536,wsize=65536,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=172.16.1.41,minorversion=0,local_lock=none,addr=172.16.1.31 0 0
5.5 客戶端測試
[root@backup ~]# cd /mnt/
[root@backup mnt]# ls
[root@backup mnt]# touch nfs.txt
[root@backup mnt]# ls -l
total 0
-rw-r--r-- 1 nfsnobody nfsnobody 0 Jul 21 16:53 nfs.txt
[root@backup mnt]# echo "welcome to wolf_dreams" > nfs.txt
6 搭建NFS集群共享更改用戶
6.1 NFS服務端配置
[root@nfs01 ~]# mkdir /data1
[root@nfs01 ~]# tail -2 /etc/exports
#share /data1 by wolf_dreams at 2018-07-28
/data1 172.16.1.0/24(rw,sync,all_squash,anonuid=888,anongid=888)
[root@nfs01 ~]# useradd -u 888 -s /bin/bash -M nfs
[root@nfs01 ~]# chown -R nfs:nfs /data1
[root@nfs01 ~]# /etc/init.d/nfs reload
[root@nfs01 ~]# cd /data1
[root@nfs01 data1]# ls
test.txt
提示:all_squash參數含義:不管你訪問NFS服務共享目錄的用戶身份如何,它的權限都會被壓縮成匿名用戶,同時它的UID和GID都會變成nfsnobody賬號身份
6.2 NFS客戶端配置
[root@backup ~]# useradd -u 888 -s /bin/bash -M nfs
[root@backup ~]# showmount -e 172.16.1.31
Export list for 172.16.1.31:
/data1 172.16.1.0/24
/data 172.16.1.0/24
[root@backup ~]# mount -t nfs 172.16.1.31:/data1 /opt
[root@backup ~]# df -h | grep opt
172.16.1.31:/data1 18G 1.5G 15G 9% /opt
[root@backup opt]# cd
[root@backup ~]# cd /opt/
[root@backup opt]# ls
[root@backup opt]# touch test.txt
7 故障排查案例
7.1 案例一
故障現象描述:
[root@backup ~]# showmount -e 172.16.1.31
clnt_create: RPC: Port mapper failure - Unable to receive: errno 111 (Connection refused)
排查思路:
1、檢查防火牆是否關閉
[root@nfs01 ~]# /etc/init.d/iptables status
iptables: Firewall is not running.
2、服務是否啟動
[root@nfs01 ~]# /etc/init.d/rpcbind status
rpcbind is stopped
3、端口是否開啟
[root@backup ~]# telnet 172.16.1.31 111
Trying 172.16.1.31...
telnet: connect to address 172.16.1.31: Connection refused
解決辦法:
[root@nfs01 ~]# /etc/init.d/rpcbind start
Starting rpcbind: [ OK ]
[root@nfs01 ~]# /etc/init.d/rpcbind status
rpcbind (pid 3386) is running...
7.2 案例二
故障現象描述:
[root@backup ~]# showmount -e 172.16.1.31
clnt_create: RPC: Program not registered
排查思路:
NFS服務端rpcbind、nfs服務的啟動前后順序有問題
解決辦法:
[root@nfs01 ~]# /etc/init.d/nfs restart
Shutting down NFS daemon: [ OK ]
Shutting down NFS mountd: [ OK ]
Shutting down NFS quotas: [ OK ]
Shutting down NFS services: [ OK ]
Shutting down RPC idmapd: [ OK ]
Starting NFS services: [ OK ]
Starting NFS quotas: [ OK ]
Starting NFS mountd: [ OK ]
Starting NFS daemon: [ OK ]
Starting RPC idmapd: [ OK ]


