如何从庞大的39.5GB / var / log /文件夹中释放空间?

我刚收到默认磁盘分析软件(Baobab)的消息,我只剩下1GB硬盘。 经过一些搜索,我发现/var/log/文件夹是导致这种情况的原因。

/var/log/一些文件/大小:

  • kern.log = 12.6 GB
  • ufw.log = 12.5 GB
  • kern.log.1 = 6.1 GB
  • ufw.log.1 = 6.0 GB

等等。 /var/log很大。

我可以删除这些文件或整个/var/log文件夹吗? 或者在Ubuntu中是否是一个大不了?

您不能删除整个文件夹, 可以删除“旧包装”日志文件而不会损害您的系统。

对于典型的家庭用户,可以安全地删除任何压缩的日志文件并具有.gz扩展名(如图所示)。

这些压缩日志文件是经过压缩的旧日志,以减少存储空间,而作为普通用户,您不需要它们。

选择.gz扩展名

我不会删除整个/ var / log文件夹 – 这将破坏事情。

您可以像@jrg建议的那样销毁日志 – 但除非写入日志文件(主要是syslogd)的内容重新启动,否则实际上不会重新获得任何磁盘空间,因为文件将继续以删除状态存在,直到文件句柄已关闭。

更好的是找出原因未被轮换(以后删除)的原因。 logrotate应该为你做这件事,我怀疑它不是每晚都应该运行。

我要做的第一件事就是:

 sudo /etc/cron.daily/logrotate 

应该旋转日志文件(所以kern.log变成kern.log.1); 然后你可以删除kern.log.1等来释放磁盘空间。

如果到目前为止一切顺利,下一个问题是为什么这不会自动发生。 如果您在晚上关闭计算机,请确保已安装anacron 。

您应该查看日志并查看写入内容的内容。 我的猜测是ufw / iptables(您正在记录所有网络流量)。

ufw – 当您记录所有数据包时,您将获得大型日志。 如果您不打算查看日志,请关闭注销。 如果您希望监控网络,请使用snort。 Snort将过滤您收到的数千个数据包,并提醒您可能存在问题的流量。

我猜是ufw是罪魁祸首,你在kern.log中获得一个大的日志,因为你也在那里记录数据包。

有时会出现填充日志的内核或硬件问题。 在这种情况下,最好修复问题或提交错误,您需要查看日志才能执行此操作。

如果无法解决问题,可以将syslog配置为不填充日志。

请参阅http://manpages.ubuntu.com/manpages/precise/man5/syslog.conf.5.html

如果您提供有关问题的更多详细信息,我们可以帮助您更好地调试它

删除/var/log可能是一个坏主意,但删除单个日志文件应该没问题。

在我的笔记本电脑上,使用一个小的SSD磁盘,我将/var/log (和/tmp/var/tmp )设置为tmpfs挂载点,方法是在/etc/fstab添加以下行:

 temp /tmp tmpfs rw,mode=1777 0 0 vartmp /var/tmp tmpfs rw,mode=1777 0 0 varlog /var/log tmpfs rw,mode=1777 0 0 

这意味着这些目录中的任何内容都无法重启。 据我所知,这个设置工作正常。 当然,我失去了查看旧日志以诊断可能发生的任何问题的能力,但我认为这是减少磁盘使用量的公平权衡。

我遇到的唯一问题是某些程序(最明显的是APT)想要将它们的日志写入/var/log子目录中,并且如果它们不存在则不够智能创建这些目录。 将行mkdir /var/log/apt/etc/rc.local为我修复了这个特殊问题; 根据您安装的软件,您可能还需要创建一些其他目录。

(另一种可能性是创建一个只包含目录的简单tar存档,并在启动时将其解压缩到/var/log中以创建所有需要的目录并一次性设置它们的权限。)