centos怎么查看磁盘是机械还是固态

在 CentOS 系统中,判断磁盘是机械硬盘(HDD)还是固态硬盘(SSD)可以通过以下多种方法实现,以下是具体操作步骤及原理说明:


一、通过 /sys文件系统(推荐)

1. 查看 rotational文件

每个磁盘设备在 /sys/block/目录下对应一个子目录(如 sda、nvme0n1),其 queue/rotational文件的值直接表明磁盘类型:

复制代码
bash 复制代码
cat /sys/block/sda/queue/rotational
  • ​**输出 0**​:表示 SSD(固态硬盘)

  • ​**输出 1**​:表示 HDD(机械硬盘)

​批量查看所有磁盘​:

bash 复制代码
grep -r ^0 /sys/block/*/queue/rotational  # 列出所有 SSD
grep -r ^1 /sys/block/*/queue/rotational  # 列出所有 HDD

二、使用 lsblk命令

lsblk命令可显示磁盘属性,结合 -d -o rota参数直接查看旋转状态:

bash 复制代码
lsblk -d -o NAME,ROTA
  • ​**ROTA=0**​:SSD

  • ​**ROTA=1**​:HDD

​示例输出​:

复制代码
bash 复制代码
NAME   ROTA
sda     0
nvme0n1 0
sdb     1

三、通过 smartctl工具(需安装)

smartctl是 SMART(自我监测与分析技术)工具,可读取硬盘详细信息:

  1. ​安装工具​:

    bash 复制代码
    sudo yum install smartmontools  # CentOS 7/8
  2. ​查看旋转速率​:

    复制代码
    bash 复制代码
    sudo smartctl -i /dev/sda | grep "Rotation Rate"
    • ​SSD ​ 输出:Solid State Device

    • ​HDD ​ 输出:XXX RPM(如 7200 RPM)


四、使用 hdparm命令

hdparm可查询硬盘参数,通过 Nominal Media Rotation Rate判断:

复制代码
bash 复制代码
sudo hdparm -I /dev/sda | grep "Nominal Media Rotation Rate"
  • ​SSD ​ 输出:Solid State Device

  • ​HDD ​ 输出:XXX RPM(如 5400 RPM)


五、通过 lshw命令(需安装)

lshw可列出硬件信息,包含磁盘类型描述:

  1. ​安装工具​:

    bash 复制代码
    sudo yum install lshw
  2. ​查看磁盘信息​:

    复制代码
    bash 复制代码
    sudo lshw -class disk | grep -A 5 "description"
    • ​SSD ​ 描述通常包含 SSD或 Solid State

    • ​HDD ​ 描述通常包含 HDD或 Mechanical


六、其他方法

1. 查看 /proc/partitions

通过分区表间接判断(需结合其他命令):

复制代码
bash 复制代码
cat /proc/partitions
2. 使用 fdisk查看型号
复制代码
bash 复制代码
sudo fdisk -l /dev/sda | grep "Disk model"
  • ​SSD ​ 型号可能包含 SSD、NVMe等关键词

  • ​HDD ​ 型号通常包含 ST(希捷)、WD(西数)等厂商标识


总结与建议

方法 优点 缺点 适用场景
/sys/block/rotational 无需安装工具,直接读取 需已知设备名称(如 sda) 快速检查单个磁盘
lsblk -d -o ROTA 一行命令显示所有磁盘信息 依赖 util-linux包 批量查看多磁盘
smartctl 信息全面(含健康状态) 需安装工具 详细诊断硬盘状态
hdparm 支持更多参数查询 需安装工具 高级用户调试

​推荐优先使用 lsblk或 /sys方法 ,简单高效。若需进一步确认硬盘健康状态,可结合 smartctl进行分析。

相关推荐
程序员-Benothing7 小时前
Vim编辑器从入门到精通:模式、快捷键、配置、插件
linux·运维·服务器
m0_646429977 小时前
Docker 完整核心知识点总结(超通俗易懂版)
运维·docker·容器
‎ദ്ദിᵔ.˛.ᵔ₎8 小时前
linux 进程信号 (上)
linux·服务器
亚川楼宇自控系统数据中心厂家8 小时前
IBMS 集成管理系统:如何打通楼宇自控实现建筑一体化管控
运维
15Moonlight8 小时前
Linux网络(02):Socket 编程 UDP
linux·网络·udp
迪康Defender8 小时前
终端安全审批体系设计:如何平衡安全管控与业务连续性
运维·服务器·安全·运维开发·学习方法·业界资讯·远程工作
wuminyu8 小时前
ForkJoinPool窃取线程在扫描其他WorkQueue时的随机采样算法与Phase线程挂起唤醒机制解析
java·linux·c语言·jvm·c++
liulilittle9 小时前
Linux 下 select 测试函数
linux·服务器·网络·数据库·c++·select·c
DongQiShanRen9 小时前
玄龙(上):TICK 主循环——意识心跳怎么跳
linux·jvm·数据库·人工智能·数据挖掘·rust
小此方9 小时前
Linux网络(二十一):深入理解 TCP 异常处理:网线断开、Keepalive 保活机制与 Linux 内核传输层协议源码剖析
linux·网络·tcp/ip