在 Ubuntu 上修改 Tomcat 日志权限,通常涉及到 日志文件本身 和 日志目录,以及 Tomcat 运行用户。下面分情况说明。
常见情况:
tomcat 或 tomcat9tomcat 或你自己建的用户查看方式:
ps -ef | grep tomcat
或
systemctl cat tomcat9 | grep User
Tomcat 日志默认位置:
/var/log/tomcat9/opt/tomcat/logssudo chown -R tomcat:tomcat /var/log/tomcat9
sudo chmod -R 755 /var/log/tomcat9
如果你用的是 tomcat9 用户,就写 tomcat9:tomcat9
sudo chmod 644 /var/log/tomcat9/*.log
sudo chmod 644 /var/log/tomcat9/*.txt
Tomcat 日志由 logging.properties 或 log4j 控制。
logging.properties(默认)文件位置:
/etc/tomcat9/logging.properties
或
$TOMCAT_HOME/conf/logging.properties
确保 Tomcat 启动用户对日志目录有写权限即可,无需特殊配置。
权限取决于 Tomcat 启动用户,不是日志框架本身。
如果你发现日志总是 root 权限:
ls -l /var/log/tomcat9
说明 Tomcat 用 root 启动,建议改成普通用户:
sudo systemctl edit tomcat9
添加:
[Service]
User=tomcat9
Group=tomcat9
然后:
sudo systemctl daemon-reload
sudo systemctl restart tomcat9
sudo usermod -aG tomcat9 youruser
sudo chown -R tomcat9:tomcat9 /var/log/tomcat9
sudo chmod 640 /var/log/tomcat9/*.log
Tomcat 日志权限 = Tomcat 运行用户对日志目录有写权限
如果你愿意,可以告诉我:
我可以给你精确到命令的方案。