我刚刚尝试删除 apache 的日志文件,因为我正在学习使用 apachetop 并且需要清除日志文件。
我运行了一个命令sudo rm -rf /var/log/apache2/*
,现在日志文件夹内没有 apache2 文件夹。
我尝试访问一些本地主机站点以查看其是否自动生成,但事实并非如此。
现在我的 apachetop 没有运行,它说
opening /var/log/apache/access.log: No such file or directory
我将如何取回我的日志文件?
谢谢
答案1
这不会回答如何恢复日志文件的问题,但会帮助您apachetop
重新开始运行。
您是否尝试过重新启动 Apache 服务器?您是否尝试过访问该网站?这两个建议中的后者肯定会access.log
在文件中填充条目。
我有点困惑,因为你描述了两个不同的日志目录,但如果你仍然遇到问题:
sudo mkdir /var/log/apache/
sudo mkdir /var/log/apache2/
sudo touch /var/log/apache/access.log /var/log/apache2/access.log
您可能需要授予 apache 用户对这些文件的读写权限:
sudo chown -R www-data:www-data /var/log/apache
sudo chown -R www-data:www-data /var/log/apache2
以后不要使用,rm
因为使用该日志的软件认为它存在。如果您想再次将文件清空,您可以:
sudo > /var/log/access.log
这会保留权限并确保 Apache 在日志不存在期间不会出错。