我的服务器上有 2 个用户。一个用户有 sudo 权限,另一个用户没有。我如何授予 nginx 日志访问权限
/var/log/nginx/error.log
给其他用户无权sudo
使用cat /var/log/nginx/error.log
?我可以创建类似符号链接的东西来登录他的 /home/username 目录吗?
所以我的问题是 - 没有权限的用户如何sudo
检查 nginx 日志?
答案1
例如这样:
chmod 755 /var/log/nginx && chmod 644 /var/log/nginx/*.log && chmod 644 /var/log/nginx/*.gz
这样,任何人都可以 cwd 并读取 /var/log/nginx 目录的内容并读取 *.log 文件。
您还应该检查日志轮换配置,以免再次更改权限。对于 Nginx 的最近几个版本(包括 1.6.2),该文件/etc/logrotate.d/nginx
已使用该行create 0640 www-data adm
来设置轮换日志时的权限。这应该更改为类似 的内容create 0644 www-data adm
。需要注意的是,此解决方案允许服务器上的所有用户读取所有 Nginx 日志。
更新:logrotate 配置也应该更新,以su www-data adm
允许 logadm 实用程序正常工作,而不会抱怨目录权限不正确。