【人在運維囧途_11】GNU/Linux NFS 伺服器部署時許可權設定的注意事項
在部署過程中、檔案的讀寫許可權是比教容易出錯
本博文按以下 6 個方面展開、但重點放在檔案許可權上、
● 原理
● /etc/exports
● 檔案許可權
● Server/Client 配置
● 2 個常用命令
● Troubleshoting
● 經驗建議
㈠ 原理
所謂一圖勝千言、有圖有真相
Rocky 便隨大流啦、放 2 張圖片
值得注意的是、啟動 NFS 之前、portmap 要先啟動
㈡ /etc/exports
NFS 的部署其實很簡單、分 3 步走戰略:配置/etc/exports → 啟動 portmap → 啟動 NFS
那麼、萬里長征第一步:配置 /etc/exports
這個配置檔案很簡單、每一行最前面是要共享出來的目錄
然後、是這個目錄可以依照不同的許可權共享給不同的主機
比如:
/tmp/rokcy 192.168.1.0/24(ro) *.fjnu.edu.com(rw,sync)
格式說明:小括號()是設定許可權引數的位置、主機名與小括號是連在一起
主機名的設定主要有幾個方式:
● 可以使用完整的 IP 或者 網段、例如:192.168.1.110 或 192.168.1.0/24
● 可以使用主機名稱、不過這個名稱要在/etc/hosts 或 DNS 裡能找到、對於主機名支援萬用字元的使用、如* 或 ?
許可權方面的常見引數有:
rw :讀寫;
ro :只讀;
sync :同步模式,記憶體中資料時時寫入磁碟;
async :不同步,把記憶體中資料定期寫入磁碟中;
no_root_squash :加上這個選項後,root使用者就會對共享的目錄擁有至高的許可權控制,就像是對本機的目錄操作一樣。不安全,不建議使用;
root_squash :和上面的選項對應,root使用者對共享目錄的許可權不高,只有普通使用者的許可權,即限制了root;
all_squash :不管使用NFS的使用者是誰,他的身份都會被限定成為一個指定的普通使用者身份;
anonuid/anongid :要和root_squash 以及 all_squash一同使用,用於指定使用NFS的使用者限定後的uid和gid,前提是本機的/etc/passwd中存在這個uid和gid
㈢ 檔案許可權
對於一個檔案的寫入許可權、需要滿足:
(1)使用者賬號,亦即 UID 的相關身份
(2)NFS 伺服器允許有寫入的許可權
(3)檔案系統確實具有 w 的許可權
㈣ 2 個命令
① 在Client端使用:
showmount -e IP或主機名
檢視可掛載的目錄
② 在Server端使用:
重新配置/etc/exports後可用:
exportfs -avr
㈤ Troubleshoting
① 使用者或客戶端身份許可權不符
[root@linux ~]# mount -t nfs localhost:/home/test /home/nfs mount: localhost:/home/test failed, reason given by server: Permission denied
解決方案:
如果確定您的 IP 沒有錯誤,那麼請通知伺服器端, 請管理員將你的 IP 加入 /etc/exports
② 伺服器或客戶端某些服務未啟動:
[root@linux ~]# mount -t nfs localhost:/home/test /home/nfs mount: RPC: Port mapper failure - RPC: Unable to receive [root@linux ~]# mount -t nfs localhost:/home/test /home/nfs mount: RPC: Program not registered
解決方案:
要嘛就是 portmap 忘記開,要嘛就是伺服器端的 nfs 忘記開!解決的方法就是去啟動這兩個咚咚啦!
③ 被防火牆檔掉了:
這個也很容易忘記了!那就是重新設定一下您的防火牆,這包含了兩部份,包括 iptables 與 TCP_Wrappers !
因為我們啟動了 portmap ,這個東西有兩個資料需要分享出來,一個是 port 111 需要提供出去,
因此您的 iptables 規則當中,需要開放這個 port 喔
㈥ 經驗建議
如果 NFS 在高速環境下執行的話、建議加上:
mount -t nfs -o nosuid,noexec,nodev,rw,bg,soft,rsize=32768,wsize=32768
相關文章
- Linux NFS典型例項及許可權詳解LinuxNFS
- DEDECMS在linux伺服器&許可權設定Linux伺服器
- SVN伺服器的許可權設定伺服器
- 【Dataguard】DataGuard運維注意事項運維
- AIX配置NFS注意事項AINFS
- linux as4下NFS配置注意事項LinuxNFS
- GNU make安裝注意事項(轉)
- 資料所有權設定中需要注意的事項
- 【系統運維】--linux伺服器上傳測試程式碼注意事項運維Linux伺服器
- 如何設定許可權?
- 選單許可權和按鈕許可權設定
- ubuntu 許可權管理設定Ubuntu
- Atitit godaddy 檔案許可權 root許可權設定Go
- audit物件許可權時的not exists選項!物件
- Linux運維人員共用root帳戶許可權審計(轉至馬哥Linux運維)Linux運維
- 企業部署CRM系統時的注意事項?
- MySQL 日常運維業務賬號許可權的控制MySql運維
- JavaScript 設定CSS與注意事項JavaScriptCSS
- SQL Server Profiler 設定注意事項SQLServer
- 伺服器日常維護需注意哪些事項?伺服器
- 小程式許可權設定(位置)
- Windows許可權設定詳解Windows
- PHP專案許可權設定PHP
- linux中安全和許可權那些事Linux
- Linux 筆記分享八:檔案許可權的設定Linux筆記
- Linux使用:檔案或目錄的許可權設定Linux
- 解讀Linux檔案許可權的設定方法(轉)Linux
- 部署專案注意事項
- 部署nginx php注意事項NginxPHP
- 《前端運維》一、Linux基礎--02使用者與許可權前端運維Linux
- 許可權維持專題:作業系統許可權維持作業系統
- linux下配置ftp伺服器並設定虛擬賬號的不同許可權LinuxFTP伺服器
- Linux目錄許可權屬性有哪些?linux運維學習技能Linux運維
- NAS使用者許可權的設定
- [Linux]學習⑥④---ACL許可權檢視與設定Linux
- 運維注意事項及案例講解(個人心得)運維
- Windows許可權維持Windows
- Linux-許可權管理(ACL許可權)Linux