Linux中的日志文件权限

我正在尝试编写一个简单的脚本来监视/var/log/messages文件。 该文件默认情况下没有读取权限的用户,当我允许读取这个文件我的脚本完美的作品,但问题是文件被重写每次我重新启动系统,我的所有更改都会丢失。 有没有办法改变它的默认权限?

谢谢。

有权限pipe理设置,不需要你使用sudo – 你可以让运行脚本的用户访问拥有/var/log/messagesadm ,在我的笔记本上)的组。 或者,在脚本的sudoers条目中使用NOPASSWD ,这样就不必在脚本中存储密码。

如果你真的死心让世界看到/var/log/messages (我强烈build议不要这样做 – 那里真的可以有私人的东西),那么什么是你的权限设置为默认的是可能logrotate ,所以检查你的logrotateconfiguration,find你的/var/log/messages旋转并改变它的节。

通常的解决scheme是运行具有足够权限的监视脚本,以便能够读取文件。

这是因为仔细select/var/log/messages权限是为了隐藏任何意外结束于该日志文件的敏感信息。

如果您确实使用sudo授予访问权限,那么您需要小心地正确限制访问范围。 我会推荐你​​的sudoers文件中使用这样的东西:

 scriptuser ALL = NOPASSWD: /bin/cat /var/log/messages 

这将允许“脚本用户”在不input密码的情况下执行确切的命令。