我的根分区已满,我打算稍微清理一下。但我对分区和文件夹感到困惑。即删除主目录中不需要的文件不会增加 / 分区大小,但如果我列出它,系统会显示另一张图片。
Filesystem Size Used Avail Use% Mounted on
udev 7,8G 0 7,8G 0% /dev
tmpfs 1,6G 1,7M 1,6G 1% /run
/dev/sda8 19G 17G 468M 98% /
tmpfs 7,8G 722M 7,1G 10% /dev/shm
tmpfs 5,0M 4,0K 5,0M 1% /run/lock
tmpfs 7,8G 0 7,8G 0% /sys/fs/cgroup
/dev/loop0 140M 140M 0 100% /snap/slack/24
/dev/loop1 55M 55M 0 100% /snap/core18/1754
/dev/loop4 129M 129M 0 100% /snap/sweethome3d-homedesign/9
/dev/loop5 145M 145M 0 100% /snap/slack/25
/dev/loop6 97M 97M 0 100% /snap/core/9436
/dev/sda2 96M 81M 16M 84% /boot/efi
/dev/sda10 28G 6,1G 21G 23% /home
tmpfs 1,6G 64K 1,6G 1% /run/user/1000
/dev/loop7 55M 55M 0 100% /snap/core18/1880
/dev/loop2 97M 97M 0 100% /snap/core/9665
/dev/sda7 15G 14G 1,7G 89% /media/alex/SASHA
alex@alex-HP-ProBook-430-G4:~$ df /root/
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda8 19091584 17619740 478976 98% /
alex@alex-HP-ProBook-430-G4:~$ df /
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda8 19091584 17619740 478976 98% /
alex@alex-HP-ProBook-430-G4:~$ sudo mount /dev/sda8 /mnt
alex@alex-HP-ProBook-430-G4:~$ cd /mnt/
alex@alex-HP-ProBook-430-G4:/mnt$ ls
bacula-console.conf.ucftmp-iatbDRUGJi bacula-director.conf.ucftmp-iiJ0w1gZEH bacula-fd.conf.ucftmp-3B2f7qUh3a bacula-sd.conf.ucftmp-nBESqCvQnZ bin boot cdrom dev etc home initrd.img initrd.img.old lib lib64 lost+found media mnt opt proc root run sbin snap srv sys tmp usr var vmlinuz vmlinuz.old
alex@alex-HP-ProBook-430-G4:/mnt$
目前还不清楚什么占用了 /dev/sda8 分区的 17G,以及哪些文件夹属于它
答案1
第一次标准清理和更新。
sudo apt-get update
sudo apt-get upgrade
apt-get autoremove
sudo apt-get autoclean
Autoclean 会清理用于安装的下载档案(.gz 或 .tar)。Autoremove 会清理不再需要的库。
然后我们可以开始用 du 搜索大文件夹。
apt 缓存的大小(通常是一个问题)
sudo du -sh /var/cache/apt/archives
find ~/.cache/ -depth -type f -atime +365
删除所有旧的缓存条目,可以更改为任意天数。
find ~/.cache/ -type f -atime +365 -delete
如果没有问题,我也会删除旧日志。
find /var/log/ -type f -atime +10 -name *.gz* -print -exec rm {} \;
houseclean journalctl 超过 10 天
journalctl --vacuum-time=10d
然后,如果不是典型的缓存,我们可以搜索。cd / 或 cd /home
sudo du -hc --max-depth=1
或者然后将最大的文件夹从 / 更改为该文件夹 - /var 作为示例并继续深入:
sudo du -hx --max-depth=1 / 2> /dev/null
sudo du -hx --max-depth=1 /var 2> /dev/null
有一次我忘记挂载我的备份,它把整个东西都放到了 / 中。我几乎没有空间,所以系统没有崩溃,但根目录几乎满了。
您还可以检查大文件夹和文件:
sudo du -h --max-depth=1 / | grep '[0-9]G\>' # folders larger than 1GB
sudo find / -name '*' -size +1G # files larger than 1GB
或者安装 ncdu 并从 / 向下钻取(q 退出):
sudo ncdu /
答案2
磁盘分区大小通常是固定的,因此其中有多少个文件并不重要 - 大小将保持不变,直到您手动更改它。
要查看 /dev/sda8 中的内容,您可以运行:
sudo sfdisk -l | grep ^/dev
和最后两列将显示分区的大小和类型(包含的内容)。