1. 程式人生 > >Linux下配置nfs並遠端掛載

Linux下配置nfs並遠端掛載

nfs是網路檔案系統,允許一個節點通過網路訪問遠端計算機的檔案系統,遠端檔案系統可以被直接掛載到本地,檔案操作和本地沒有區別,如果是區域網的nfs那麼io的效能也可以保證,下面就以CentOS 7.x為例,配置NFS

首先是服務端配置,服務端提供檔案系統供客戶端來掛載使用,配置過程如下:

首先檢查是否缺少基礎環境:

rpm -qa | grep nfs-utils
rpm -qa | grep rpcbind

如果這兩個包存在那麼可以直接使用,一般伺服器安裝的時候都會存在,如果沒有的話執行下面命令安裝:

yum -y install nfs-utils
yum -y install rpcbind

安裝完成之後配置nfs訪問目錄,配置檔案位置/etc/exports,預設是空的這裡新增一行:

/nfs_test 192.168.1.8(rw,no_root_squash,no_all_squash,async)

這個配置表示開放本地儲存目錄/nfs_test 只允許192.168.1.8這個主機有訪問許可權,rw表示允許讀寫;no_root_squash表示root使用者具有完全的管理許可權;no_all_squash表示保留共享檔案的UID和GID,此項是預設不寫也可以;async表示資料可以先暫時在記憶體中,不是直接寫入磁碟,可以提高效能,另外也可以配置sync表示資料直接同步到磁碟;就配置這些就可以,儲存退出

如果想讓另外一臺主機也可以掛載這個目錄,那麼直接在後面追加即可,比如:

/nfs_test 192.168.1.8(rw,no_root_squash,no_all_squash,async) 192.168.1.9(rw,no_root_squash,no_all_squash,async) 

多個目錄可以每行配置一個,如果想讓這個網段的主機都可以訪問,假如此時子網掩碼是255.255.255.0,閘道器是192.168.1.0,那麼ip那裡可以寫成192.168.1.0/24表示允許地址段的所有主機訪問

現在配置完這些配置,啟動相關服務:

systemctl start rpcbind.service
systemctl start nfs.service

啟動之後可以通過status來檢視狀態,如果下次修改了配置,可以重啟服務來使配置生效,也可以直接執行如下命令重新整理配置:

exportfs -a

重新整理配置即可生效

現在服務端配置完畢,可以在對應的主機上來配置客戶端了,需要的環境和服務端一樣,要保證安裝nfs-utils和rpcbind

保證環境沒問題和上面一樣啟動rpcbind服務和nfs服務

首先建立掛載點: mkdir /mnt/test1

然後掛載nfs: mount -t nfs 192.168.1.3:/nfs_test /mnt/test1

掛載成功之後通過 df -h 可以檢視掛載的情況,nfs可用空間就是服務端/nfs_test目錄所能使用的最大空間

現在就可以往nfs寫入資料了,服務端往/nfs_test讀寫資料和客戶端往/mnt/test1讀寫資料是一樣的,這樣就實現了檔案同步和共享

解除安裝nfs和普通檔案系統一樣,使用: umount /mnt/test1

如果需要設定開機掛載,在/etc/fstab新增一行配置即可: 192.168.1.3:/nfs_test /mnt/test1 nfs rw,tcp,intr 0 1 然後服務端和客戶端都要用enable設定nfs和rpcbind服務開機啟動,然後才可以正常掛載

內容轉自https://www.cnblogs.com/freeweb/p/6593861.html