我需要将 systemd 输出(不是二进制文件 stdout / stderr。我的意思是发送到journalctl 的实际 systemd 输出)重定向到特定用户单元的文件。
我知道用户可以使用以下命令查看journalctl
journalctl --follow --user -u userunit.service
然而,这需要调整/etc/systemd/journald.conf,并调整存储,Storage=persistent
然后重新启动。我们不能这样做。
我知道如何将二进制文件的 stdout 和 sterr 重定向到文件。如何将单元的所有journalctl 输出重定向到我选择的文件?
这可能吗?
编辑
本地似乎没有办法做到这一点。因此我创建了一个单独的单元来执行journalctl的重定向,以下工作。
[Unit]
Description=redirect journalctl output for userunit to .log file
[Service]
ExecStart=/usr/bin/bash -c "/usr/bin/journalctl --follow --user -u userunit.service >> /home/user1/log/userunit.log"
Restart=always
RestartSec=3
Type=simple
[Install]
WantedBy=default.target