1. 一篇干貨滿滿的 NFS 文章

        共 7126字,需瀏覽 15分鐘

         ·

        2024-04-12 04:47

        一篇干貨滿滿的 NFS 文章

        目錄

        • NFS

          • Windows 2008 server安裝NFS Client所需軟件

          • Win10 安裝 NFS client

          • 5.1 NFS root 用戶掛載但普通用戶無寫入權(quán)限。

          • 5.2 網(wǎng)絡(luò)錯(cuò)誤 53 內(nèi)容一

          • 5.3 網(wǎng)絡(luò)錯(cuò)誤 53 內(nèi)容二

          • 5.4 網(wǎng)絡(luò)錯(cuò)誤 53 內(nèi)容三

          • 5.5 網(wǎng)絡(luò)錯(cuò)誤 53 內(nèi)容四

          • 5.6 網(wǎng)絡(luò)錯(cuò)誤 53 內(nèi)容五

          • NFS 指定端口

          • 1. 安裝

          • 2. 配置

          • 3. 啟動(dòng)并添加到開機(jī)自啟

          • 4. NFS 客戶端掛載

          • 5 報(bào)錯(cuò)與解決辦法

          • 6. Win 系統(tǒng)安裝 NFS client


        NFS

        1. 安裝

        yum install nfs-utils  -y

        2. 配置

        主要配置文件: /etc/exports

        示例配置:

        /nfsfile 192.168.10.*(rw,sync,root_squash)
        • /nfsfile 表示 共享的目錄,注意該目錄的權(quán)限,如果我們設(shè)置好了其他的內(nèi)容時(shí),訪問還是報(bào)錯(cuò)的話,我們可以試著將該目錄的權(quán)限設(shè)置為 777。

        • 192.168.10.* ,指定 IP 允許訪問,我們可以設(shè)置我們需要訪問的客戶端 IP 或者網(wǎng)段,不限制的話設(shè)置為 *

        • (rw,sync,root_squash)

          參數(shù) 作用
          ro 只讀
          rw 讀寫
          root_squash 當(dāng)NFS客戶端以root管理員訪問時(shí),映射為NFS服務(wù)器的匿名用戶
          no_root_squash 當(dāng)NFS客戶端以root管理員訪問時(shí),映射為NFS服務(wù)器的root管理員
          all_squash 無論NFS客戶端使用什么賬戶訪問,均映射為NFS服務(wù)器的匿名用戶
          sync 同步,同時(shí)將數(shù)據(jù)寫入到內(nèi)存與硬盤中,保證不丟失數(shù)據(jù)
          async 異步,優(yōu)先將數(shù)據(jù)保存到內(nèi)存,然后再寫入硬盤;這樣效率更高,但可能會(huì)丟失數(shù)據(jù)
          anonuid 匿名用戶ID
          anongid 匿名組ID

          請注意,NFS客戶端地址與權(quán)限之間沒有空格。

        NFS 指定端口

        # 查看基礎(chǔ)信息
        [root@djx ~]# 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 20048 mountd
        100005 1 tcp 20048 mountd
        100005 2 udp 20048 mountd
        100005 2 tcp 20048 mountd
        100005 3 udp 20048 mountd
        100005 3 tcp 20048 mountd
        100003 3 tcp 2049 nfs
        100003 4 tcp 2049 nfs
        100227 3 tcp 2049 nfs_acl
        100003 3 udp 2049 nfs
        100003 4 udp 2049 nfs
        100227 3 udp 2049 nfs_acl
        100021 1 udp 36449 nlockmgr
        100021 3 udp 36449 nlockmgr
        100021 4 udp 36449 nlockmgr
        100021 1 tcp 40638 nlockmgr
        100021 3 tcp 40638 nlockmgr
        100021 4 tcp 40638 nlockmgr
        #指定 mountd 端口
        [root@djx ~]# [root@mail test]# grep "PORT" /etc/sysconfig/nfs
        LOCKD_TCPPORT=32803
        LOCKD_UDPPORT=32769
        MOUNTD_PORT=892
        STATD_PORT=662
        STATD_OUTGOING_PORT=2020
        # 上面的這些配置,原本默認(rèn)是注釋的,我們需要將# 去除,開啟配置。然后我們 還需要在防火墻開啟端口111和2049的tcp/udp,開啟 tcp 端口 2020、662、892、32803,開啟 udp 端口 32769
        [root@djx ~]# firewall-cmd --add-port={111/tcp,111/udp,2049/tcp,2049/udp,32769/udp,2020/tcp,662/tcp,892/tcp,32803/tcp} --permanent
        [root@djx ~]# firewll-cmd --reload
        [root@djx ~]# systemctl restart nfs-server
        [root@djx ~]# rpcinfo -p
        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
        100024 1 udp 49166 status
        100024 1 tcp 58683 status
        100005 1 udp 892 mountd
        100005 1 tcp 892 mountd
        100005 2 udp 892 mountd
        100005 2 tcp 892 mountd
        100005 3 udp 892 mountd
        100005 3 tcp 892 mountd
        100003 3 tcp 2049 nfs
        100003 4 tcp 2049 nfs
        100227 3 tcp 2049 nfs_acl
        100003 3 udp 2049 nfs
        100003 4 udp 2049 nfs
        100227 3 udp 2049 nfs_acl
        100021 1 udp 32769 nlockmgr
        100021 3 udp 32769 nlockmgr
        100021 4 udp 32769 nlockmgr
        100021 1 tcp 32803 nlockmgr
        100021 3 tcp 32803 nlockmgr
        100021 4 tcp 32803 nlockmgr

        我看到有些文章說還需要加配置 RQUOTAD_PORT ,但是我沒有加該配置,也是可以的,我看 /etc/sysconfig/nfs 文件里面也是沒有這個(gè)配置的,所以沒有加,也可能是版本不一樣,我的環(huán)境是 CentOS Linux release 7.4.1708 , nfs 版本為:nfs-utils-1.3.0-0.61.el7.x86_64

        3. 啟動(dòng)并添加到開機(jī)自啟

        由于在使用NFS服務(wù)進(jìn)行文件共享之前,需要使用RPC(Remote Procedure Call,遠(yuǎn)程過程調(diào)用)服務(wù)將NFS服務(wù)器的IP地址和端口號等信息發(fā)送給客戶端。因此,在啟動(dòng)NFS服務(wù)之前,還需要順帶重啟并啟用rpcbind服務(wù)程序,并將這兩個(gè)服務(wù)一并加入開機(jī)啟動(dòng)項(xiàng)中。

        [root@djx ~]# systemctl restart rpcbind
        [root@djx ~]# systemctl enable rpcbind
        [root@djx ~]# systemctl restart nfs-server
        [root@djx ~]# systemctl enable nfs-server

        4. NFS 客戶端掛載

        NFS客戶端的配置步驟也十分簡單。先使用showmount命令(以及必要的參數(shù),見下表)查詢NFS服務(wù)器的遠(yuǎn)程共享信息,其輸出格式為“共享的目錄名稱 允許使用客戶端地址”。

        showmount命令中可用的參數(shù)以及作用

        參數(shù) 作用
        -e 顯示NFS服務(wù)器的共享列表
        -a 顯示本機(jī)掛載的文件資源的情況NFS資源的情況
        -v 顯示版本號
        [root@djx ~]# showmount -e 192.168.10.10
        Export list for 192.168.10.10:
        /nfsfile 192.168.10.*

        然后在NFS客戶端創(chuàng)建一個(gè)掛載目錄。使用 mount 命令并結(jié)合-t參數(shù),指定要掛載的文件系統(tǒng)的類型,并在命令后面寫上服務(wù)器的IP地址、服務(wù)器上的共享目錄以及要掛載到本地系統(tǒng)(即客戶端)的目錄。

        [root@linuxprobe ~]# mkdir /nfsfile
        [root@linuxprobe ~]# mount -t nfs 192.168.10.10:/nfsfile /nfsfile

        掛載成功后就應(yīng)該能夠順利地看到在執(zhí)行前面的操作時(shí)寫入的文件內(nèi)容了。如果希望NFS文件共享服務(wù)能一直有效,則需要將其寫入到fstab文件中:

        [root@linuxprobe ~]# cat /nfsfile/readme
        welcome to linuxprobe.com
        [root@linuxprobe ~]# vim /etc/fstab
        #
        # /etc/fstab
        # Created by anaconda on Wed May 4 19:26:23 2017
        #
        # Accessible filesystems, by reference, are maintained under '/dev/disk'
        # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
        #
        /dev/mapper/rhel-root / xfs defaults 1 1
        UUID=812b1f7c-8b5b-43da-8c06-b9999e0fe48b /boot xfs defaults 1 2
        /dev/mapper/rhel-swap swap swap defaults 0 0
        /dev/cdrom /media/cdrom iso9660 defaults 0 0
        192.168.10.10:/nfsfile /nfsfile nfs defaults 0 0

        5 報(bào)錯(cuò)與解決辦法

        5.1 NFS root 用戶掛載但普通用戶無寫入權(quán)限。

        最近在使用 NFS 的過程中遇到了這樣的問題,就是我們掛載好共享的文件后(掛載只能 root 用戶進(jìn)行掛載),我們用普通用戶來對掛載的目錄進(jìn)行創(chuàng)建文件是發(fā)現(xiàn)會(huì)報(bào)錯(cuò)的,會(huì)提示權(quán)限不足。

        這個(gè)問題的解決辦法是 :通過設(shè)置 anonuid=0和 anongid=0 和 all_squash。這個(gè)設(shè)置實(shí)現(xiàn)了無論NFS客戶端使用什么賬戶訪問,均映射為NFS服務(wù)器的 id 為 0 的用戶,也就是 root 用戶。這樣普通用戶也會(huì)有權(quán)限在該目錄下面創(chuàng)建文件的權(quán)限,并且創(chuàng)建的文件的所有者是屬于 root 的。

        擴(kuò)展:當(dāng)我們在客戶端和服務(wù)端有相同的用戶,而且 id 一致的時(shí)候,我們可以 設(shè)置 anonuid 為一致的 id。,這樣我們創(chuàng)建文件的所有者就是 該 id 的所對應(yīng)的用戶了。注意需要 id 一致哦。

        5.2 網(wǎng)絡(luò)錯(cuò)誤 53 內(nèi)容一

        window連接linux nfs服務(wù)器 —— 網(wǎng)絡(luò)錯(cuò)誤 53

        需要修改配置 ,增加參數(shù):insecure

        5.3 網(wǎng)絡(luò)錯(cuò)誤 53 內(nèi)容二

        針對的是 windows 2008 server作為客戶端mount的時(shí)候

        如果我們設(shè)置為上面的內(nèi)容后,發(fā)現(xiàn)連接的時(shí)候還是報(bào) 53的錯(cuò)誤。我們可以進(jìn)行下面的第二步設(shè)置。

        在 配置文件 /etc/exports 設(shè)置讀寫權(quán)限的時(shí)候 設(shè)置參數(shù) no_root_squash,不設(shè)置這個(gè)不行。

        更改配置后需要重啟 nfs server 。

        systemctl start nfs-server

        5.4 網(wǎng)絡(luò)錯(cuò)誤 53 內(nèi)容三

        我們映射的目錄權(quán)限最好為 777 ,否則可能訪問不到。

        5.5 網(wǎng)絡(luò)錯(cuò)誤 53 內(nèi)容四

        客戶端進(jìn)行 mount 路徑有誤。看下面示例:

        例如映射的 目錄是 /home ,那么 mount 的命令是 :

        mount  \\192.168.1.23\home  X:\

        例如映射的 目錄是 /home/test ,那么 mount 的命令是 :

        mount  \\192.168.1.23\home/test  X:\

        注意多級目錄后面就不是使用 \ 而是用 / 。

        5.6 網(wǎng)絡(luò)錯(cuò)誤 53 內(nèi)容五

        映射為本地的磁盤時(shí),我們要選擇我們沒有使用的磁盤符。選用 X、Y、W等這些平常一般不使用的盤符號。

        6. Win 系統(tǒng)安裝 NFS client

        Windows 2008 server安裝NFS Client所需軟件

        通過Server Manager,

        1.添加角色,選中File Services,然后按照向?qū)崾景惭b。

        2.添加Features,安裝Remote Server Administration Tools/Role Administration Tools/File Services Tool/Services for Network File System Tools

        需要安裝Services For Network File System

        然后運(yùn)行Services For Network File system,啟動(dòng)client for NFS

        Win10 安裝 NFS client

        鏈接:https://www.cnblogs.com/operationhome/p/11700700.html

        版權(quán)歸原作者所有,侵刪)


        瀏覽 28
        點(diǎn)贊
        評論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        評論
        圖片
        表情
        推薦
        點(diǎn)贊
        評論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
          
          

            1. 美女张开腿给男人桶 | 国产无遮挡呻吟吸乳视频 | 午夜福利在线一区 | 妺妺窝人体色7777777 | 亚洲.欧美.丝袜.中文.综合 |