journalctl --list-boots 没有列出所有启动项

journalctl --list-boots 没有列出所有启动项

我有一个运行自定义 Yocto 映像的 Raspberry Pi,它使用 systemd-journald 进行日志记录。

我想知道为什么会有区别:

root@raspberrypi4:~# journalctl -o verbose | grep -e '_MACHINE_ID\|_BOOT_ID' | sort -u
    _BOOT_ID=0c79b6b4fa044c999a1784e17a263edf
    _BOOT_ID=16ab74cb7f454a879de7775ea519a0a1
    _BOOT_ID=1a58eca1b2554b04b0e5177cea29f34a
    _BOOT_ID=6852eabfb84f48afac8ee998c37cb215
    _BOOT_ID=848ed99048ea46368ee6c68169fd9a8e
    _BOOT_ID=a88a79e9295e488e8b498ce1c0ef9adf
    _BOOT_ID=b0326c74a9954ac18214f6eef3c26248
    _BOOT_ID=b4e3da87873f46c59205a24f8e4ef515
    _BOOT_ID=c85ef8042a234969972bf88ebee06613
    _BOOT_ID=ebd0cebba15e41ec93a02973fac19dd1
    _BOOT_ID=f0fb1e181f9b4dc29b1dcf2e01d2aaf5
    _MACHINE_ID=d92197f49033417bb79b55d5b91e93e5
root@raspberrypi4:~# journalctl --list-boots
    -1 1a58eca1b2554b04b0e5177cea29f34a Mon 2020-08-17 20:56:36 UTC—Tue 2020-11-24 07:43:35 UTC
     0 16ab74cb7f454a879de7775ea519a0a1 Tue 2020-11-24 07:43:35 UTC—Tue 2020-11-24 10:12:29 UTC

我明明_BOOT_ID在日记中有 11 个不同的 s,但--list-boots只显示两个。这是为什么?

我正在运行 systemd 243 和 Linux raspberrypi4 4.19.93

答案1

造成这种情况的原因可能是日志文件损坏。

我按照以下步骤在我的电脑(Debian)上修复了这个问题:

  1. 尝试了 journalctl --verify 它应该指出一些日志文件已损坏 - 这是我的情况
  2. 运行 journalctl --disk-vacuum <arbitrary_size> 从日志总大小中清除损坏的日志文件。

最后,journalctl --list-boots 会显示上次和当前启动的正确次数。希望对您有所帮助。

相关内容