我可以删除 apache 中的错误日志文件吗?这会引起问题吗?

我可以删除 apache 中的错误日志文件吗?这会引起问题吗?

可能重复:
httpd 的 Logrotate 配置(CentOS)

我可以删除 Apache 中的错误日志文件吗?有什么问题吗?因为它占用了我的服务器空间

答案1

如果必须清除日志文件,请执行

cp /dev/null /var/log/file

或者

echo > /var/log/file

这会截断文件但不关闭任何打开的文件句柄。

编辑:使用logrotate来处理文件是更好的长期解决方案。截断文件应该是一种应急措施。

答案2

我更推荐使用 logrotate,而不是直接删除旧日志文件。稍后您可能需要它们来调试某些东西,或者找出系统运行良好的模式,以便进行比较。

备份和恢复如此受欢迎是有原因的。但是,如果这不是任何生产服务器或重要的东西,我不会担心删除它们。

答案3

如果您不打算使用它们,您可以将其删除。我建议您删除所有日志,但不要删除当前日志,如果可以的话,我应该使用日志轮换。

答案4

如果正在使用,删除日志将使 apache 重新加载以重新打开刚刚删除的文件。您可以尝试的是 logrotate,或者尝试清空文件。不过我认为您需要SIGUSR1apache。

关联可能会有帮助。

编辑:刚刚测试过:

# > /var/log/apache2/access.log
# tail -F /var/log/apache2/access.log
.. Still prints lines ....
# rm /var/log/apache2/access.log ; touch /var/log/apache2/access.log
# tail -F /var/log/apache2/access.log
.. displays nothing ....
# kill -USR1 $(pidof apache2)
# tail -F /var/log/apache2/access.log
.. prints lines again ....

编辑2:感谢@voretaq提供有关 apache 信号的更多信息。SIGUSR1确实比 暴力程度要小SIGHUP

相关内容