删除的Apache访问日志仍占用空间

我删除了一个7GB的apache2 other_vhosts_access.log.1来释放我们的服务器上的一些空间。 基本上我删除了所有,但最近的访问日志。 最大的是未压缩的 – 我假设它没有通过logrotate(正在运行)。

运行df -h显示没有额外的空间,我已经尝试了apache/apachectl restart/reload/graceful等的每个组合。正如其他问题中提到的 – 没有结果。 lsof也不显示打开的文件。

更有可能你已经删除了日志,但Apache已经locking了他们。

您应该使用lsof并查找(删除)。 IBM 在这里指导。 解决的方法是重新启动Apache进程来释放文件。

尝试将/ dev / null复制到您的日志文件。 这应该截断你的文件,而不closures文件句柄apache持有…

 cp /dev/null other_vhosts_access.log.1 

我有同样的问题,我解决如下。

问题:

我手动删除目录/var/www/vhosts/mywebsite/logs/mywebsite1/ access_logerror_log以释放空间,但即使文件消失,空间也不会被释放。

解:

我用lsof按大小sortingsearch大文件(在这里find的命令):

 lsof -s | awk '$5 == "REG"' | sort -n -r -k 7,7 | head -n 100 

我在另一个path中find了两个大文件access_logerror_log (注意与前面的path不同):

 /var/www/vhosts/system/mywebsite1/logs/ 

我用命令重设这两个文件:

 :>/var/www/vhosts/system/mywebsite1/logs/access_log :>/var/www/vhosts/system/mywebsite1/logs/error_log 

文件已被清空,空间被释放。

希望能有所帮助。

在我的情况下,我需要重新启动rsyslog ,这是在我的Ubuntu系统上处理日志,它释放了所有的磁盘空间。

这可以重新启动运行sudo service rsyslog restart或者如果你在16.04 +与sudo systemctl restart rsyslog rsyslog。