首頁 運維 linux運維 linux NFS是什麼及怎麼用

linux NFS是什麼及怎麼用

May 12, 2023 pm 04:13 PM
linux nfs

nfs,是network file system的簡寫,即網路檔案系統。網路檔案系統是freebsd支援的檔案系統中的一種,也被稱為nfs. nfs允許一個系統在網路上與他人共用目錄和檔案。透過使用nfs,使用者和程式可以像存取本機檔案一樣存取遠端系統上的檔案。

nfs基於rpc協議,nfs本身只是起到共享的作用而和客戶端進行連接和資料傳輸則是rpc協議的功能

nfs主要透過兩個daemon 來進行控制:
1.rpc.nfsd  ------- 它用來控制客戶端是否可以連接到,nfs server
2.rpc.mountd----它用來控制客戶端連接後是否有權限對檔案進行操作,主要是依據/etc/exports檔案的設定

啟用nfs需要啟用portmap 和nfs-utils
1.portmap主要用來控制客戶端連線時請求的埠
2.nfs-utils 是rpc.nfsd、rpc.mountd 的執行文件

/etc/exports                                 nfs服務的管理指令
/usr/sbin/showmount                    客戶端的檢視指令
/var/lib/nfs/xtab   #/etc/exports檔案設定格式
【分享的目錄】 ip或主機(參數1.參數2​​) ip或主機(參數3,參數4)

參數主要有以下幾個

rw:讀寫
ro:只讀
no_root_squash:客戶端登陸者如果為root,則登入共用目錄後具有root權限
root_squash:root登入後身分被壓縮為nfsnobody(預設)
all_squash:所有使用者登入後身分被壓縮為nfsnobody(預設下)
anonuid:如不想讓使用者登入後被壓縮為nfsnobody使用者可以更改此項目
anongid:同上(這個是群組)
sync:資料同步寫入硬碟
async:資料先儲存到記憶體


關於權限的分析

1.客戶端連線時候,對一般使用者的檢查,no.1如果明確設定了一般使用者被壓縮的身份,那麼此時客戶端用戶的身份轉換為指定用戶,no.2如果nfs server上面有同名用戶,那麼此時客戶端登錄帳戶的身份轉換為nfs server上面的同名用戶,no.3如果沒有明確指定,也沒有同名用戶,那麼此時用戶身分被壓縮成nfsnobody2.客戶端連線的時候,對root的檢查,no.1如果設定no_root_squash,那麼此時root用戶的身分被壓縮為nfs server上面的root,no.2如果設定了all_squash、anonuid、anongid,此時root 身分被壓縮為指定用戶,no.3如果沒有明確指定,此時root用戶被壓縮為nfsnobody,no.4如果同時指定no_root_squash與all_squash 使用者將被壓縮為nfsnobody,如果設定了anonuid、anongid將被壓縮到所指定的使用者與群組

##啟動服務

service portmap start or /etc /rc.d/init.d/portmap start

service nfs start   or   /etc/rc.d/init.d/nfs start
#exportfs 指令用法
##- a 全部掛載或卸載

-r 重新讀取/etc/exports 中的信息,並同步更新/etc/exports、/var/lib/nfs/xtab

-u 卸載單一目錄(和-a一起使用為卸載所有/etc/exports檔案中的目錄)-v 在螢幕輸出詳細資訊

showmount 命令用法

-a  顯示已經於客戶端連接上的目錄資訊

-e  ip或hostname 顯示此ip位址分享出來的目錄

利用netstat可以查看出nfs服務開啟了許多連接埠其中nfs開啟的是2049 portmap 開啟的是111,其餘則是rpc開啟的
利用rpcinfo -p 可以查看出rpc開啟的連接埠所提供的程式有哪些
使用mount -t nfs ip(hostname):共享目錄  掛載點方式,可以完成掛載
最後注意兩點,雖然透過權限設定可以讓普通用戶訪問,但是掛載的時候只默認情況下只有root可以去掛載(普通用戶可以執行sudo)

nfs server 關機的時候一點要確保nfs服務關閉,沒有客戶端處於連線狀態! !透過showmount -a 可以查看,如果有的話用kill killall pkill 來結束,(-9 強制結束)

以上是linux NFS是什麼及怎麼用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱門文章

倉庫:如何復興隊友
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章

倉庫:如何復興隊友
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章標籤

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

deepseek網頁版入口 deepseek官網入口 deepseek網頁版入口 deepseek官網入口 Feb 19, 2025 pm 04:54 PM

deepseek網頁版入口 deepseek官網入口

Android TV Box 獲得非官方 Ubuntu 24.04 升級 Android TV Box 獲得非官方 Ubuntu 24.04 升級 Sep 05, 2024 am 06:33 AM

Android TV Box 獲得非官方 Ubuntu 24.04 升級

deepseek怎麼安裝 deepseek怎麼安裝 Feb 19, 2025 pm 05:48 PM

deepseek怎麼安裝

BitPie比特派錢包app下載位址 BitPie比特派錢包app下載位址 Sep 10, 2024 pm 12:10 PM

BitPie比特派錢包app下載位址

BITGet官方網站安裝(2025新手指南) BITGet官方網站安裝(2025新手指南) Feb 21, 2025 pm 08:42 PM

BITGet官方網站安裝(2025新手指南)

Zabbix 3.4 原始碼編譯安裝 Zabbix 3.4 原始碼編譯安裝 Sep 04, 2024 am 07:32 AM

Zabbix 3.4 原始碼編譯安裝

詳解:Shell腳本變數判斷參數指令 詳解:Shell腳本變數判斷參數指令 Sep 02, 2024 pm 03:25 PM

詳解:Shell腳本變數判斷參數指令

歐易okx安裝包直接進 歐易okx安裝包直接進 Feb 21, 2025 pm 08:00 PM

歐易okx安裝包直接進

See all articles