1 查看磁盘与目录容量(df、du)
df -h //列出文件系统的整体磁盘使用量
在显示的结果中要特别留意根目录的剩余容量(上图红框中的),因为所有的数据都是从根目录衍生出来的,因此当根目录的剩余容量为0时,系统的问题就很大了。
df -ih //不用硬盘容量,而以inode的数量来显示
当inode使用率达到100%时,即使硬盘空间还有剩余,也无法在目录下放置新文件了。
du -h //分别显示本路径下目录/文件大小
du -sh //显示本目录磁盘总占用
sudo du --max-depth=1 -h //在根目录通过该命令查找具体哪个目录过大导致根分区占满
2 查看磁盘分区(fdisk、lsblk)
fdisk -l //查看磁盘分区情况
可以看到当前系统内有两块硬盘,磁盘文件名为/dev/sda和/dev/sdb,容量分别均为240G,如果要查看磁盘的详细内容,可以用fdisk /dev/sda命令去查看。注意/dev/sda后不要加上数字,加上数字变成该磁盘上的某一分区了,会使fdisk命令报错。
lsblk
lsblk命令的英文是“list block”,即用于列出所有可用块设备的信息,而且还能显示他们之间的依赖关系。
3 df、du、fdisk、lsblk的区别
-
df主要是检查文件系统磁盘占用情况,所以这里可以看到文件系统
-
du主要是检查磁盘空间占用情况,统计目录或者文件大小的。
-
fdisk一般用来磁盘分区,也可以用来查看磁盘分区情况。
这里可以看到/dev/sdb和/dev/sda两个磁盘,但是在df命令中看不到/dev/sda,因为/dev/sda上面没有跑文件系统。 -
lsblk命令用于列出所有可用块设备的信息,而且还能显示他们之间的依赖关系,这个命令很好用,因为可以让电脑上的磁盘和分区信息很清晰。
4 df、du、fdisk、lsblk指令详细介绍
1、df指令:
功能描述:df命令用于显示文件系统的磁盘空间使用情况。它可以列出文件系统的总大小、已用空间、可用空间以及挂载点等相关信息。
语法:df [选项] [目录]
常用选项:
-h, --human-readable:以人类可读的方式显示磁盘空间大小。
-a, --all:显示包括特殊文件系统在内的所有文件系统。
-i, --inodes:显示磁盘空间的inode统计信息。
-T, --print-type:显示文件系统类型。
使用示例:
df:显示所有挂载点的磁盘空间使用情况。
df -h /path/to/directory:显示指定目录所在文件系统的磁盘空间使用情况。
df -T:显示文件系统类型。
2、du指令:
功能描述:du命令用于估算目录或文件的磁盘空间使用情况。它可以递归地统计目录下所有文件和子目录的磁盘空间占用量,并按照大小进行排序。
语法:du [选项] [目录或文件]
常用选项:
-h, --human-readable:以人类可读的方式显示磁盘空间大小。
-s, --summarize:仅显示总计大小。
-a, --all:显示包括隐藏文件在内的所有文件和目录。
-c, --total:显示总计大小。
-d N, --max-depth=N:指定递归层级深度。
使用示例:
du:显示当前目录及子目录的磁盘空间使用情况。
du -h /path/to/directory:显示指定目录的磁盘空间使用情况。
du -sh /path/to/directory:显示指定目录的总计磁盘空间使用情况。
3、fdisk指令:
功能描述:fdisk命令用于对磁盘进行分区操作。它提供了创建、删除、查看和修改磁盘分区的功能,可以管理硬盘上的分区表和分区类型。
语法:fdisk [选项] <设备>
常用选项:
-l, --list:列出所有磁盘分区表信息。
-p, --print:打印当前已经定义的分区。
-u, --units[=<单位>]:设置显示分区大小的单位。
使用示例:
fdisk -l:列出系统中所有磁盘分区的信息。
fdisk /dev/sda:进入/dev/sda硬盘的交互模式。
fdisk -p /dev/sda:打印/dev/sda硬盘的分区信息。
4、lsblk
功能描述:
lsblk命令用于列出Linux系统中的块设备及其相关信息,如硬盘、SSD、USB驱动器等。它可以显示设备名称、挂载点、大小、类型、标签、模型和序列号等信息。
语法:
lsblk [选项]
常用选项:
-a:显示所有设备,包括空设备。
-b:以字节为单位显示设备大小。
-d:仅显示磁盘设备,排除分区设备。
-f:显示文件系统详细信息。
-h:以人类可读的格式显示设备大小。
-i:显示设备拥有者和组信息。
-m:使用对齐的输出格式。
-n:不打印列标题。
-P:以key=value的形式显示设备信息。
-o <字段>:自定义输出字段。
使用示例:
列出所有块设备及其挂载点:
shell
lsblk
显示所有设备的详细信息:
shell
lsblk -f
以字节为单位显示设备大小:
shell
lsblk -b
仅显示磁盘设备:
shell
lsblk -d
自定义输出字段,只显示设备名称和挂载点:
shell
lsblk -o NAME,MOUNTPOINT