NFS 客戶端mount 掛載深入

2021-10-24 01:10:55 字數 2810 閱讀 2119

1、nfs客戶端掛載命令

這裡先強調下客戶端掛載的命令格式。

掛載命令

掛載的格式型別

nfs服務端提供的共享目錄

nfs客戶端的掛載點

mount

-t nfs

172.16.1.31:/data

/mnt(必須存在)

mount -t nfs 172.16.1.31:/data /mnt,此命令要在nfs客戶端執行.

2、nfs客戶端mount掛載命令引數說明

在nfs服務端可以通過cat/var/lib/nfs/etab檢視nfs服務端配置引數的細節。在nfs客戶端可以通過cat/proc/mounts 檢視mount的掛載引數細節。

通過如下命令在nfs客戶端測試掛載獲取的預設掛載引數:

[ root@web01~]# grep mnt /proc/mounts

172.16.1.31:/data/mnt nfs4

rw, relatime, vers=4.1, rsize=131072, wsize=131072, namlen=255, hard, psoto=tcp, timeo=600, retrans=2, sec=sys,clientaddr=172.16.1.7,local_lock=none, addr=172.16.1.31 0 0

nfs client mount掛載引數說明。

nfs client mount 掛載引數列表

引數引數功能

預設fg、bg

當在客戶端執行掛載時,可選擇是前台(fe)還是在後台(bg)執行。若在前台執行,則mount會持續嘗試掛載,直到成功或掛載時間超時為止,若在後台執行,則mount會在後台持續多次進行mount,而不會影響到前台的其他程式操作。如果網路聯機不穩定,或是伺服器常常需要開關機,建議使用bg比較妥當。

fgsoft、hard

當nfs client 以soft 掛載server時,若網路或server出現問題,造成client和server無法傳輸資料,client就會一直嘗試,直到timeout後顯示錯誤才停止。若使用soft mount的話,可能會在timeout出現時造成資料丟失,故一般不建議使用(害羞的男孩)。若用hard模式掛載硬碟時,剛好和soft相反,此時client會一直嘗試連線到server,若server有回應就繼續剛才的操作,若沒有回應nfs client會一直嘗試,此時無法umount或kil1,所以常常會配合intr使用。這是預設值(死纏爛打臉皮厚的男孩)。

hard

intr

當使用hard掛載的資源timeout後,若有指定ntr引數,可以在timeout後把它中斷掉,這避免出問題時系統整個被nfs鎖死,建議使用intr。

無rsize、wsize

讀出(rsize)與寫入(wsize)的區塊大小(block size),這個設定值可以影響客戶端與伺服器端傳輸資料的緩衝儲存量,一般來說,如果在區域網內(lan),並且客戶端與伺服器端都具有足夠的記憶體,這個值可以設定大一點,比如說65535(bytes),提公升緩衝區塊將可提公升nfs檔案系統的傳輸能力。但設定的值也不要太大,最好以網路能夠傳輸的最大值為限。

centos5:預設值rsize=1024,wsize=1024;centos7.6:預設值rsize=131072,wsize=13107

proto=udp

使用udp協定來傳輸資料,在lan中會有比較好的效能。若要跨越internet的話,使用proto=tcp多傳輸的資料會有比較好的糾錯能力。

有hard引數————>耦合度高了

可通過man nfs檢視上述引數資訊。如果追求極致,可以用如下引數掛載:

mount -t nfs -o fg, hard, intr, rsize=

131072

, wsize=

131072

172.16

.1.31

:/data/

/mnt

但是如果考慮以簡單、易用為原則,直接選擇預設值就可以了。

mount -t nfs 172.16.1.31:/data/ /mnt

mount -o引數對應的選項

引數引數意義

預設系統值

suid、nosuid

當掛載的檔案系統上有任何suid的程式時,只要使用nosuid就能夠取消設定suid的功能。(suid,在linux基礎學習篇許可權管理裡面講過了)

suid

rw、ro

可以指定檔案系統是唯讀(ro)或可寫(rw)。

rwdev、nodev

是否可以保留裝置檔案的特殊功能?一般來說只有/dev才會有特殊的裝置,因此可以選擇nodev。

devexec、noexec

exec

user、nouser

是否允許使用者進行檔案的掛載與解除安裝功能?如果要保護檔案系統,最好不要提供使用者進行掛載與解除安裝

nouser

auto、noauto

這個auto指的是「mount -a」時會不會被掛載的專案,如果不需要這個分割槽隨時被掛載,可以設定為noauto

auto

3.把man mount後的-o引數中英翻譯對比

下面是mount 而令的-o選項後面可以接的引數,注意,有些選項只有出現在/etc/fstab裡才有效,下面這些選項可以應用在絕大多數檔案系統上,但是sync僅適合ext2、ext3、fat、vfat 和ufs等檔案系統。

這些引數都支援本地檔案系統。

一般情況安全的引數和效能引數是對立的,即越安全效能就越差。

掛載nfs的客戶端目錄唯讀

一 背景 在部署好nfs伺服器和客戶端的,出現了客戶端成功掛載,但客戶端的掛載目錄卻成了唯讀。於是對場景進行還原測試,其中還出現了客戶端掛載時nfs service denied的情況。1 nfs伺服器部署啟動好後,在客戶端掛載出現了如下的報錯 2 檢視nfs伺服器的nfs啟動日誌 安裝的nfs版本...

NFS客戶端流程理解

系統呼叫 vfs readir inode i fop 這是在inode初始化時候,填入的鉤子函式,一般會填成nfs的函式nfs readdir nfs readdir 先在快取中查詢,如沒找到,則傳送乙個rpc操作號給伺服器,伺服器接收到操作號。呼叫對應的procedure,然後呼叫vfs的 co...

NFS檔案系統掛載 伺服器端 客戶端

在開發板上通過nfs檔案系統掛載主機上的指定目錄,實現開發板和pc的檔案共享,非常方便.pc平台 debian 首先安裝nfs相關的軟體包,nfs common nfs kernel server portmap 利用 etc init.d nfs kernel server start stop ...