nfs掛載權限問題


問題:

  服務器A:192.168.10.230

  服務器B:192.168.10.231

  由於服務器A空間不足,打算將服務器A產生的數據庫日志掛載到服務器B上,剛開始設定的anonuid和anongid,均為A服務器postgres賬戶的id值,因為考慮的是在服務器A中以postgres用戶來歸檔日志,但由於A、B兩台服務器中的postgres用戶的id值不同,掛載之后目錄用戶和所有者均為nobody,嘗試創建文件,但提示權限不足。

 

解決:

  剛開始是直接查詢的網上資料,修改的anonuid和anongid,后面查閱了關於exports的幫助文檔,發現anonuid和anongid需要設定為B本機的id值,至此A服務器產生的數據庫日志終於可以寫入B服務器上。

  在服務器B中的/etc/exports中掛載的權限設置為:

rw,sync,all_squash,anonuid=502,anongid=502

  其中502是服務器B中postgres用戶的id值。

 

下面是幾個nfs常用權限設置的簡單說明,方便自己和大家查閱:

root_squash:在登入 NFS 主機使用分享之目錄的使用者如果是 root 時,那么這個使用者的權限將被壓縮成為匿名使用者,通常他的 UID 與 GID 都會變成 nobody 那個系統賬號的身份。
no_root_squash:登入 NFS 主機使用分享目錄的使用者,如果是 root 的話,那么對於這個分享的目錄來說,他就具有 root 的權限!這個項目『極不安全』,不建議使用!
all_squash:
登入 NFS 主機使用分享目錄的使用者,所有用戶均被壓縮成為匿名使用者,即已nobody用戶的身份登錄。
anonuid和anongid:明確指定匿名使用者使用指定的id值用戶的權限,訪問分享的目錄。
secure:限制客戶端只能從小於1024的tcp/ip端口連接nfs服務器(默認設置)。
insecure:允許客戶端從大於1024的tcp/ip端口連接服務器。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM