查看磁盘剩余情况
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