为什么在 Sheevaplug 上电时强制执行 fsck?

为什么在 Sheevaplug 上电时强制执行 fsck?

我打开了我的电源希瓦普拉格,在断电几天假期后。

等待了 60 多秒后,它才在网络上可用,这是我记得之前花费的时间。磁盘嗡嗡作响,结果运行 fsck 又花了几分钟。

为什么要进行 fsck?是否由于某种原因我的文件系统没有完全卸载?

它运行 Debian Jessie。

$ systemd-analyze blame
    2min 26.613s systemd-fsck@dev-mapper-vg_brick\x2dlv_backup.service
    2min 13.294s systemd-fsck@dev-mapper-vg_brick\x2dlv_attic.service
    1min 55.661s systemd-fsck@dev-mapper-vg_brick\x2dlv_home.service
         35.407s systemd-fsck@dev-mapper-vg_brick\x2dlv_aptcache.service

$ journalctl -b

Jan 01 02:17:57 brick systemd[1]: Found device /dev/mapper/vg_brick-lv_aptcache.
Jan 01 02:17:57 brick systemd[1]: Starting File System Check on /dev/mapper/vg_brick-lv_aptcache...
Jan 01 02:17:57 brick systemd-fsck[429]: aptcache: Superblock last write time (Sun Apr  2 20:58:31 2017,
Jan 01 02:17:57 brick systemd-fsck[429]: now = Tue Jan  1 02:17:57 2013) is in the future.
Jan 01 02:17:57 brick systemd-fsck[429]: FIXED.

答案1

当时钟倒退时,预计会发生强制 fsck。 源代码。这就是没有电池支持时钟的系统在拔掉插头一段时间后会发生的情况。

(该代码还表明有一个选项可以影响此行为。有人可能会说,强制检查是旧默认值每 180 天强制检查一次的遗留问题,而该默认值不再适用)。

此外,如果您在 11 分钟内重新启动此系统,将再次强制执行 fsck。但是,如果您在守护程序启动后允许 11 分钟ntpd,则硬件时钟将从 Internet ntp 服务器更新。重新启动时,内核将从硬件时钟设置准确的系统时间。那么你就不会看到这种强制检查的发生。

相关内容