Ubuntu 20.04 中配置NFS服務
NFS是Network File System的首字母縮寫。它是一種分散式協議,使客戶端可以訪問遠端伺服器上的共享檔案。在本文中,將在Ubuntu 20.04 LTS中安裝NFS服務。然後,演示如何從客戶端系統訪問伺服器上的檔案。 |
系統環境
NFS服務端:Ubuntu 20.04 LTS ,IP地址:192.168.43.174
NFS客戶端:Centos8 ,IP地址:192.168.43.131
一、安裝NFS服務端
執行下面命令安裝NFS服務端:
bob@ubuntu-20-04:~$ sudo apt install nfs-kernel-server
使用下面命令檢查nfs-server是否已經啟動:
bob@ubuntu-20-04:~$ sudo systemctl status nfs-server ● nfs-server.service - NFS server and services Loaded: loaded (/lib/systemd/system/nfs-server.service; enabled; vendor preset: enabled) Active: active (exited) since Wed 2021-04-21 10:20:29 CST; 1min 30s ago Main PID: 41727 (code=exited, status=0/SUCCESS) Tasks: 0 (limit: 2278) Memory: 0B CGroup: /system.slice/nfs-server.service 4月 21 10:20:28 ubuntu-20-04 systemd[1]: Starting NFS server and services... 4月 21 10:20:29 ubuntu-20-04 systemd[1]: Finished NFS server and services.
二、建立NFS共享目錄
下一步將建立一個NFS共享目錄。我們將在/mnt
目錄中建立,在這裡,我們的NFS共享目錄稱為ShareFolder:
bob@ubuntu-20-04:~$ sudo mkdir -p /mnt/ShareFolder
我們希望所有客戶端都可以訪問該共享資料夾裡面的內容,因此分配最高許可權:
bob@ubuntu-20-04:~$ sudo chown nobody:nogroup /mnt/ShareFolder bob@ubuntu-20-04:~$ sudo chmod -R 777 /mnt/ShareFolder/
三、編輯exports配置檔案
通過編輯/etc/exports
配置檔案,來允許哪些客戶端可以訪問該共享。
下面命令開啟該配置檔案:
bob@ubuntu-20-04:~$ sudo vim /etc/exports
下面的條目表示允許單個客戶端訪問、多個客戶端訪問、允許一個網段的客戶端訪問:
# 如果只允許一個客戶端訪問,可以只寫一個客戶端的IP地址 /mnt/ShareFolder 192.168.43.131(rw,sync,no_subtree_check) # 如果只允許多個客戶端訪問,可以向如下一樣寫 /mnt/ShareFolder 192.168.43.131(rw,sync,no_subtree_check) /mnt/ShareFolder 192.168.43.171(rw,sync,no_subtree_check) /mnt/ShareFolder 192.168.43.137(rw,sync,no_subtree_check) # 如果執行一個網段的客戶端訪問,可以這樣寫: /mnt/ShareFolder 192.168.43.*(rw,sync,no_subtree_check) 或者 /mnt/ShareFolder 192.168.43.0/24(rw,sync,no_subtree_check)
配置檔案中的許可權解釋:
- rw 允許讀寫
- sync 檔案同時寫入硬碟和記憶體
- no_subtree_check 即使輸出目錄是一個子目錄,nfs伺服器也不檢查其父目錄的許可權,這樣可以提高效率
四、export共享目錄
使用下面命令將共享資料夾啟用並生效:
bob@ubuntu-20-04:~$ sudo exportfs -arv exporting 192.168.43.*:/mnt/ShareFolder
使用showmount -e
檢視是否可以看到共享目錄:
bob@ubuntu-20-04:~$ showmount -e 192.168.43.174 Export list for 192.168.43.174: /mnt/ShareFolder 192.168.43.*
五、配置客戶端
安裝NFS客戶端:
# 在Ubuntu20.04中安裝客戶端:nfs-common bob@ubuntu-20-04:~$ sudo apt install nfs-common # 在Centos8中安裝客戶端:nfs-utils [root@localhost ~]# yum -y install nfs-utils
然後在/mnt目錄中建立一個ClientFolder
目錄,將從該目錄中掛載伺服器上的NFS共享目錄。
[root@localhost ~]# mkdir -p /mnt/ClientFolder
最後,掛載NFS共享目錄,如下所示:
[root@localhost ~]# mount 192.168.43.174:/mnt/ShareFolder /mnt/ClientFolder/
六、測試NFS共享目錄
為了測試配置是否正常,我們將在客戶端/mnt/ClientFolder
資料夾中建立檔案測試一下,如下所示:
[root@localhost ClientFolder]# dd if=/dev/zero of=./test.dd bs=1M count=10 10+0 records in 10+0 records out 10485760 bytes (10 MB, 10 MiB) copied, 0.0540562 s, 194 MB/s [root@localhost ClientFolder]# ll total 10240 -rw-r--r-- 1 nobody nobody 10485760 Apr 21 2021 test.dd
返回服務端,看一下/mnt/ShareFolder
目錄中是否可以看到該檔案:
bob@ubuntu-20-04:~$ ll /mnt/ShareFolder/ total 10248 drwxrwxrwx 2 nobody nogroup 4096 4月 21 10:50 ./ drwxr-xr-x 4 root root 4096 4月 21 10:24 ../ -rw-r--r-- 1 nobody nogroup 10485760 4月 21 10:50 test.dd
總結
NFS是Network File System的首字母縮寫。它是一種分散式協議,使客戶端可以訪問遠端伺服器上的共享檔案。
「其他文章」
- 容器雲架構–瞭解 Kubernetes 網路模型
- IPv6的發展已步入新階段
- docker中安裝mycat
- spring boot 不連線資料庫啟動
- ECharts 餅圖繪製教程
- 刪除字串中的所有相鄰重複項
- 超全面的Linux基礎知識的梳理
- Mysql使用儲存過程快速新增百萬資料
- 帶你玩玩轉 MySQL 查詢
- SQL中Merge的用法
- 在docker中haproxy的安裝以及mysql的負載均衡配置
- Centos8中如何更改資料夾中多個檔案的副檔名
- 如何在 Windows 中檢查計算機正常執行時間
- ECharts 互動元件概述
- 如何在 Linux 中以指令碼模式執行 Top
- ECharts 樣式設定介紹
- Python中非常有用的三個資料科學庫
- 六個方法助您優化雲端儲存成本
- ssl證書無效的原因是什麼?
- 只要有心,學好Linux並非難事