什么填满了我的根目录?

Joh*_*ive 5 disk disk-usage testdisk 20.04

我有一个专用于 /root 的 120gb SSD 和用于 /home 的单独 HDD,但由于某种原因,我的根驱动器已满,我不明白为什么。

我试过了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
Run Code Online (Sandbox Code Playgroud)

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

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

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

编辑:原因似乎是 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
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

Eri*_*ntz 13

首先cd进入你的根目录。然后运行它以找到最大的违规者:

find . -maxdepth 1 -mindepth 1 -type d -exec du -sh {} \; | sort -rh | head
Run Code Online (Sandbox Code Playgroud)

现在 cd 进入其中一个大罪犯并再次运行相同的命令。继续向下浏览目录树,直到找到有问题的文件。

解释:

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

  • `sudo ncdu -x /` 也是一个很好的选择,如果你想浏览文件夹并快速找到最大的文件。 (5认同)
  • “du -xh /|sort -rh|less”不是更容易吗? (3认同)

sca*_*cai 7

您可以安装命令行工具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
Run Code Online (Sandbox Code Playgroud)

  • 以 root 身份启动以查看所有文件,并使用 `-x` 保持在同一个文件系统上:`sudo ncdu -x /` (3认同)

Eli*_*ias 6

您可以使用du(disk usage) 命令,例如:

cd /
sudo du -sh *
Run Code Online (Sandbox Code Playgroud)

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


小智 5

您可以使用 GUI 工具filelight,它通过漂亮的径向图形为您提供磁盘使用情况。您可以直接查看最大的文件夹,检查子目录并单击右键打开目录上的文件管理器或终端。

根目录的 Filelight GUI 窗口

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

  • [baobab](https://wiki.gnome.org/action/show/Apps/DiskUsageAnalyzer?action=show&redirect=Apps%2FBaobab) 相当于 GNOME,`sudo apt install baobab`。 (2认同)