Answers:
您不能删除整个文件夹,但可以删除“旧包”日志文件,而不会损害系统。
对于典型的家庭用户而言,删除压缩的且具有.gz扩展名的日志文件是安全的(如图所示)。
这些压缩的日志文件是旧日志,压缩后可以减少存储空间,并且作为一般用户,您不需要它们。
find /var/log -type f -name "*.gz" -delete
,我删除了压缩文件,只释放了大约1 GB的空间。50 GB的空间还不够用于/
目录和磁盘的其余部分/home
!
cat /var/log/kern.log
或nano /var/log/kern.log
(在GUI上运行,例如eg gedit /var/log/kern.log
或mousepad /var/log/kern.log
),然后检查可能是什么问题。一旦找出问题所在,便可以运行sudo rm /var/log/kern.log ; sudo telinit 6
以删除此类(大)文件并重新启动操作系统。
messages
(7.7 GB),user.log
(7.7 GB),syslog
(4.1 GB)和syslog.1
(3.5 GB)。这四个文件总计23 GB。有什么方法可以删除它们,或者至少减小它们的大小?
我不会删除整个/ 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
在启动时将其解压缩以创建所有需要的目录并一次设置所有权限。)