Linux

我可以從系統日誌中看出,XFS 是否在上次關機時被完全解除安裝?

  • January 12, 2019

是否存在與 fsck.ext4 消息“正在恢復日誌”等效的 XFS?(請參閱 “恢復日誌”是否證明不干淨的關閉/解除安裝?)。

fsck.xfs是無操作的。那麼,當您掛載未完全解除安裝的 XFS 文件系統時,核心是否會記錄一條消息?

似乎沒有直接的等價物。

[27927.296390] XFS (sdb4): Mounting V5 Filesystem
[27927.869545] XFS (sdb4): Ending clean mount
[27942.761564] usb 2-2: USB disconnect, device number 31
[27943.011211] usb 2-2: new full-speed USB device number 32 using xhci_hcd
[27960.810143] XFS (sdb4): Unmounting Filesystem
[27960.811247] XFS (sdb4): metadata I/O error in "xlog_iodone" at daddr 0x58b10a len 64 error 5
[27960.812077] XFS (sdb4): xfs_do_force_shutdown(0x2) called from line 1271 of file fs/xfs/xfs_log.c.  Return address = 00000000758bdd7c
[27960.812708] XFS (sdb4): Log I/O Error Detected.  Shutting down filesystem
[27960.812728] XFS (sdb4): Unable to update superblock counters. Freespace may not be correct on next mount.
[27960.813349] XFS (sdb4): Please umount the filesystem and rectify the problem(s)

...

[28509.842965]  sdb: sdb1 sdb2 sdb3 sdb4
[28509.846156] sd 2:0:0:0: [sdb] Attached SCSI removable disk
[28517.755990] XFS (sdb4): Mounting V5 Filesystem
[28518.328431] XFS (sdb4): Ending clean mount

file -s /dev/sdb4能夠顯示 ext4 文件系統何時“需要日誌恢復”,但當我測試未乾淨解除安裝的 XFS 文件系統時,它沒有檢測到任何差異。

xfs_repair也沒有任何區別。事實上,常見消息列表中 man xfs_repair不包括任何關於日誌重播的內容。反而:

xfs_repair 實用程序無法修復帶有臟日誌的 XFS 文件系統。要清除日誌,請掛載和解除安裝 XFS 文件系統。如果日誌已損壞且無法重播,請使用 -L 選項(“強制日誌歸零”)清除日誌,即 xfs_repair -L /dev/device。請注意,這可能會導致進一步的損壞或數據失去。

https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/storage_administration_guide/xfsrepair

雖然 ext4 維護特殊標誌來指示未乾淨的解除安裝,但聽起來 XFS 只維護日誌。如果日誌是空的,那麼它是“乾淨的”;沒有什麼可以修復/恢復/重播。

(如果您的作業系統希望檢測不干淨的關機,那麼它必須自己這樣做,就像 Windows 一樣 :-)。

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