nfs網際網路共用服務基礎,nfs網際網路共用基礎

來源:互聯網
上載者:User

nfs網際網路共用服務基礎,nfs網際網路共用基礎
nfs原理

 1.開啟RPC服務

2.NFS向RPC服務註冊啟動的連接埠

3.使用者向RPC詢問NFS服務的連接埠

4.RPC返回連接埠給用戶端

5.用戶端通過獲得的連接埠與NFS伺服器進行資料轉送

 

實驗步驟

一、準備

1.檢查系統版本資訊

2.檢查是否安裝nfs和rpc服務

3.安裝服務

二、配置

1.啟動rpc服務和nfs服務

2.查看nfs是否有向rpc註冊連接埠

3.設定開機自啟動

4.編輯nfs設定檔,並重啟服務

5.在用戶端進行掛載

三、測試

1.測試用戶端與服務端的連通性

2.在分享目錄內建立檔案並在客戶機上測試

 

詳細配置:注意:關閉selinux和iptables服務端:

檢查系統版本

[root@nfsclient ~]# cat /etc/redhat-releaseCentOS release 6.8 (Final)[root@nfsclient ~]# uname -r2.6.32-642.el6.x86_64[root@nfsclient ~]# uname -mx86_64

檢查是否安裝服務

[root@nfsserver ~]#  rpm -aq nfs-utils rpcbind

安裝服務

#這裡可以有兩種方法,一種是正常yum安裝,另一種是yum組安裝#分別在服務端和用戶端使用這兩種方法[root@nfsserver ~]# yum install nfs-utils rpcbind -y

啟動rpc服務

#必須先開啟rpc服務,在開啟nfs服務,否則nfs服務會啟動不了,並且可能會發生錯誤[root@nfsserver ~]# /etc/init.d/rpcbind restartStopping rpcbind:                                          [  OK  ]Starting rpcbind:                                          [  OK  ][root@nfsserver ~]# ps -ef |grep rpcrpcuser   1258     1  0 18:36 ?        00:00:00 rpc.statdrpc       1630     1  0 18:53 ?        00:00:00 rpcbindroot      1634  1546  0 18:54 pts/0    00:00:00 grep --color=auto rpc#檢查nfs是否有向rpc註冊連接埠[root@nfsserver ~]# 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#此處結果顯示表示rpc自己使用的連接埠[root@nfsserver ~]# rpcinfo -p localhostrpcinfo: can't contact portmapper: RPC: Remote system error - Connection refused    #此處即為rpc沒有開啟而產生的報錯

開啟nfs服務

[root@nfsserver ~]# /etc/init.d/nfs startStarting NFS services:                                     [  OK  ]Starting NFS mountd:                                       [  OK  ]Starting NFS daemon:                                       [  OK  ]Starting RPC idmapd:                                       [  OK  ][root@nfsserver ~]# 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    100005    1   udp  44683  mountd    100005    1   tcp  53742  mountd    100005    2   udp  45815  mountd    100005    2   tcp  37259  mountd    100005    3   udp  43988  mountd    100005    3   tcp  48220  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  43032  nlockmgr    100021    3   udp  43032  nlockmgr    100021    4   udp  43032  nlockmgr    100021    1   tcp  52980  nlockmgr    100021    3   tcp  52980  nlockmgr    100021    4   tcp  52980  nlockmgr#這種輸出才是nfs向rpc註冊連接埠後的結果,由於nfs提供多種服務,所以會申請多個連接埠#還可以在/etc/sysconfig/nfs中設定監聽連接埠,便於iptbales的書寫echo"LOCKD_TCPPORT=32803" >>/etc/sysconfig/nfs

將rpc和nfs設定為開機自啟動

[root@nfsserver ~]# chkconfig nfs on[root@nfsserver ~]# chkconfig rpcbind on[root@nfsserver ~]# chkconfig --list nfsnfs             0:off   1:off   2:on    3:on    4:on    5:on    6:off[root@nfsserver ~]# chkconfig --list rpcbindrpcbind         0:off   1:off   2:on    3:on    4:on    5:on    6:off#其實查看/etc/init.d/nfs | rpcbind即可得知,rpc於nfs先啟動,後關閉

配置nfs服務並重啟

[root@nfsserver ~]# mkdir /data[root@nfsserver data]# chown -R nfsnobody.nfsnobody /data/#如果沒有修改共用目錄的屬主,則可能會出現如下報錯#touch: cannot touch `hehe': Permission denied#實際上nfs在開啟服務後會自動建立nfsnobody這個使用者,可在/var/lib/nfs/etab 查看預設設定[root@nfsserver ~]# cat /etc/exports ##share my miss for glx at 2017/09/13/data 192.168.1.0/24(rw,sync)[root@nfsserver ~]# /etc/init.d/nfs reload    #ps:reload平滑重啟不會影響正在訪問客戶#重啟後檢查[root@nfsserver ~]# showmount -e localhost   Export list for localhost:/data 192.168.1.0/24#ps:如果出現clnt_create: RPC: Program not registered錯誤,則是rpc和nfs的啟動順序出錯,將兩者都停止並按fpc,nfs順序重新啟動即可

 

用戶端:

安裝服務

[root@nfsclient ~]# yum groupinstall "NFS file server" -y#其實這個安裝包組中包含了nfs及rpc,實際上用戶端只需要rpc即可

啟動rpc服務,並設定成開機自啟動

[root@nfsclient ~]# /etc/init.d/rpcbind startStarting rpcbind:                                          [  OK  ][root@nfsclient ~]# chkconfig rpcbind on[root@nfsclient ~]# chkconfig --list rpcbindrpcbind         0:off   1:off   2:on    3:on    4:on    5:on    6:off

測試與服務端的連通性

[root@nfsclient ~]# ping 192.168.1.111[root@nfsclient ~]# telnet 192.168.1.111 111

掛載共用目錄到本地

[root@nfsclient ~]# mount -t nfs 192.168.1.111:/data /mnt[root@nfsclient ~]# df -hFilesystem           Size  Used Avail Use% Mounted on/dev/sda2            7.1G  907M  5.9G  14% /tmpfs                495M     0  495M   0% /dev/shm/dev/sda1            190M   30M  150M  17% /boot/dev/sr0             3.7G  3.7G     0 100% /media/cd192.168.1.111:/data   12G  2.0G  8.9G  19% /mnt#這樣掛載重啟就會失效,所以如果對安全沒特別要求可寫入/etc/fstab中#或者echo "mount -t nfs 192.168.1.111:/data /mnt" >> /etc/rc.local

  

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.