如何確定 Linux 電腦上的給定目錄是否來自 NFS 安裝的磁碟機?
答案1
您可以使用df -t nfs <directory>
,這將產生類似的輸出
$ df /home/aland/ -t nfs
Filesystem 1K-blocks Used Available Use% Mounted on
nfs_oscar:/home 1255425376 874128064 316496736 74% /home
如果目錄屬於 NFS 掛載,且沒有其他內容:
$ df /root/ -t nfs
Filesystem 1K-blocks Used Available Use% Mounted on
編輯:更簡單的方法:(df -T <directory>
標誌-P
用於禁用漂亮的格式以方便tail
ing 和awk
ing):
$ df /home/aland/ -TP | tail -n -1 | awk '{print $2}'
nfs
答案2
您可以使用該stat
實用程式來-f
表示您正在尋找有關檔案系統的資訊。
例如:
$ stat -f -c %T .
ext2/ext3
$ stat -f -c %T /sys
sysfs
$ stat -f -c %T /proc
proc
$ if [[ $(stat -f -c %T /proc) == proc ]] ; then echo Good ; fi
Good
(請參閱手冊頁以了解不同的格式化選項,抱歉我手邊沒有 NFS 安裝。)
答案3
我會簡單地使用預設工具mountpoint
:
NAME
mountpoint - see if a directory is a mountpoint
SYNOPSIS
mountpoint [-d|-q] directory
由於您具體討論的是NFS
,這意味著您也可以訪問showmount
,除非這是相反的工作方式(從主機而不是目錄):
NAME
showmount - show mount information for an NFS server
SYNOPSIS
showmount [ -adehv ] [ --all ] [ --directories ] [ --exports ] [ --help ] [ --version ] [ host ]