NFS部署和優化

系統環境:CentOS release 6.5 (Final)web

1、啥是NFS

    NFS是Network File System即網絡文件系統。一種使用於分散式文件系統的協定,由Sun公司開發,於1984年向外公佈。功能是經過網絡讓不一樣的機器、不一樣的操做系統可以彼此分享個別的數據,讓應用程序在客戶端經過網絡訪問位於服務器磁盤中的數據,是在類Unix系統間實現磁盤文件共享的一種方法。服務器

2、安裝NFS服務(Server端)

服務端ip地址:192.168.1.201網絡

監聽端口號:2049/tcp,2049/udp 異步

# yum -y install nfs-utils rpcbindasync

在CentOS5.x叫portmaptcp

編輯/etc/exports文件加入以下內容:ui

/web 192.168.1.1/24(rw,sync)spa

exports文件說明:操作系統

文件系統 客戶端1(文件系統導出屬性) 客戶端2(文件系統導出屬性)進程

  • 客戶端指定方式:

    IP:192.168.1.202

    Hostname:*.fansik.com

    Network:192.168.1.0/24

  • 文件系統屬性  

    rw:讀寫 

    async:異步
    sync:同步
    root_squash:壓縮root用戶,基於imapd,將root經過網絡訪問時轉換爲nfsnobody用戶
    no_root_squash:不壓縮用戶
    all_squash:壓縮全部用戶
    anonuid,anongid:指定

啓動rpcbind服務:

# /etc/init.d/rpcbind start

啓動nfs服務:

# /etc/init.d/nfs start

啓動後三個關鍵進程:

mountd:掛載守護進程,負責客戶端來源認證的進程

nfsd:文件讀寫

idmapd:id映射進程

使用下面的命令能夠查看各進程監聽的端口號

# rpcinfo -p localhost

因爲mountd的監聽端口號是隨機的可能會佔用其餘服務的端口號,因此要使nfs的輔助進程mountd監聽在固定的端口上,能夠經過/etc/sysconfig/nfs文件進行配置。

3、掛在NFS目錄(Client端)

客戶端IP地址:10.10.10.101

# yum -y install nfs-utils

查看Server端共享哪一個目錄,容許那個ip訪問

# showmount -e 192.168.1.201

-e:在nfs客戶端執行,探查某主機所導出的nfs文件系統,使用格式"showmount -e Server_IP";

-d:在nfs服務器端執行,顯示哪一個導出的文件系統已經被至少一個客戶掛載使用了;

-a:在nfs服務器端顯示全部掛載會話。

建立掛載目錄

# mkdir /web

掛載Server端web目錄到本地

# mount -t nfs 192.168.1.201:/web /web

在掛載目錄建立文件時因爲操做web目錄的是nfsnobody因此要把其餘人的寫權限打開。

4、NFS指定被關在目錄寫入文件的用戶

編輯Server端的/etc/exports文件

/web 192.168.1.1/24(rw,sync,all_squash,anonuid=502,anongid=502)

重啓nfs的服務或者# exportfs -arv

不去限制root的寫法以下:

/web 192.168.1.1/24(rw,sync,no_root_squash)

去Client端從新掛載目錄

若是使用# mount -t nfs 192.168.1.201:/web /web命令在touch文件的時候很慢,咱們可使用下面的命令指定nfs版本從新掛載一次就好啦:

# mount -t nfs -onolock,nfsvers=3 192.168.1.201:/web /web

是用此種方法後指定的用戶id和組id使用的都是本地的id:例如Server端的組和用戶id是fansik那麼在Server端顯示所屬組和全部者就是fansik,可是若是Client的組和用戶id是fanjinbao,那麼Client端的文件的所屬組和全部者就是fanjinbao

5、exportfs從新導出文件系統

在不重啓nfs服務的狀況下導出文件系統屬性

選項:

-a:操做全部文件系統

-ra:從新導出全部文件系統

-ua:取消導出的全部文件系統

-v:顯示詳細信息

相關文章
相關標籤/搜索