如何授予在 systemd 服务中创建日志文件的权限?

如何授予在 systemd 服务中创建日志文件的权限?

以下是在 systemd 服务中启动进程并将日志保存到的行/var/log/besu

 ExecStart=/bin/sh -c "$HOME/bin/besu/bin/besu --config-file=$HOME/bin/besu_network/node1/config.toml >> /var/log/besu/node1.log 2>&1"

但是由于用户没有写入权限,/var/log因此会抛出错误。如何sudo在上面的行中授予创建日志文件的权限,但不将用户添加到 sudoer 组?

答案1

您可以使用 sudo 进入 /var/log 的符号链接,该链接指向用户有写权限的其他位置的日志文件。

或者

您可以将用户添加到syslog组中,以便他们具有写权限,/var/log当然,该用户可以结束编辑/删除其他系统日志,但如果是您个人或受信任的用户......

因此/var/log我可以看到它的所有者:组是root:syslog

因此修改用户并添加syslog组:

sudo usermod -a -G syslog <USERNAME_HERE>

您可能必须注销/登录才能使更改生效,不确定是否有办法动态刷新用户/组。

相关内容