当驱动器已满时查找最大的目录/文件

当驱动器已满时查找最大的目录/文件

当 Ubuntu 20.04 服务器的驱动器已满时,我们如何找出大小最大的目录/文件(从大到小排列)?这可以让我找到一些要删除的文件(可能是日志文件)

尝试安装ncdu但空间不足

# sudo apt install ncdu
Reading package lists... Error!
E: Write error - write (28: No space left on device)
E: Write error - write (28: No space left on device)
E: The package lists or status file could not be parsed or opened.

du已尝试sort,但由于磁盘空间不足,无法运行。

# du --max-depth=7 /* | sort -n 
sort: write failed: /tmp/sort5SKbZn: No space left on device

df -h输出

# df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            474M     0  474M   0% /dev
tmpfs            99M   11M   88M  12% /run
/dev/vda1        25G   25G     0 100% /
tmpfs           491M   40K  491M   1% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           491M     0  491M   0% /sys/fs/cgroup
/dev/loop0       56M   56M     0 100% /snap/core18/2066
/dev/loop2       68M   68M     0 100% /snap/lxd/20326
/dev/vda15      105M  7.9M   97M   8% /boot/efi
tmpfs            99M     0   99M   0% /run/user/0
overlay          25G   25G     0 100% /var/lib/docker/overlay2/183819e24cd73185c27ef0af229e31e909f4af51dd7a4e0178eeab68a2f924e1/merged
/dev/loop3       33M   33M     0 100% /snap/snapd/12398
/dev/loop4       56M   56M     0 100% /snap/core18/2074
shm              64M   16K   64M   1% /var/lib/docker/containers/fdcf13f925676b32eaac67a55ff245d4ed7f0c91c78db26169106af56b15e77f/mounts/shm
/dev/loop5       71M   71M     0 100% /snap/lxd/21029
/dev/loop6       33M   33M     0 100% /snap/snapd/12704

答案1

如果您可以ssh从另一台机器执行此操作,那么您可以将输出通过管道传输到sort未满的机器上。假设您有两台机器 -- slim(其硬盘未满)和full,其硬盘已满。

从命令提示符开始slim

ssh user@full 'du -sh /' | sort -h

第一部分:

ssh user@full 'du -sh /'

生成输出full。管道| sort -h正在运行本地这样slim您就不会收到有关磁盘空间的错误。

相关内容