什么填满了我的根目录?

什么填满了我的根目录?

我有一个 120gb 的 SSD 专用于 /root,还有一个单独的 HDD 用于 /home,但是由于某种原因,我的根驱动器已满,但我不知道原因。

我已尝试过autoclean autoremoveclean但是没有帮助。

我在使用 lightdm 时遇到了问题,并花了几个小时用 testdisk 扫描有故障的 USB 驱动器,可能会创建一些大的错误日志,但我不知道在哪里。

有什么方法可以解决此问题吗?

$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            2.9G     0  2.9G   0% /dev
tmpfs           588M  1.8M  586M   1% /run
/dev/nvme0n1p2   96G   91G  284M 100% /
tmpfs           2.9G   26M  2.9G   1% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           2.9G     0  2.9G   0% /sys/fs/cgroup
/dev/loop1      114M  114M     0 100% /snap/audacity/675
/dev/loop2      157M  157M     0 100% /snap/chromium/1213
/dev/loop4       55M   55M     0 100% /snap/core18/1754
/dev/loop3       97M   97M     0 100% /snap/core/9665
/dev/loop5       97M   97M     0 100% /snap/core/9436
/dev/loop6      159M  159M     0 100% /snap/chromium/1229
/dev/loop7      162M  162M     0 100% /snap/gnome-3-28-1804/128
/dev/loop9      146M  146M     0 100% /snap/firefox/392
/dev/loop10     256M  256M     0 100% /snap/gnome-3-34-1804/36
/dev/loop8      161M  161M     0 100% /snap/gnome-3-28-1804/116
/dev/loop11     145M  145M     0 100% /snap/firefox/387
/dev/loop12     256K  256K     0 100% /snap/gtk2-common-themes/13
/dev/loop0      114M  114M     0 100% /snap/audacity/666
/dev/loop13     256K  256K     0 100% /snap/gtk2-common-themes/9
/dev/loop14      63M   63M     0 100% /snap/gtk-common-themes/1506
/dev/loop15     116M  116M     0 100% /snap/spek/43
/dev/loop16      30M   30M     0 100% /snap/snapd/8140
/dev/nvme0n1p1  188M  7.8M  180M   5% /boot/efi
/dev/loop17     291M  291M     0 100% /snap/vlc/1700
/dev/loop18      55M   55M     0 100% /snap/core18/1880
/dev/loop19     112M  112M     0 100% /snap/simplescreenrecorder-brlin/69
/dev/loop20      30M   30M     0 100% /snap/snapd/8542
/dev/loop21     291M  291M     0 100% /snap/vlc/1620
/dev/sda1       3.4T  490G  2.7T  16% /home
tmpfs           588M   24K  588M   1% /run/user/1000

好的,所以 syslog.1 和 kernlog.1 都是 35.9,如果可以的话,它们可能会变得更大 - 这给我的系统带来了重大问题 - lightdm 停止工作并且在启动时出现登录循环。

编辑:我需要打开这些文件才能找出原因,但我怀疑它们会用要打开的数据量锁定我的电脑 - 有人可以证实这一点或有任何建议来查看内容吗?

编辑:原因已找到,问题已回答。我认为最好再问一个问题:如何读取/打开文件

编辑:原因似乎是 testdisk 或故障驱动器。我中止了驱动器上的深度扫描并拔下了它。感谢 Soren A,系统日志的前 20 行是:

Jul 27 14:09:08 ryzen kernel: [19606.795097] sd 10:0:0:0: [sdc] tag#0 device offline or changed

在此处输入图片描述

答案1

首先进入你的根目录。然后运行以下命令来查找最大的问题:

find . -maxdepth 1 -mindepth 1 -type d -exec du -sh {} \; | sort -rh | head

现在进入其中一个主要问题并再次运行相同的命令。继续沿着目录树向下查找,直到找到有问题的文件。

解释:

  • maxdepth 表示只需在“.”目录中查找文件
  • mindepth 表示不包括“。”目录(仅查看“。”下一级的文件)
  • -type d 标志表示仅匹配目录
  • exec 表示执行以下命令
  • du 命令用于告诉您目录中的文件使用了多少磁盘空间。-s 标志指示 du 报告给定目录及其内所有目录的总数,而不是单独报告每个子目录。-h 将字节转换为人类可读的格式 - 例如 M 表示兆,G 表示千兆。
  • exec 将 {} 符号替换为匹配的目录名称
  • ; 只是终止 exec 运行的命令(反斜杠转义“;”并且“;”结束命令)
  • 然后我们将整个输出通过管道传输到 sort 中,它对来自 find 命令的目录大小进行排序 - -r 标志按相反顺序排序,-h 标志告诉 sort 按其值而不是按字符串排序顺序来解释数字,例如 10G 和 10K。
  • 最后我们将其导入到 head 中,这样你就不会看到满屏的内容 - 你只会看到最上面的“违规者”

答案2

你可以安装命令行工具ncdu。它是一个具有图形界面的磁盘使用情况分析器。

示例输出:

ncdu 1.14.1 ~ Use the arrow keys to navigate, press ? for help 
--- / ---------------------------------------------------------
   20.4 GiB [##########] /home                                 
   12.3 GiB [######    ] /usr
.   1.8 GiB [          ] /var
  800.7 MiB [          ] /lib
  117.4 MiB [          ] /boot
.  20.8 MiB [          ] /etc
   17.9 MiB [          ] /opt
   17.7 MiB [          ] /sbin
   11.9 MiB [          ] /bin
    4.8 MiB [          ] /lib32
.   1.1 MiB [          ] /run
   16.0 KiB [          ] /media

答案3

您可以使用du(磁盘使用情况)命令,例如像这样:

cd /
sudo du -sh *

然后,您将看到每个目录中使用了多少空间,/例如/bin/var等等。然后,您也可以在特定目录中执行此操作,具体取决于哪些目录包含大量数据。

答案4

您可以使用 GUI 工具文件灯它以漂亮的径向图形显示磁盘使用情况。您可以直接看到最大的文件夹,检查子目录,只需单击鼠标右键即可打开文件管理器或目录上的终端。

根目录的 Filelight GUI 窗口

你可以用一个简单的安装sudo apt install filelight

相关内容