【Linux】磁盘空间清理

查看磁盘剩余情况

df(disk free) 命令用于显示目前在 Linux 系统上的文件系统磁盘使用情况统计。

  • -a :列出所有的文件系统,包括系统特有的 /proc 等文件系统;
  • -k :以 KBytes 的容量显示各文件系统;
  • -m :以 MBytes 的容量显示各文件系统;
  • -h :以人们较易阅读的 GBytes, MBytes, KBytes 等格式自行显示;
  • -H :以 M=1000K 取代 M=1024K 的进位方式;
  • -T :显示文件系统类型, 连同该 partition 的 filesystem 名称 (例如 ext3) 也列出;
  • -i :不用硬盘容量,而以 inode 的数量来显示

df -h以确定是否真的剩余空间不足。

查看磁盘使用情况

du (disk usage)命令用于显示指定的目录或文件所占用的磁盘空间。

  • -s:对每个Names参数只给出占用的数据块总数。
  • -a:递归地显示指定目录中各文件及子目录中各文件占用的数据块数。若既不指定-s,也不指定-a,则只显示Names中的每一个目录及其中的各子目录所占的磁盘块数。
  • -b:以字节为单位列出磁盘空间使用情况(系统默认以k字节为单位)。
  • -k:以1024字节为单位列出磁盘空间使用情况。
  • -c:最后再加上一个总计(系统默认设置)。
  • -l:计算所有的文件大小,对硬链接文件,则计算多次。
  • -x:跳过在不同文件系统上的目录不予统计。
  • -h:以K,M,G为单位,提高信息的可读性。
  • --exclude=<目录或文件>:略过指定的目录或文件。
  • --max-depth=<目录层数>:超过指定层数的目录后,予以忽略。

当前目录下磁盘使用情况

进入df -h挂载的目录下,然后执行下面的命令查找占用大的文件夹:

du -h --max-depth=1

按文件大小降序

进入文件夹后,使用下面的命令查找最大的10个文件:

ll -Sh | head

递归所有目录

也可以递归所有目录:

du -ah

选出最大的10个文件

du -s * | sort -nr | head -10

文件大小没有显示单位,可以使用 find 命令查找对应文件。

查看是否已删除的文件未释放磁盘空间

如果使用du -h --max-depth=1命令发现占用远小于df -h显示的大小,可以使用下面命令查看是否有未释放的磁盘空间(单位:Byte):

lsof | grep deleted

【Linux】磁盘空间清理

上一篇:wpf 的style


下一篇:完整地扒一个C#程序