Mount實作Linux之間資料互相共享
我們的目的通過Mount挂載共享目錄,然後通過軟連接配接的方式進行共用資料。具體環境見下:
IP:192.168.5.20
Role:nfs server
IP:192.168.5.21
Role:nfs client
IP:192.168.5.22
我們首先在192.168.5.20 --nfs server 上/DATA/目錄下建立一個目錄sharedir
mkdir sharedir
最終的目錄
1
<code>/DATA/sharedir</code>
<a href="http://s3.51cto.com/wyfs02/M00/8D/BC/wKioL1iphg_Q-Q8GAAASqeKsmX0050.png" target="_blank"></a>
2
<code>chmod</code> <code>755</code>
<code>預設是755</code>
<a href="http://s3.51cto.com/wyfs02/M02/8D/BC/wKioL1iphhCC1lX0AAAXrVLZ658007.png" target="_blank"></a>
<code>安裝nfs server</code>
<code>yum </code><code>install</code> <code>-y nfs-utils</code>
<a href="http://s3.51cto.com/wyfs02/M00/8D/BC/wKioL1iphhHydZo1AACe3XXSgoU494.png" target="_blank"></a>
<code>yum </code><code>install</code> <code>rpcbind (系統預設已經有了,可檢視下)</code>
<a href="http://s3.51cto.com/wyfs02/M02/8D/BF/wKiom1iphhLy1o9IAAAjpWMdIV8183.png" target="_blank"></a>
<code>vim </code><code>/etc/exports</code>
添加以下内容:
<code>/DATA/sharedir</code> <code>*(rw,</code><code>sync</code><code>,no_root_squash)</code>
下面是一些NFS共享的常用參數:
ro 隻讀通路
rw 讀寫通路
sync 所有資料在請求時寫入共享
async NFS在寫入資料前可以相應請求
secure NFS通過1024以下的安全TCP/IP端口發送
insecure NFS通過1024以上的端口發送
wdelay 如果多個使用者要寫入NFS目錄,則歸組寫入(預設)
no_wdelay 如果多個使用者要寫入NFS目錄,則立即寫入,當使用async時,無需此設定。
hide 在NFS共享目錄中不共享其子目錄
no_hide 共享NFS目錄的子目錄
subtree_check 如果共享/usr/bin之類的子目錄時,強制NFS檢查父目錄的權限(預設)
no_subtree_check 和上面相對,不檢查父目錄權限
all_squash 共享檔案的UID和GID映射匿名使用者anonymous,适合公用目錄。
no_all_squash 保留共享檔案的UID和GID(預設)
root_squash root使用者的所有請求映射成如anonymous使用者一樣的權限(預設)
no_root_squash root使用者具有根目錄的完全管理通路權限
anonuid=xxx 指定NFS伺服器/etc/passwd檔案中匿名使用者的UID
anongid=xxx 指定NFS伺服器/etc/passwd檔案中匿名使用者的GID
<a href="http://s3.51cto.com/wyfs02/M02/8D/BC/wKioL1iphhKCNWw1AAANM9AafkM161.png" target="_blank"></a>
生效 exportfs -r
exportfs -r
儲存退出後
3
4
<code>systemctl start rpcbind</code>
<code>systemctl </code><code>enable</code> <code>rpcbind</code>
<code>systemctl start nfs</code>
<code>systemctl </code><code>enable</code> <code>nfs</code>
<a href="http://s3.51cto.com/wyfs02/M00/8D/BF/wKiom1iphhOCRI9sAAAmjWrpF84614.png" target="_blank"></a>
然後我們檢視端口監聽狀态
<code>netstat</code> <code>-lt</code>
<a href="http://s3.51cto.com/wyfs02/M02/8D/BF/wKiom1iphhSiLDWcAABChE8S1yc984.png" target="_blank"></a>
然後在需要nfs用戶端的伺服器上執行以下指令:
192.168.5.21
192.168.5.22
我們需要首先要建立一個挂載目錄
<a href="http://s3.51cto.com/wyfs02/M02/8D/BC/wKioL1iphhXDAU72AAAVCbj4ghI116.png" target="_blank"></a>
然後安裝nfs-utils
yum install -y nfs-utils
<a href="http://s3.51cto.com/wyfs02/M00/8D/BC/wKioL1iphhagP9C0AAA07IykCJk453.png" target="_blank"></a>
注意:用戶端不需要啟動nfs服務
然後啟動rpcbind服務
<a href="http://s3.51cto.com/wyfs02/M01/8D/BD/wKioL1iphheBcWLhAAAVe7uZWrc469.png" target="_blank"></a>
檢視測試共享目錄:
檢視已共享的目錄,指令:
<code>本機:showmount -e</code>
<code>其他:showmount -e IP</code>
<code>showmount -e nfsserver</code>
<code>showmount -e 192.168.5.20</code>
<a href="http://s3.51cto.com/wyfs02/M01/8D/BD/wKioL1iphhjDIAQEAAAOUy4I8x8632.png" target="_blank"></a>
<code>mount</code> <code>-t nfs 192.168.5.20:</code><code>/DATA/sharedir</code> <code>/DATA/sharedir</code>
<a href="http://s3.51cto.com/wyfs02/M00/8D/BF/wKiom1iphhjhNnw9AAANzjhb9BI546.png" target="_blank"></a>
然後我們通過df -h進行檢視
<a href="http://s3.51cto.com/wyfs02/M00/8D/BD/wKioL1iphhngLUcDAAA52eDBJwc158.png" target="_blank"></a>
最後我們為了保證能夠啟動啟動挂載
<code>vim </code><code>/etc/fstab</code>
<code>192.168.5.20:</code><code>/DATA/sharedir</code> <code>/DATA/sharedir</code> <code>nfs defaults 0 0</code>
<a href="http://s3.51cto.com/wyfs02/M00/8D/BF/wKiom1iphhqybhzcAABGG8Cpw8I171.png" target="_blank"></a>
最後我們做一下測試,我們建立測試檔案
我們在nfs用戶端上從建立檔案
<a href="http://s3.51cto.com/wyfs02/M01/8D/BF/wKiom1iphhuR-FO8AACUpfjIPlQ734.png" target="_blank"></a>
接着我們在nfs伺服器上進行檢視
<a href="http://s3.51cto.com/wyfs02/M01/8D/BD/wKioL1iphh3SH_1bAABn3uIiOD0906.png" target="_blank"></a>
最後做一下軟連接配接
我們同樣在/DATA目錄下建立一個目錄,然後命名為fileslink
我們需要将該檔案夾連接配接到sharedir目錄下
我們同樣也需要在共享目錄中建立一個同名的檔案夾
最後我們做一下軟連接配接
ln -s 源檔案 目标檔案,在目标檔案下建立虛拟連結(快捷鍵)
/OAFS/mount/3 是真實存在的資料----共享磁盤資料
/OAFS/software/1/2/ 下沒有資料3,我們通過軟連結,将共享磁盤中的3,連接配接到2目錄下
<code>ln</code> <code>-s </code><code>/OAFS/mount/3</code> <code>/OAFS/software/1/2/3</code>
進入2後,看見的3目錄是從共享磁盤的資料
<a href="http://s3.51cto.com/wyfs02/M02/8D/BF/wKiom1iphh6SAMekAAAeZMRZGW4904.png" target="_blank"></a>
本文轉自 高文龍 51CTO部落格,原文連結:http://blog.51cto.com/gaowenlong/1899284,如需轉載請自行聯系原作者