Fstab

我可以在 fstab 中使用高於 2 的通過值嗎?

  • October 22, 2019

fstab 的手冊頁對pass值有這樣的說法:

pass(fsck命令) fsck命令是告訴fsck用​​什麼命令檢查文件系統,如果設置為“0”則忽略文件系統。

通常是混亂的根源,只有 3 個選項:

0 == 不檢查。1 == 先檢查這個分區。2 == 下一步檢查這個分區實際上,使用“1”作為根分區,/ 使用 2 表示其餘部分。所有標有“2”的分區都是按順序檢查的,您不需要指定順序。

使用“0”禁用在引導時檢查文件系統或網路共享。

它沒有明確提到高於 2 的值,但暗示0,12是唯一可用的值。

其他來源(例如fsck 手冊頁)暗示上述值0將按升序處理(“將按順序檢查大於零的 passno 值”)

是否可以使用大於 2 的值?

答案是.. 這取決於,但可能不是。

TL;DR如果你使用systemd,非零的通行證編號將按照它們出現的順序進行fstab檢查,否則通行證編號將按升序順序檢查,並且可以使用大於 2 的值。

在大多數 linux 發行版上,fsck二進製文件由util-linux. 這fsck 接受高於 2 的通行證號,這些將按順序處理。

任何fsck直接呼叫的系統都會理解高於 2 in 的“pass number”值fstab

事實證明,util-linux’sfsck並不總是用於檢查fstabsystemd維護自己的fsck被呼叫的內部副本,它按出現的順序systemd-fsck處理任何非零條目(具體來說,它不會在其他人之前掃描您的通行證號碼條目)。fstab``1

systemd在使用,的Linux 發行版上systemd-fsck,用於自動文件系統檢查,在這些情況下**,通行證號被視為布爾值**(0is 表示“假”或“不驗證”,!= 0為真或“驗證”)。

另外,不要忘記根驅動器(/安裝)有時會單獨檢查。

非常感謝Ned64,他們在回答中做了很多研究。

引用自:https://unix.stackexchange.com/questions/547653