root 是100%是什么原因造成的?

root 是100%是什么原因造成的?

我有一台用了 5 年的 Ubuntu 笔记本电脑。它运行的是 12.04 LTS,从来没有给我带来过什么麻烦。昨晚更新时,弹出一个磁盘分析器,说我剩余空间很少。这是正确的。

从那时起,我一直在手动清理 /boot 下的旧内核及其相关文件。我的使用量从 95% 下降到了 89%。我查看了 /var/spool,清理了许多很久以前从未打印过的假脱机文件,但这些文件并不大。磁盘分析器只显示 root 占用 100%,/usr 占用 45%,其他所有文件(包括 /home)占用量都很小。

我向 Synaptic 咨询过。我没有安装像 apache 或 mysql 这样的大型软件包。还有什么会占满磁盘空间?除了强制安装之外,我还应该如何进行清理?

我正在使用这个脚本

#!/bin/bash

ORPHANS=`deborphan`
if [ ! -z "$ORPHANS" ]; then
    dpkg --remove $ORPHANS
fi

PURGES=`dpkg --list | grep ^rc | awk '{ print $2; }'`
if [ ! -z "$PURGES" ]; then
    dpkg --purge $PURGES
fi

我发现这里

然而,当我必须安装它时,它只扎根到 88%,而添加 deborphan 后又增加了 1%。

答案1

最有可能去的地方是/var/log/。我记得有一次日志旋转未配置为处理所有相关日志文件。

首先du -sh /var/log/*查看那里是否有一个“巨大”的目录。

答案2

如果您有多个分区,首先不要费心清理未满的分区。重点清理已满的分区。

您可以df -h /some/dir检查包含 /some/dir 的分区是否已满(当然,下面可能还安装了另一个分区,如果是这样,请考虑这一点)

您还可以通过对每个目录的大小进行排序来查找最大的目录:以 root 身份执行df -kS / | sort -n并耐心等待......(因为 sort 需要排序前的完整输出,所以 du 完成后您将看到所有内容)(du -kS不同于du -ks:它不计算子目录,因此它有助于精确定位包含较大文件的确切目录。至少可以与 gnu du 一起使用。)

另一种方法:以 root 身份,find -type f -size +100000 -ls | sort -k7,7n通过仅输出最大的文件(超过 512x100000=51Mb)来查找最大的文件(因为大小参数以 512 字节为单位(默认块大小))。sort 中的数字 7 表示在第 7 个字段上排序。如果大小在另一个字段中,则进行调整(我根据记忆这​​样做,我正在旅行......)(-k7,7n告诉 sort 按数字排序“从第 7 个到第 7 个字段”,否则按从第 7 个到最后一个字段排序,这通常不是您想要的......)

相关内容