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

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


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

1. 查看 rotational文件

每个磁盘设备在 /sys/block/目录下对应一个子目录(如 sdanvme0n1),其 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 ​ 描述通常包含 SSDSolid State

    • HDD ​ 描述通常包含 HDDMechanical


六、其他方法

1. 查看 /proc/partitions

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

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

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


总结与建议

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

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

相关推荐
极小狐11 小时前
比 Cursor 更丝滑的 AI DevOps 编程智能体 - CodeRider-Kilo 正式发布!
运维·人工智能·devops
Sunlightʊə11 小时前
2.登录页测试用例
运维·服务器·前端·功能测试·单元测试
Red丶哞11 小时前
Docker 安装部署Prometheus
linux·云原生·容器·kubernetes
利刃大大12 小时前
【高并发服务器:HTTP应用】十六、HttpContext上下文模块 && HttpServer服务器模块&& 服务器测试
运维·服务器·http·高并发·项目
吃饭最爱12 小时前
Elasticsearch的用法
运维·jenkins
emiya_saber13 小时前
Linux 文件系统基本管理
linux·运维·服务器
夜月yeyue13 小时前
Linux 内核驱动加载机制
linux·服务器·stm32·嵌入式硬件
好记忆不如烂笔头abc13 小时前
Oracle19c rac两节点实例test,在节点1查看监听状态没有test1,但在节点2可以看到test2
运维·服务器
牢七13 小时前
Linux新
linux
初学者_xuan13 小时前
零基础新手小白快速了解掌握服务集群与自动化运维(十八)Ansible自动化模块--安装与入门
运维·自动化·ansible