NFS(Network File System)



NFS(Network File System) :


Linux 與 Linux 之間提供的檔案系統共用分享.

Server 端: 提供 FileSystem 給 Client 端掛載使用


1.1 檢查是否已經安裝 NFS server,使用指令rpm -q nfs-utils,如果有顯示版本的資訊,那就是有安裝啦

1.2 yum 安裝 NFS-server # yum install nfs-utils
  1. 設定 /etc/exports
  2. 格式: 分享的目錄 Client主機(選項s)
  3. 範例: /tmp/myshare *(rw,async,no_root_squash)
  4. 啟動: [root@localhost vm]# /etc/rc.d/init.d/nfs start
    正在啟動 NFS 服務: [ 確定 ]
    正在啟動 NFS quotas: [ 確定 ]
    正在啟動 NFS 系統程式: [ 確定 ]
    正在啟動 NFS mountd: [ 確定 ]
  5. 查看1: [root@localhost vm]# showmount -e localhost   --> 查看 NFS 的分享目錄
  6. 查看1: [root@localhost vm]# showmount -a localhost   --> 查看登錄 NFS 的目錄與 IP
    權限方面 (就是小括號內的參數) 常見的參數則有:
    rw
    read-write,可讀寫的權限;

    roread-only,唯讀的權限;

    sync:資料同步寫入到記憶體與硬碟當中;

    async:資料會先暫存於記憶體當中,而非直接寫入硬碟!

    no_root_squash
    登入 NFS 主機使用分享目錄的使用者,如果是 root 的話,那麼對於這個分享的目錄來說,他就具有 root 的權限! 這個項目『極不安全』,不建議使用!

    root_squash
    在登入 NFS 主機使用分享之目錄的使用者如果是 root 時,那麼這個使用者的權限將被壓縮成為匿名使用者,通常他的 UID GID 都會變成 nobody(nfsnobody) 那個系統帳號的身份;

    all_squash
    不論登入 NFS 的使用者身份為何, 他的身份都會被壓縮成為匿名使用者,通常也就是 nobody(nfsnobody) 啦!

    anonuid
    anon
    意指 anonymous (匿名者) 前面關於 *_squash 提到的匿名使用者的 UID 設定值,通常為 nobody(nfsnobody),但是您可以自行設定這個 UID 的值!當然,這個 UID 必需要存在於您的 /etc/passwd 當中!

    anongid:同 anonuid ,但是變成 group ID 就是了!

    Client 端:

    • mount Server主機:分享目錄 掛載點
    • 範例: # mount 192.168.1.12:/tmp/myshare /mnt/brad
    • 可用 df 指令進行查看
    當Client端對 NFS Server 提出服務的請求時,Client端便會先去跟Portmap這個服務溝通,要求使用NFS服務,此時
    Portmap就會開始動態地分配與NFS服務相關的 rpc.statd、rpc.lockd 及 rpc.mountd 的port number。而後,Client
    端才能開始跟這些port溝通,並建立起與NFS Server的連線。
    必須將 rpc.statd 、 rpc.lockd 及 rpc.mountd 這些服務給予特定的port number,就可利用iptables來加以限定。


    • 修改: 
      /etc/init.d/nfslock, 找到 daemon rpc.statd,而後再其後加上 -p 4000 
      /etc/modules.conf, 最後面加入一行 option lockd nlm_udpport=4001 nlm_tcpport=4001
      /etc/sysconfig 下新增一個命名為 nfs 的檔案,檔案內容為 MOUNT_PORT=4002


    • iptables 開啟 111, 4000, 4001, 4002, 2049

      autofs

      Client 端:

      • vi /etc/auto.master
      自動掛載根目錄 組態設定檔(自訂)
      範例: /mymnt /etc/auto.mymnt
      • vi /etc/auto.mymnt
      子目錄名稱 -選項 Server主機:分享資源
      範例: dir1 -rw 192.168.1.2:/tmp
      • 重新啟動 autofs: /etc/rc.d/init.d/autofs restart

    留言

    這個網誌中的熱門文章

    NMEA標準格式 -- GPS

    網路 Transformer 的用途

    cut,sed,awk 字串處理