一、題目要求
1、開放 /nfs/shared 目錄,供所有用戶查詢資料
2、開放 /nfs/upload 目錄,為 192.168.xxx.0/24 網段主機可以上傳目錄,并將所有用戶及所屬的組映射為 nfs-upload,其 UID 和 GID 均為 210
3.將 /home/tom 目錄僅共享給 192.168.xxx.xxx 這臺主機,并只有用戶 tom 對該目錄有讀寫權限
二、實驗
前情提要:
① 需要準備兩臺版本一致的?linux?主機且網絡可互通,這里我的服務端為 192.168.96.142,客戶端為 192.168.96.132
② 關閉服務端防火墻以及 selinux
[root@server ~]# systemctl stop firewalld[root@server ~]# setenforce 0
③ 磁盤掛載操作
[root@server ~]# mount /dev/sr0 /mnt
mount: /mnt: WARNING: source write-protected, mounted read-only.
④ 配置 yum 源文件
[root@server ~]# vim /etc/yum.repos.d/base.repo[BaseOS]
name=BaseOS
baseurl=file:///mnt/BaseOS
gpgcheck=0
[AppStream]
name=AppStream
baseurl=file:///mnt/AppStream
gpgcheck=0
1.開放 /nfs/shared 目錄,供所有用戶查詢資料
① 安裝 nfs-utils?共享文件系統并啟動程序
[root@server ~]# dnf install nfs-utils -y[root@server ~]# systemctl start nfs-server.service
?②? 編輯 nfs 主配置文件
[root@server ~]# vim /etc/exports# 共享目錄(根目錄) 允許訪問的主機*(權限,參數)
/nfs/shared *(ro)
③?根據配置文件創建資源文件并查看文件權限,確保所有用戶可讀?/nfs/shared?路徑下文件即可
[root@server ~]# mkdir -pv /nfs/shared
mkdir: 已創建目錄 '/nfs'
mkdir: 已創建目錄 '/nfs/shared'[root@server ~]# touch /nfs/shared/test{1..10}[root@server ~]# ll -d /nfs/shared/
drwxr-xr-x. 2 root root 137 5月 19 20:01 /nfs/shared/
④?由于上面我們修改了 nfs 的配置文件,想要文件生效我們要重啟 nfs-server 服務,但在這里我們不能直接用 systemctl ?restart ?nfs-server 來重啟服務,這樣我們每重啟一次服務就會重新進行端口注冊,推薦用 exportfs ?-ra 來實現。刷新后未出現報錯說明我們的配置沒有問題!
[root@server ~]# exportfs -ra # 重新導出(re-export)并刷新所有 NFS 共享目錄,結合了 -r(重新讀取配置)和 -a(應用到所有目錄)的功能
⑤ 客戶端主機向服務端主機建立 nfs 連接
Ⅰ.想要建立連接我們的客戶端也需要下載 nfs-utils 服務程序
[root@client ~]# mount /dev/sr0 /mnt[root@client ~]# dnf install nfs-utils -y
Ⅱ.客戶端查詢 nfs 服務器(IP 為 192.168.96.142)導出的共享目錄列表
[root@client ~]# showmount -e 192.168.96.142Export list for 192.168.96.142:
/nfs/shared *
Ⅲ.創建一個掛載目錄 /dbw,在將?/nfs/shared 文件系統掛載到 /dbw 目錄(可共享文件路徑)
[root@client ~]# mkdir /dbw[root@client ~]# mount 192.168.96.142:/nfs/shared /dbw
Ⅳ.查看 /nfs/shared 路徑,可以看到服務端所共享的文件
[root@client ~]# ll /dbw
2.開放 /nfs/upload 目錄,為 192.168.xxx.0/24 網段主機可以上傳目錄,并將所有用戶及所屬的組映射為 nfs-upload,其 UID 和 GID 均為 210
① 編輯 nfs 配置文件
[root@server ~]# vim /etc/exports
# 共享目錄(根目錄) 允許訪問的主機*(權限,參數)
/nfs/shared *(ro)/nfs/upload 192.168.96.0/24(rw,all_squash,anonuid=210,anongid=210)
②?根據配置文件創建資源文件并查看文件權限,確保用戶可讀可寫?/nfs/shared?路徑下文件即可;刷新
[root@server ~]# mkdir -pv /nfs/upload
mkdir: 已創建目錄 '/nfs/upload'[root@server ~]# touch /nfs/upload/red{1..10}[root@server ~]# ll -d /nfs/upload/
drwxr-xr-x. 2 root root 127 5月 19 20:26 /nfs/upload/[root@server ~]# chmod o+w /nfs/upload/ -R # 修改其他用戶權限,加上可寫權限[root@server ~]# exportfs -ra
③ 根據配置文件中所寫,需要創建一個 uid 為 210 且 gid 也為 210 的用戶賬號
[root@client ~]# useradd -r -u 210 nfs-upload[root@client ~]# id nfs-upload
用戶id=210(nfs-upload) 組id=210(nfs-upload) 組=210(nfs-upload)
④?客戶端查詢 NFS 服務器導出的共享目錄列表
[root@server ~]# showmount -e 192.168.96.142Export list for 192.168.96.142:
/nfs/shared *
/nfs/upload 192.168.96.0/24
⑤ 將 /nfs/upload 文件掛載到 /dbw 目錄并查看共享目錄下是否有服務端共享的文件,掛載之前我們先要取消前面掛載到 /dbw 目錄下的 /nfs/shared 文件共享目錄
[root@client ~]# umount 192.168.96.142:/nfs/shared /dbw
umount: /dbw: not mounted.[root@client ~]# ll /dbw
total 0[root@client ~]# mount 192.168.96.142:/nfs/upload /dbw[root@client ~]# ll /dbw
⑥ 在客戶端下上傳文件并查看
[root@client ~]# touch /dbw/red111[root@client ~]# ll /dbw
3.將 /home/tom 目錄僅共享給 192.168.xxx.xxx 這臺主機,并只有用戶 tom 對該目錄有讀寫權限
① 編輯 nfs 配置文件
[root@server ~]# vim /etc/exports# 共享目錄(根目錄) 允許訪問的主機*(權限,參數)
/nfs/shared *(ro)/nfs/upload 192.168.96.0/24(rw,all_squash,anonuid=210,anongid=210)/home/tom 192.168.96.132(rw,root_squash,all_squash,anonuid=1001,anongid=1001)
②?根據配置文件創建資源文件并查看文件權限,確保 tom 可讀可寫?/home/tom 路徑下文件即可;刷新
[root@server ~]# mkdir -pv /home/tom
mkdir: 已創建目錄 '/home/tom'[root@server ~]# touch /home/tom/tom{1..10}[root@server ~]# ll -d /home/tom
drwxr-xr-x. 2 root root 127 5月 19 22:00 /home/tom[root@server ~]# useradd tom[root@server ~]# chown tom:tom /home/tom # 改變文件所有者
[root@server ~]# chmod 700 /home/tom # 改變文件權限僅 tom 用戶有讀寫執行權限[root@server ~]# exportfs -ra
③?根據配置文件中所寫,創建 tom ,id為 1001
[root@client ~]# useradd -u 1001 tom[root@client ~]# id tom
uid=1001(tom) gid=1001(tom) groups=1001(tom)
④?將 /home/tom 文件掛載到 /dbw 目錄并查看共享目錄下是否有服務端共享的文件,掛載之前我們先要取消前面掛載到 /dbw 目錄下的 /nfs/upload 文件共享目錄
[root@client ~]# umount 192.168.96.142:/nfs/upload /dbw
umount: /dbw: not mounted.[root@client ~]# ll /dbw
total 0[root@client ~]# mount 192.168.96.142:/home/tom /dbw[root@client ~]# ll /dbw
⑤ 客戶端上創建文件查看權限以及所有者
[root@client ~]# touch /dbw/tom111[root@client ~]# ll /dbw