当前位置:  开发笔记 > 运维 > 正文

我应该如何从非root的Debian Linux守护进程登录?

如何解决《我应该如何从非root的DebianLinux守护进程登录?》经验,为你挑选了2个好方法。

我正在编写一个新的守护进程,它将在Debian Linux上托管.

我发现/ var/log只有root权限,因此我的守护进程无法在那里写日志文件.

但是,如果它在那里写入,它似乎将获得自动日志轮换,并且也可以像用户期望的那样工作.

守护进程编写/ var/log中出现的日志条目的推荐方法是什么,而不必以root身份运行?

守护程序是一个Web服务器,因此日志流量将类似于Apache.



1> WiseTechi..:

您应该创建一个子目录,例如/var/log/mydaemon拥有守护程序的用户所有权



2> sth..:

以root身份在那里创建一个日志文件,并将文件所有者更改为webserver用户:

# touch /var/log/myserver.log
# chown wwwuser /var/log/myserver.log

然后,如果以用户身份运行,服务器可以写入文件wwwuser.但它不会获得自动日志轮换.您必须将日志文件添加到/etc/logrotate.conf或,/etc/logrotate.d/...并在logrotate发出信号时让服务器重新打开日志文件.

您可能还会使用syslog日志记录,如果这更符合您的情况.


如WiseTechi的回答所提到的那样,将日志放在子目录中会更好.如果您在/ var/log中有文件并且文件被删除,则非root进程将无法重新创建该文件
推荐阅读
mylvfamily
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有