1、簡介:
NFS(Network File System)即網絡文件系統,是FreeBSD支持的文件系統中的一種,它允許網絡中的計算機之間通過TCP/IP網絡共享資源。在NFS的應用中,本地NFS的客戶端應用可以透明地讀寫位於遠端NFS服務器上的文件,就像訪問本地文件一樣。
2、實驗環境:
系統平台:
centos6-5
NFS服務器:192.168.1.63
3、NFS服務器的安裝:
[root@tiandong63 ~]# yum install nfs* rpcbind* -y 安裝nfs
[root@tiandong63 ~]# rpm -qa|grep nfs 查看安裝了那些包
nfs-utils-lib-1.1.5-13.el6.x86_64
nfs4-acl-tools-0.3.3-8.el6.x86_64
nfs-utils-1.2.3-75.el6.x86_64
nfs-utils-lib-devel-1.1.5-13.el6.x86_64
安裝完成之后啟動服務:
nfs服務啟動以后查看端口是否開啟:
/etc/exports文件里面是寫要共享的文件:
現在我們來共享一個目錄:
重啟nfs服務。
在掛載之前我們首先在客戶機上查看是否共享出去
在客戶端上創建一個掛載目錄進行掛載:
[root@tiandong64 ~]# mount.nfs 192.168.1.63:/root/thunder/ /mnt/ 掛載失敗了
mount.nfs: access denied by server while mounting 192.168.1.63:/root/thunder/
[root@tiandong63 ~]# chmod 755 /root/ 修改權限為755
接下來講一下開機自動掛載:
先卸載了手動掛載的文件。
此時就實現了開機自動掛載了。
驗證讀寫權限:
沒有寫入的權限
解決辦法:
第一種:
修改客戶端的目錄權限,此時在驗證
此時就可以寫入了,但是此時使用root用戶寫入的但是屬主和屬組是nfsnobody,(這個問題后面解決)
第二種:
改變共享目錄的屬主和屬組:
再來寫入(我們是用root用戶寫入的但是屬主和屬組確實nfsnobody):
當我們在客戶端上寫文件的時候,雖然是以root用戶寫入的,但是文件的屬主和屬組是nfsnobody,這個是因為寫入的時候默認是壓制root權限的。
在共享文件的時候有不同的參數可以解決這個問題
參數:
sync 數據同步寫入硬盤。
async 不同步寫在硬盤中,在內存中緩存
no_root_squash 不壓制root權限,用root登錄nfs,身份就是root
root_squash 壓制root權限 ,使用root登錄nfs,身份自動切換為nfsnobody
修改配置文件:/etc/exports
重啟服務。
進行測試。
有什么問題一塊探討啊。
博主QQ:1127000483