Mount
mount 怎麼知道它是一個沒有 -t 的 cifs 掛載?
所以這個命令:
/bin/mount -o soft,cache=none,rw,nosuid,noexec,pass="" //$ServerIP/share $LocalDir
有效,但我認為它需要-t cifs
添加。我看到手冊頁說
如果沒有給出 -t 選項,或者指定了 auto 類型,mount 將嘗試猜測所需的類型。Mount 使用 blkid 或 volume_id 庫來猜測文件系統類型;如果這沒有出現任何看起來熟悉的東西,mount 將嘗試讀取文件 /etc/filesystems,或者,如果不存在,則 /proc/filesystems。除了那些標有“nodev”的文件系統類型(例如,devpts、proc 和 nfs)之外,所有列出的文件系統類型都將被嘗試。如果 /etc/filesystems 在一行中只有一個 * 結束,mount 之後會讀取 /proc/filesystems。
但是我
/etc/filesystems
的沒有cifs
,我的/proc/filesystems
有nodev cifs
。那麼在我的情況下是如何 工作的呢blkid
?一旦看到雙斜杠()就假設為 cifs 還是有其他方法volume_id
?是否有解釋這一點的文件?mount``//
mount
一旦看到雙斜杠(//
)就假設為 cifs 還是有其他方法?是的,這正是 (lib)mount 的方式——如果源不是塊設備,則假定它是網路位置——如果它具有
:
NFS 並且//
假定為 CIFS。您可以檢查當(或沒有)指定為類型時使用的mnt_context_guess_srcpath_fstype libmount 函式。auto