服务器测评网
我们一直在努力

Linux查看磁盘命令有哪些?新手必看常用命令详解

Linux查看磁盘命令详解

在Linux系统中,磁盘管理是系统运维的重要环节,掌握查看磁盘信息的命令能够帮助用户有效监控存储空间、分析磁盘性能以及排查存储相关问题,本文将详细介绍Linux系统中常用的查看磁盘命令,包括dfdulsblkfdisksmartctl等,并说明它们的使用场景、参数选项及实际应用案例。

Linux查看磁盘命令有哪些?新手必看常用命令详解

df命令:文件系统磁盘空间使用情况

df(disk free)命令用于显示Linux文件系统的磁盘空间使用情况,包括已用空间、可用空间、挂载点等信息,该命令适用于快速查看整体磁盘容量分配及剩余空间。

基本语法

df [选项] [文件或目录]  

常用选项

  • -h:以人类可读的格式显示(如KB、MB、GB)。
  • -T:显示文件系统类型。
  • -i:显示inode信息而非块使用情况。
  • --total:汇总所有文件系统的磁盘使用情况。

示例

# 查看所有文件系统的磁盘使用情况(人类可读格式)  
df -h  
# 查看指定目录的磁盘使用情况  
df -h /home  
# 汇总总磁盘使用量  
df -h --total  

输出说明
df命令的输出包含多个列,如Filesystem(文件系统)、Size(总容量)、Used(已用空间)、Avail(可用空间)、Use%(使用率)、Mounted on(挂载点),通过Use%列可以快速判断磁盘是否接近满载,避免系统因磁盘空间不足而出现问题。

du命令:目录或文件磁盘使用量

du(disk usage)命令用于递归查询指定目录或文件的磁盘使用量,适用于分析特定目录或文件占用的空间大小。

基本语法

du [选项] [文件或目录]  

常用选项

  • -h:以人类可读格式显示。
  • -s:仅显示总计大小,不显示子目录详情。
  • -a:显示所有文件的大小,而仅目录。
  • --max-depth=N:限制递归深度为N层。

示例

# 查看当前目录下各子目录的磁盘使用量  
du -h  
# 查看指定目录的总大小  
du -sh /var/log  
# 查看当前目录下所有文件的大小,限制递归深度为1  
du -ha --max-depth=1  

应用场景
当磁盘空间不足时,可通过du命令定位占用空间较大的目录或文件,结合find命令进一步分析或清理无用数据。

# 查找大于1GB的文件  
find / -type f -size +1G  

lsblk命令:列出块设备信息

lsblk(list block devices)命令以树状结构显示块设备信息,包括磁盘分区、挂载点、设备类型等,适合直观查看磁盘与分层的层级关系。

Linux查看磁盘命令有哪些?新手必看常用命令详解

基本语法

lsblk [选项]  

常用选项

  • -f:显示文件系统类型、挂载点等详细信息。
  • -d:不显示子设备(如分区)。
  • -l:使用列表格式而非树状结构。
  • -o NAME,SIZE,FSTYPE,MOUNTPOINT:自定义输出列。

示例

# 以树状结构显示所有块设备  
lsblk  
# 显示文件系统类型和挂载点  
lsblk -f  
# 仅显示磁盘设备(不显示分区)  
lsblk -d  

输出说明
lsblk的输出包含NAME(设备名)、SIZE(大小)、RO(是否只读)、MOUNTPOINT(挂载点)等列,通过NAME列可识别磁盘设备(如sdanvme0n1),而其子设备则表示分区(如sda1sda2)。

fdisk命令:磁盘分区管理

fdisk是一款经典的磁盘分区工具,用于查看、创建、删除或调整磁盘分区,虽然其界面为交互式模式,但功能强大,适合低级磁盘操作。

基本语法

sudo fdisk [选项] [设备文件]  

常用选项

  • -l:列出指定磁盘的分区表信息。
  • -u:显示扇区而非柱面单位。

示例

# 查看所有磁盘的分区信息  
sudo fdisk -l  
# 查看指定磁盘的分区  
sudo fdisk -l /dev/sdb  

交互式操作
运行sudo fdisk /dev/sdb后,可通过以下命令操作分区:

  • p:打印分区表。
  • n:创建新分区。
  • d:删除分区。
  • w:保存更改并退出。
  • q:不保存更改退出。

注意事项
fdisk不支持大于2TB的磁盘分区,对于大容量磁盘,推荐使用partedgdisk命令。

smartctl命令:磁盘健康状态检测

smartctl是SMART(Self-Monitoring, Analysis and Reporting Technology)工具的一部分,用于检测磁盘的健康状态,提前预警硬盘故障。

Linux查看磁盘命令有哪些?新手必看常用命令详解

基本语法

smartctl [选项] [设备文件]  

常用选项

  • -a:显示所有SMART信息。
  • -H:检查磁盘健康状态(是否正常)。
  • -i:显示设备识别信息。

示例

# 检查磁盘健康状态  
sudo smartctl -H /dev/sda  
# 显示磁盘详细信息及SMART属性  
sudo smartctl -a /dev/sda  

关键指标

  • SMART overall-health self-assessment test result:磁盘整体健康状态(通常为“PASSED”或“FAILED”)。
  • Reallocated_Sector_Ct:重分配扇区数,若数值上升表明磁盘存在坏道。
  • Current_Pending_Sector:待处理扇区数,可能预示即将出现的坏道。

其他实用命令

  1. dfdu结合分析磁盘空间
    df显示磁盘空间不足,但du统计结果与df不一致时,可能是由删除的文件仍被进程占用导致,可通过以下步骤排查:

    # 查找占用文件的进程  
    lsof | grep deleted  
  2. mount命令:查看挂载信息
    mount命令用于查看当前已挂载的文件系统,结合-l选项可显示标签信息:

    mount -l  
  3. ncdu工具:交互式磁盘使用分析
    ncdu(NCurses Disk Usage)是du的增强版,提供交互式界面,支持快速导航和删除文件:

    sudo apt install ncdu  # Debian/Ubuntu  
    ncdu /var/log  

Linux提供了丰富的磁盘查看命令,满足不同场景的需求:

  • df:快速查看文件系统整体空间使用情况。
  • du:精确分析目录或文件的磁盘占用。
  • lsblk:直观展示块设备的层级关系。
  • fdisk:管理磁盘分区(适合中小容量磁盘)。
  • smartctl:监控磁盘健康状态,预防数据丢失。

熟练掌握这些命令,并结合grepawk等工具进行过滤和统计,能够高效解决磁盘空间管理、性能优化及故障排查等问题,在实际操作中,建议定期执行磁盘检查命令,建立磁盘使用监控机制,确保系统稳定运行。

赞(0)
未经允许不得转载:好主机测评网 » Linux查看磁盘命令有哪些?新手必看常用命令详解