在 CentOS 里,nohup 产生的日志文件(默认是 nohup.out)本身就是一个普通文件,改权限和改普通文件权限一样,用 chmod、chown 即可。
下面按常见情况说明:
chmod 644 nohup.out
常用权限示例:
644:所有者可读写,其他人只读600:仅所有者可读写666:所有人可读写(不推荐)修改所有者(如改成 www 用户):
chown www:www nohup.out
不要直接用默认 nohup.out,自己指定日志:
nohup your_command > /var/log/myapp.log 2>&1 &
然后提前建好日志文件并设置权限:
touch /var/log/myapp.log
chmod 640 /var/log/myapp.log
chown appuser:appuser /var/log/myapp.log
umask 控制新建文件权限在启动前设置 umask:
umask 022
nohup your_command > nohup.out 2>&1 &
这样新建的 nohup.out 默认就是 644
如果程序一直写日志,权限不会自动变,你只需改一次文件权限即可;但如果是新生成的日志文件,必须在启动前控制。
chown 改归属getenforce
如果你能说一下:
我可以给你更精确的命令。