Linux系统如何查看硬盘信息、使用率、健康状态及分区详情?

在Linux系统中,查看硬盘信息是系统管理、故障排查和容量规划的基础操作,Linux提供了多种命令和工具,帮助用户从不同维度获取硬盘的详细信息,包括设备识别、分区结构、使用情况、健康状态等,本文将详细介绍常用命令的使用方法及输出解读,并通过表格对比不同工具的特点,最后附上常见问题解答。

linux如何看硬盘信息

基础信息查看:识别硬盘设备

lsblk:列出块设备信息

lsblk(list block devices)是Linux中最常用的块设备查看工具,以树状结构显示硬盘及其分区信息,无需root权限即可运行。
常用选项:

  • -l:以列表形式输出(默认为树状)。
  • -f:显示文件系统信息(如UUID、挂载点)。
  • -d:只显示磁盘设备,不显示分区。
  • -m:显示设备所有者和权限信息。

示例输出:

NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT  
sda      8:0    0  100G  0 disk  
├─sda1   8:1    0   50G  0 part /  
└─sda2   8:2    0   50G  0 part /home  
sdb      8:16   1  1.8T  0 disk  
└─sdb1   8:17   1  1.8T  0 part /data  
sr0     11:0    1 1024M  0 rom  

字段解读:

  • NAME:设备名(sda为第一块SATA硬盘,sdb为第二块,sr0为光驱)。
  • MAJ:MIN:主设备号和次设备号,用于内核识别设备。
  • RM:是否为可移动设备(1表示可移动,如U盘;0表示固定硬盘)。
  • SIZE:设备总容量。
  • RO:是否为只读设备(0表示可读写)。
  • TYPE:设备类型(disk为磁盘,part为分区,rom为光驱)。
  • MOUNTPOINT:挂载点(未挂载时显示为空)。

lshw:列出硬件详细信息

lshw(list hardware)是一款功能强大的硬件信息查看工具,可显示硬盘的型号、序列号、接口类型(如SATA、NVMe)等详细信息,需root权限。
常用选项:

  • class disk:仅显示磁盘类硬件信息。
  • -short:简化输出,仅显示关键信息。

示例输出:

*-disk:0  
   description: SCSI Disk  
   product: Samsung SSD 870 EVO  
   vendor: Samsung  
   physical id: 0.0.0  
   bus info: scsi@0:0.0.0  
   logical name: /dev/sda  
   version: 2B6Q  
   serial: S3Z8NB0K123456  
   size: 931.51GiB (1TB)  
   capacity: 931.51GiB (1TB)  
   width: 64 bits  
   clock: 300MHz  
   capabilities: partitioned partitioned:dos  
   configuration: ansiversion=5 signature=00000000 sectorsize=512  

分区信息查看:分析分区结构

fdisk:磁盘分区表工具

fdisk是经典的分区管理工具,可查看磁盘的分区表类型(MBR/GPT)及分区详情,需root权限。
常用选项:

  • -l:列出所有磁盘的分区信息。

示例输出:

Disk /dev/sda: 931.51 GiB, 1000204886016 bytes, 1953525168 sectors  
Disk model: Samsung SSD 870 EVO  
Units: sectors of 1 * 512 = 512 bytes  
Sector size (logical/physical): 512 bytes / 512 bytes  
I/O size (minimum/optimal): 512 bytes / 512 bytes  
Disklabel type: gpt  
Disk identifier: 12345678-9012-3456-7890-ABCDEF123456  
Device     Start        End   Sectors  Size Type  
/dev/sda1   2048   104857599  104855552   50G Linux filesystem  
/dev/sda2 104857600 1953523711 1848666112 871.5G Linux filesystem  

关键信息:

  • Disklabel type:分区表类型(gpt为GUID分区表,支持2TB以上硬盘;dos为MBR,最大支持2TB)。
  • Device:分区设备名(sda1为第一个分区)。
  • Sectors/Size:分区起始扇区、总扇区数及容量。

parted:高级分区工具

parted支持GPT/MBR分区表,可查看分区对齐、文件系统类型等高级信息,适合处理大容量磁盘。
常用选项:

linux如何看硬盘信息

  • -l:列出所有磁盘分区信息。

示例输出:

Model: Samsung SSD 870 EVO (scsi)  
Disk /dev/sda: 1000GB  
Sector size (logical/physical): 512B/512B  
Partition Table: gpt  
Disk Flags: 
Number  Start   End     Size    File system  Name  Flags
 1      1049kB  53.7GB  53.7GB  ext4               boot, 
 2      53.7GB  1000GB  947GB   ext4              

使用情况统计:磁盘空间分析

df:文件系统磁盘使用情况

df(disk free)用于查看已挂载文件系统的空间使用率,支持按文件系统或inode统计。
常用选项:

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

示例输出:

Filesystem     Type      Size  Used Avail Use% Mounted on  
/dev/sda1      ext4       50G   20G   28G  42% /  
/dev/sda2      ext4      871G  150G  676G  18% /home  
tmpfs          tmpfs      16G     0   16G   0% /dev/shm  

du:目录/文件磁盘占用

du(disk usage)用于统计指定目录或文件的磁盘占用空间,常配合sort或find使用。
常用选项:

  • -sh:以人类可读格式显示总计(s汇总,h人性化)。
  • --max-depth=N:限制统计层级(如--max-depth=1仅统计一级子目录)。

示例输出:

2G    /home/user/documents  
5.6G    /home/user/videos  
7.8G    /home/user  

硬盘健康与性能检测

smartctl:S.M.A.R.T.信息监控

smartctl(来自smartmontools工具包)可读取硬盘的S.M.A.R.T.(Self-Monitoring, Analysis and Reporting Technology)数据,用于评估硬盘健康状态,需root权限。
常用选项:

  • -a:显示所有S.M.A.R.T.信息。
  • -H:仅显示健康状态(如“PASSED”或“FAILED”)。

示例输出:

SMART overall-health self-assessment test result: PASSED  
Device Model: Samsung SSD 870 EVO  
Serial Number: S3Z8NB0K123456  
Total NVM Blocks: 1562500000  
...  
Attribute Name          ID    Flag     Value   Worst Threshold  
Power_On_Hours          9     0x0032   1234   0    0  
Media_Wearout_Indicator 177   0x0013   98     0    10  

关键指标:

  • Power_On_Hours:通电时间(小时),反映硬盘使用强度。
  • Media_Wearout_Indicator:介质磨损指标(0-100),越低表示寿命损耗越大。

hdparm:硬盘性能与参数测试

hdparm用于查看或修改硬盘参数,支持读取缓存大小、传输模式等,也可进行简单的速度测试。
常用选项:

linux如何看硬盘信息

  • -I:显示硬盘识别信息(如ATA标准、支持的特性)。
  • -tT:进行缓存读取速度测试(-t为缓冲区测试,-T为缓存测试)。

示例输出:

/dev/sda:  
ATA device, with non-removable media  
Model Number: Samsung SSD 870 EVO  
Serial Number: S3Z8NB0K123456  
Firmware Revision: 2B6Q  
...  
Timing cached reads:   12345 MB/sec  
Timing buffered disk reads: 678 MB/sec  

工具对比与适用场景

为方便快速选择工具,以下通过表格对比主要命令的特点:

命令/工具 主要用途 需要root 输出重点 适用场景
lsblk 列出块设备及分区结构 否 设备名、大小、挂载点 快速查看设备基本信息
lshw 硬件详细信息(型号、序列号) 是 硬件厂商、接口类型、容量 硬件资产盘点、故障定位
fdisk 分区表管理与分析 是 分区类型、起始/结束扇区 MBR/GPT分区查看与修改
parted 高级分区操作(支持GPT) 是 分区对齐、文件系统类型 大容量磁盘、分区优化
df 已挂载文件系统空间使用 否 使用率、剩余空间 实时监控磁盘空间
du 目录/文件空间占用统计 否 目录层级、文件大小 定位大文件、清理冗余数据
smartctl S.M.A.R.T.健康状态监控 是 硬盘寿命、错误计数、通电时间 硬件故障预警、性能评估
hdparm 硬盘参数与性能测试 是 缓存大小、传输模式、速度测试 性能测试、参数优化

相关问答FAQs

Q1: 如何查看硬盘的通电时间和读写次数?
A: 使用smartctl命令结合grep过滤关键字,

sudo smartctl -a /dev/sda | grep -E "Power_On_Hours|Total_LBAs_Written|Total_LBAs_Read"

输出示例:

Power_On_Hours:             1234 (hour)  
Total_LBAs_Written:         123456789 (sector)  
Total_LBAs_Read:            987654321 (sector)  

Power_On_Hours为通电时间,Total_LBAs_Written/Read为累计写入/读取的扇区数(可通过扇区大小×扇区数换算为容量)。

Q2: 为什么df命令显示的已用空间与du命令统计的不一致?
A: 主要原因有以下几点:

  1. 文件缓存:df统计的是磁盘块实际占用空间,而du默认不统计已删除但仍在缓存中的文件(可通过du --exclude=lost+found排除)。
  2. 保留空间:df包含文件系统为root用户保留的空间(默认5%),而du统计的是用户实际使用的空间。
  3. 挂载点子目录:若目录被挂载到子目录(如/home挂载到/dev/sda2),du /home可能未统计子目录中的其他文件系统。
  4. inode占用:若文件数量过多导致inode耗尽,df可能显示空间未满,但du无法统计新文件。

可通过df -i查看inode使用情况,或使用df -B 1和du -b -x --max-depth=1(以字节为单位,排除其他文件系统)缩小差异。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/37428.html

赞 (0)
酷番叔酷番叔
上一篇 2025年10月7日 04:38
下一篇 2025年10月7日 04:52

相关推荐

  • Linux中如何添加IP映射?

    在Linux系统中,IP映射是一个常见需求,主要涉及静态IP地址配置、端口转发(NAT)以及本地域名解析映射,本文将详细介绍这三种常见IP映射的配置方法,包括操作步骤、命令示例及注意事项,帮助用户在不同场景下实现IP映射需求,静态IP地址映射(网络接口配置)静态IP映射是指为Linux服务器的网络接口(如eth……

    2025年10月4日
    17900
  • Linux环境下刷机Kali Linux的操作步骤是什么?

    在Linux环境下为不同设备安装Kali Linux(俗称“刷机”)是一个涉及系统镜像准备、设备连接和写入操作的过程,Kali Linux作为渗透测试和安全审计专用系统,支持多种硬件平台,包括树莓派等嵌入式设备、虚拟机以及部分Android手机,以下将以树莓派、虚拟机和Android设备为例,详细说明在Linu……

    2025年9月23日
    18300
  • Linux无图形桌面如何上网?

    Linux无图形桌面环境下,网络配置与管理需通过命令行工具完成,常见于服务器运维、开发环境部署等场景,本文将详细介绍有线/无线网络连接、静态IP配置、代理设置、连通性测试及故障排查等核心操作,帮助用户高效实现无图形界面的网络管理,有线网络配置查看网卡状态使用ip命令(现代Linux发行版推荐,已替代传统ifco……

    2025年8月26日
    24600
  • Linux系统中如何添加一条永久有效的静态路由?

    在Linux系统中,路由表是网络数据包转发的重要依据,它决定了数据包的传输路径,当需要让Linux系统访问特定网络或通过特定网关通信时,就需要手动添加路由条目,本文将详细介绍Linux系统中添加临时路由和永久路由的方法,包括常用命令参数、不同发行版的配置差异及注意事项,路由的基本概念Linux路由表记录了目标网……

    2025年10月5日
    29700
  • Linux图形界面与命令行如何快速粘贴?

    图形界面(GUI)复制粘贴适用于GNOME、KDE、XFCE等桌面环境,操作与Windows/macOS类似:鼠标操作选中文本/文件 → 右键点击 → 选择”复制”(Copy) → 到目标位置右键点击 → 选择”粘贴”(Paste),文件管理器:直接拖拽文件到目标文件夹即完成复制(按住Ctrl拖拽为移动),通用……

    2025年7月8日
    22000

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信