访问离线 systemd 实例的 systemd 日志

访问离线 systemd 实例的 systemd 日志

TL;DR:如何访问离线 systemd 实例的 systemd 日志。

因此,我现在正在将一些机器从之前的 LTS 版本迁移到 Ubuntu 16.04。这意味着现在一切都基于 systemd。

通常,我从与我打算安装的版本相同的救援磁盘引导我的机器,使用debootstrap.原因是对于我的许多机器,我必须运行无头设置。

在最近的一个案例中,我应该准备的一台机器由远程站点上的某人为我启动,启动了 SSH 服务器并配置了用户帐户以便我可以登录。该机器有一个屏幕,但由于设置了不兼容的模式,从 Ubuntu 显示启动屏幕开始,屏幕一直是空白的。我同时在 GRUB2 配置中解决了这个问题,但重点是,它本质上也是一个无头场景。

所以我使用设置了机器debootstrap并尝试启动。屏幕保持空白(无论哪种方式,我自己都不会像在实际的无头安装中那样看到屏幕)。

什么也没发生,但是可以 ping 通机器,但 SSH 显然没有运行。令人费解...

当我重新启动机器时,我面临着从离线机器访问 systemd 日志以找出问题所在的任务。即未运行但与正在运行的版本相同的 systemd 实例的日志。

问题:如何访问当前未运行的 systemd 实例的 systemd 日志?

# systemd --version
systemd 229
+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ -LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN

答案1

如果您可以挂载离线系统的磁盘,则可以使用-D--directory选项journalctl。例如,如果将磁盘挂载到/mnt,则可以使用以下命令访问其日志

journalctl -D /mnt/var/log/journal

相关内容