Ext4
如果您從未執行過 e2fsck,會發生什麼?
我們的伺服器已經執行了很長時間。當他們重新啟動時,我們會看到以下消息:
核心:EXT4-fs (sda3):警告:已達到最大安裝計數,建議執行 e2fsck
我的問題是:如果你從來沒有執行過 e2fsck 怎麼辦?手冊頁沒有提供足夠的資訊。警告消息說“推薦” - 但沒有說它是強制性的。
不執行會有什麼後果?
達到最大計數意味著什麼?
ext* 文件系統在元數據中有幾個值;在檢查文件系統之前可以掛載多少次,以及檢查之間應該允許多長時間。
這些值可以用
dumpe2fs
命令檢查;例如% sudo dumpe2fs -h /dev/vdb | egrep -i 'check|mount count' dumpe2fs 1.42.9 (28-Dec-2013) Mount count: 15 Maximum mount count: 25 Last checked: Sun Jan 2 22:03:00 2022 Check interval: 15552000 (6 months) Next check after: Fri Jul 1 23:03:00 2022
這表示文件系統已掛載 15 次,需要在掛載 25 次後進行檢查;應每 6 個月進行一次檢查;最後一次檢查是 2022 年 1 月,因此下一次檢查應該是 2022 年 7 月。
這些值可以使用
tunefs
命令 (-i
和-c
) 選項進行更改。它們可以被關閉。例如
% sudo dumpe2fs -h /dev/vda3 | egrep -i 'check|mount count' dumpe2fs 1.42.9 (28-Dec-2013) Mount count: 138 Maximum mount count: -1 Last checked: Sun Jul 12 17:23:17 2015 Check interval: 0 (<none>)
這基本上是說“永遠不應該檢查磁碟”。
所以現在的問題;我們應該定期執行它嗎?
本質上,進行正常檢查的基本原理是嘗試發現文件系統不一致並嘗試修復它們。在不會異常關閉(例如崩潰、電源故障)的現代系統上,風險很小,因此可能不需要這樣做。
實際上,在大型文件系統或具有大量文件的文件系統上,這可能需要很長時間!可能幾個小時!
相反,在具有正確條目的小型文件系統上,
/etc/fstab
它可以在重新啟動時自動發生,並且只會稍微減慢重新啟動的速度。因此,您可能希望通過檢查小型文件系統,
fstab
但不允許大型文件系統或具有大量文件的文件系統。例如,Red Hat 建議“通常 Red Hat 不建議禁用 fsck,除非在機器無法啟動、文件系統非常大或文件系統位於遠端儲存上的情況下。” ( https://access.redhat.com/solutions/281123 )