5154

Good Luck To You!

在centos 7中如何查看磁盘使用情况和分区信息的命令是什么?

在CentOS 7服务器的日常运维与管理中,实时、准确地掌握磁盘的使用情况是保障系统稳定运行的关键环节,无论是为了规划存储空间、排查性能瓶颈,还是为了预防磁盘空间耗尽导致的服务中断,系统管理员都需要熟练运用多种命令来查看和分析磁盘信息,本文将详细介绍在CentOS 7中查看磁盘状态的几种核心方法,并通过对比和实例,帮助您根据不同场景选择最合适的工具。

在centos 7中如何查看磁盘使用情况和分区信息的命令是什么?

使用 df 命令查看文件系统磁盘空间

df(Disk Filesystem)命令是最常用、最直接的磁盘空间查看工具,它能够显示文件系统的总容量、已用空间、可用空间以及挂载点信息,为管理员提供一个宏观的磁盘使用概览。

最推荐的用法是结合 -h(human-readable,人类可读格式)和 -T(print file system type,显示文件系统类型)两个选项,这样输出的信息会更加直观易懂。

df -hT

执行上述命令后,您会看到类似以下的输出:

文件系统       类型      容量  已用  可用 已用% 挂载点
/dev/sda3      xfs        50G  4.5G   46G    9% /
devtmpfs       devtmpfs  1.9G     0  1.9G    0% /dev
tmpfs          tmpfs     1.9G     0  1.9G    0% /dev/shm
tmpfs          tmpfs     1.9G  8.6M  1.9G    1% /run
tmpfs          tmpfs     1.9G     0  1.9G    0% /sys/fs/cgroup
/dev/sda1      xfs      1014M  173M  842M   17% /boot

输出字段解析:

  • 文件系统:分区的设备名称,如 /dev/sda3
  • 类型:该分区的文件系统类型,如 xfsext4
  • 容量:分区总大小。
  • 已用:已使用的空间大小。
  • 可用:剩余可用空间大小。
  • 已用%:已用空间占总空间的百分比。
  • 挂载点:该分区挂载到的系统目录。

使用 lsblk 命令查看块设备树状结构

当您需要了解磁盘与分区之间的层级关系时,lsblk(List Block Devices)命令是最佳选择,它能以树状结构清晰地列出所有块设备(磁盘、分区、LVM等),并显示其大小、类型和挂载点。

直接执行 lsblk 即可:

lsblk

输出示例如下:

在centos 7中如何查看磁盘使用情况和分区信息的命令是什么?

NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0   60G  0 disk
├─sda1   8:1    0    1G  0 part /boot
└─sda2   8:2    0   59G  0 part
  ├─centos-root 253:0    0   50G  0 lvm  /
  └─centos-swap 253:1    0    9G  0 lvm  [SWAP]
sr0     11:0    1 1024M  0 rom

从这个输出可以一目了然地看到,系统有一块名为 sda 的60G磁盘,它被分成了两个分区 sda1sda2sda2 是一个LVM物理卷,之上创建了两个逻辑卷 centos-rootcentos-swap,分别挂载在根目录 和作为交换空间使用。

使用 fdisk -l 命令查看磁盘分区详情

fdisk 是一个强大的磁盘分区工具,但使用 -l 选项时,它可以列出指定磁盘或所有磁盘的详细分区表信息,这通常需要 root 权限。

sudo fdisk -l

该命令的输出非常详细,包含了磁盘的几何参数、分区起始和结束扇区、分区ID(系统类型)等底层信息,对于排查分区问题或了解磁盘的精确布局非常有用。

使用 du 命令分析目录或文件占用空间

df 查看整个文件系统不同,du(Disk Usage)命令用于深入到目录级别,统计具体某个目录或文件所占用的磁盘空间,这对于定位大文件、清理无用数据至关重要。

一个实用的组合是 du -h --max-depth=1 /path/to/directory,它可以显示指定目录下一级子目录的大小,并以人类可读的格式呈现。

du -h --max-depth=1 /var

这会列出 /var 目录下所有一级子目录(如 /var/log, /var/cache 等)各自占用的空间,帮助您快速定位空间消耗大户。

命令对比与选择

为了更清晰地选择合适的工具,下表对上述命令进行了小编总结:

在centos 7中如何查看磁盘使用情况和分区信息的命令是什么?

命令 主要用途 输出特点 常用选项组合
df 查看文件系统整体空间使用情况 宏观、按挂载点汇总 df -hT
lsblk 查看块设备及分区层级关系 树状结构、直观展示父子关系 lsblk
fdisk -l 查看磁盘的详细分区表信息 底层、详细、包含扇区信息 sudo fdisk -l
du 分析特定目录或文件的磁盘占用 微观、可递归深入目录 du -h --max-depth=1

相关问答 (FAQs)

问:为什么 dfdu 命令显示的已用空间有时会不一致?

答:这是一个常见现象,主要原因有以下几点:

  1. 已删除但仍被进程占用的文件:当一个文件被删除,但仍有正在运行的进程打开它时,du 统计不到这个文件,因为它已经不在目录树中;但 df 会认为该文件占用的块仍在使用,直到该进程结束。
  2. 文件系统保留空间ext4xfs 等文件系统默认会为 root 用户保留一部分空间(通常是5%),以防系统满盘时无法登录维护。df 的“容量”包含了这部分保留空间,而 du 统计的是普通用户可用的空间。
  3. 硬链接du 在统计时会对硬链接的文件只计算一次大小,而 df 关注的是数据块本身。

问:如何快速找出某个目录下占用空间最大的前10个文件或子目录?

答:可以结合 dusorthead 命令来实现,首先使用 du 递归统计所有子目录和文件的大小(-a),然后通过 sort 进行逆序排序(-r)并采用人类可读的数值排序(-h),最后用 head 取出前10行,命令如下:

du -ah /path/to/directory | sort -rh | head -n 10

这个命令组合是系统管理员进行磁盘空间清理时的“利器”,能够非常高效地定位到空间占用的“元凶”。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2025年11月    »
12
3456789
10111213141516
17181920212223
24252627282930
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
    文章归档
    网站收藏
    友情链接

    Powered By Z-BlogPHP 1.7.3

    Copyright Your WebSite.Some Rights Reserved.