logrotate 表示旋转日志/重新创建日志文件时权限被拒绝

发布于 2024-11-10 16:32:18 字数 464 浏览 5 评论 0原文

我是 Linux 机器上的 logrotate 新手...这是我在应用程序的 logrotate.d 文件中设置的内容:

/var/log/myapp.log {
daily
missingok
create 0660 root utmp
rotate 1
}

我直接使用 chmod 为运行相关应用程序的帐户在 myapp.log 文件上设置所有者权限来自 bash shell。

当应用程序第一次运行时,一切都很好。它记录得很好,一切都很好。但是当日志轮换时,它会删除日志文件,然后尝试重新创建日志文件,并给出权限被拒绝的错误:

/bin/bash: /var/log/myapp.log: Permission denied

我知道我在 logrotate 配置文件或 chmod 或其他东西上做错了......可以有人指出我正确的方向并帮助我解决问题吗?

I'm new to logrotate on linux machines... here's what I have set up in my app's logrotate.d file:

/var/log/myapp.log {
daily
missingok
create 0660 root utmp
rotate 1
}

I set owner permissions on the myapp.log file for the account that runs the app in question, using chmod, directly from the bash shell.

when the app first runs, everything is fine. It logs just fine and it's all good. But when the log gets rotated, it deletes the log file and then tries to recreate the log file and it gives a permission denied error:

/bin/bash: /var/log/myapp.log: Permission denied

I know I'm doing something wrong with either the logrotate config file or chmod or something... can someone point me in the right direction and help me fix the problem?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

自演自醉 2024-11-17 16:32:18

我直接从 bash shell 使用 chmod 对运行相关应用程序的帐户的 myapp.log 文件设置了所有者权限。

...所以除非“运行相关应用程序的帐户”是 root,否则配置选项

create 0660 root utmp

是错误的,因为这要求 logrotate 创建一个新的 myapp.log(在将原始 myapp.log 旋转为 myapp.log.0 后),拥有权限 0660用户 root 和组utmp。将这些替换为您的应用程序所需的属性应该可以解决问题。

I set owner permissions on the myapp.log file for the account that runs the app in question, using chmod, directly from the bash shell.

...so unless "the account that runs the app in question" is root, the config option

create 0660 root utmp

is wrong, because that is asking logrotate to create a new myapp.log (after it has rotated the original myapp.log to myapp.log.0) with permissions 0660 owned by user root and group utmp. Replacing these with the attributes required by your app should solve the problem.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文