在 Linux 中修改日志文件的权限,主要涉及 chmod(改权限) 和 chown(改属主/属组) 两个命令。下面按常见场景说明。
/var/log/messages/var/log/syslog/var/log/secure/var/log/nginx//var/log/httpd//data/logs/app.log)⚠️ 注意:日志文件通常归 root 或 syslog/rsyslog 用户所有,直接修改可能影响系统安全或日志写入。
sudo chmod 640 /var/log/syslog
常用权限说明:
600:仅 owner 可读写640:owner 读写,group 可读644:所有人可读(不推荐敏感日志)示例:
sudo chmod 644 /var/log/nginx/access.log
sudo chmod -R 755 /var/log/nginx
⚠️ 一般不推荐目录 777,除非测试环境。
sudo chown user /var/log/app.log
sudo chown user:group /var/log/app.log
sudo chown -R www-data:www-data /var/log/nginx
例如:让 nginx 用户 能读写日志目录
sudo chown -R nginx:nginx /var/log/nginx
sudo chmod 750 /var/log/nginx
sudo chmod 640 /var/log/nginx/*.log
编辑:
sudo vi /etc/rsyslog.conf
或:
sudo vi /etc/rsyslog.d/*.conf
添加:
$FileCreateMode 0640
重启:
sudo systemctl restart rsyslog
查看:
journalctl --list-boots
修改持久化权限:
sudo vi /etc/systemd/journald.conf
Storage=persistent
777ls -l /var/log/xxx > log_perm_backup.txt
ls -l /var/log/syslog
如果你愿意,可以告诉我:
我可以给你最合适的权限配置方案。