前言

系统磁盘使用率达到100%的时候,会出现很多异常,这时候只能通过终端去一步步找出并删除垃圾文件

演示

针对文件夹

l# du -sh /var/* | sort -h
0       /var/lock
0       /var/run
4.0K    /var/local
4.0K    /var/mail
4.0K    /var/opt
24K     /var/spool
40K     /var/crash
64K     /var/snap
2.1M    /var/backups
35M     /var/tmp
100M    /var/cache
1.8G    /var/lib
1.8G    /var/log
l# 

/var/是需要排除的目录,如果不确定是哪个请直接使用/

l# du -sh --exclude=/proc /* | sort -h
0       /bin
0       /lib
0       /lib32
0       /lib64
0       /libx32
0       /sbin
0       /sys
4.0K    /data
4.0K    /media
4.0K    /mnt
4.0K    /srv
16K     /lost+found
16K     /opt
252K    /dev
1.3M    /run
6.1M    /etc
20M     /tmp
127M    /boot
1.5G    /liuyi
1.5G    /snap
2.1G    /root
3.7G    /var
4.4G    /usr
6.0G    /home

--exclude=/proc:表示忽略这个目录/proc,只有查询/的时候才需要忽略

从结果中,可以看到,/home/目录占用最大,我们可以再看这个目录的信息

l# du -sh  /home/* | sort -h               
28K     /home/lighthouse
6.0G    /home/ml
l#      

然后以此类推,找出最终需要删除的文件即可

针对文件

由于du命令获取文件大小耗时较长,所以如果确定了文件所在,可以使用ls命令进行排序

ls -lSrh /home/ml | grep -v ^d
  • ls -lSr 命令用于列出当前目录下的文件,并按照文件大小从小到大排序
  • grep -v ^d:表示不显示文件夹对象

效果

liuyi@l ~ % ls -lSrh /home/ml | grep -v ^d
total 16M
-rw-rw-r--  1 ml ml   25 Mar 24 15:27 pypi.txt
-rw-rw-r--  1 ml ml  209 Mar  5 15:18 plugin.json
-rw-rw-r--  1 ml ml 1.8K Mar 11 15:12 function.js
-rw-------  1 ml ml 5.6K Apr  4 12:01 nohup.out
-rw-r--r--  1 ml ml 103K Apr  9 15:35 markdown-editor.zip
-rw-r--r--  1 ml ml 1.6M Apr  9 14:43 niRvana_v2.0.2.zip
-rwxr-xr-x  1 ml ml  14M Mar  8 22:39 alist
liuyi@l ~ % 

然后找到需要删除的文件进行删除即可