Linux物理机区分SSD与HDD的常见方法

 更新时间:2025年09月10日 09:36:40   作者:XMYX-0  
在 Linux 系统中,我们经常需要确认一块硬盘究竟是 固态硬盘 (SSD) 还是 机械硬盘 (HDD),以便做合理的存储规划和性能评估,本文给大家介绍了Linux物理机区分SSD与HDD的常见方法,需要的朋友可以参考下

引言

在 Linux 系统中,我们经常需要确认一块硬盘究竟是 固态硬盘 (SSD) 还是 机械硬盘 (HDD),以便做合理的存储规划和性能评估。

在直连硬盘的场景下,方法很简单,但在企业级服务器(例如 DELL 服务器配合 PERC RAID 控制器)上就容易遇到“看不准”的情况。本文结合 PERC H730 Mini 控制器,介绍几种常见方法。

常见方法(直通盘场景下有效)

在没有 RAID 控制器干预时,可以直接在 Linux 下查看硬盘类型。

通过 rotational 标志

cat /sys/block/sda/queue/rotational
  • 1 → 旋转磁盘(HDD)
  • 0 → 固态硬盘(SSD)

通过 lsblk

lsblk -d -o name,rota,model,size

示例输出:

NAME ROTA MODEL               SIZE
sda     1 ST2000DM008-2FR1   1.8T  # HDD
sdb     0 Samsung SSD 860    500G  # SSD

通过 smartctl

smartctl -i /dev/sda | grep Rotation

输出:

  • Rotation Rate: 7200 rpm → HDD
  • Rotation Rate: Solid State Device → SSD

为什么在企业级服务器上这些方法可能不准?

DELL PERC H730 Mini 为例,它是基于 LSI MegaRAID 芯片的硬件 RAID 控制器。
当服务器通过 RAID 卡创建虚拟磁盘时,操作系统看到的并不是物理硬盘,而是 RAID 卡虚拟出来的逻辑卷。

因此:

  • /sys/block/*/queue/rotational 会统一显示为 1(即 HDD)
  • lsblksmartctl 获取的信息也可能不完整
  • 无法区分底层物理盘是 HDD 还是 SSD

正确方法:使用 PERC CLI 工具

安装 perccli

从 Dell 官方下载并安装 perccli RPM 包:

tar xf PERCCLI_7.2616.0_Linux.tar.gz
rpm -ivh perccli-*.rpm

工具路径一般在:

/opt/MegaRAID/perccli/perccli64

查看控制器信息

/opt/MegaRAID/perccli/perccli64 show

输出会包含 RAID 控制器型号,例如:

Model = PERC H730 Mini

查看物理磁盘信息

/opt/MegaRAID/perccli/perccli64 /c0 /eall /sall show

示例输出:

EID:Slt DID State DG     Size Intf Med SED PI SeSz Model
32:0      0 Onln   0 1.818 TB SAS  HDD N   N  512B MG04SCA20ENY
32:1      1 Onln   0 1.818 TB SAS  HDD N   N  512B MG04SCA20ENY
32:2      2 Onln   1 1.745 TB SATA SSD N   N  512B INTEL SSDSC2KB019TZ
32:3      3 Onln   1 1.745 TB SATA SSD N   N  512B INTEL SSDSC2KB019TZ
32:4      4 Onln   1 1.745 TB SATA SSD N   N  512B INTEL SSDSC2KB019TZ
32:5      5 Onln   1 1.745 TB SATA SSD N   N  512B INTEL SSDSC2KB019TZ

其中 Med 字段即为硬盘介质类型:

  • HDD → 机械硬盘
  • SSD → 固态硬盘

总结

  • 在普通直通硬盘的 Linux 系统上,可以用 rotationallsblksmartctl 来区分 SSD 和 HDD。
  • 在企业级服务器上,若使用 硬件 RAID 控制器(如 DELL PERC H730 Mini),这些方法可能失效。
  • 此时需要使用 Dell 官方工具 perccli 或进入 RAID BIOS (Ctrl+R),才能看到底层物理磁盘的真实类型。

这就是为什么在数据中心环境下,很多运维人员会误判硬盘类型的原因。

安装 perccli 方法

从 Dell 官方下载

通常下载到的是一个 RPM 包,例如:

perccli-007.1613.0000.0000-1.noarch.rpm

使用 rpm 安装

假设你已经把 perccli 的 rpm 包放到服务器上:

# 安装 rpm 包
rpm -ivh perccli-*.rpm

安装完成后,一般路径在:

/opt/MegaRAID/perccli/perccli64

到此这篇关于Linux物理机区分SSD与HDD的常见方法的文章就介绍到这了,更多相关Linux物理机区分SSD与HDD内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Apache Kafka 跨集群复制实现方案详解

    Apache Kafka 跨集群复制实现方案详解

    本文介绍Apache Kafka 跨集群复制实现方案,文章比较了Kafka中的跨集群复制方案,包括MirrorMaker1和MirrorMaker2,MirrorMaker2基于KafkaConnect框架,支持双向复制、自动消费者组同步、自动Topic创建等特性,是当前推荐方案,感兴趣的朋友跟随小编一起看看吧
    2026-01-01
  • .htaccess设置指南经典说明

    .htaccess设置指南经典说明

    .htaccess 会降低APACHE的性能,除非你对目录权限要求很高或需要做UrlRewrite,否则不推荐你使用.
    2008-04-04
  • Ubuntu20.04内存不足导致无法开机的解决方法

    Ubuntu20.04内存不足导致无法开机的解决方法

    Ubuntu因内存不足无法启动时,需进入恢复模式删除冗余文件释放内存,或通过虚拟机扩展硬盘并用gparted调整分区扩容,最后重启系统以恢复正常运行,本文通过图文给大家介绍的非常详细,需要的朋友可以参考下
    2025-06-06
  • Ubuntu常见错误问题的解决方法小结

    Ubuntu常见错误问题的解决方法小结

    最近经常使用ubuntu,难免会遇到各种各样的问题。所以想着记录下来,方便自己和大家以后需要的时候查看参考,文中介绍的很详细,相信对大家学习或者使用Ubuntu能有一定的参考借鉴价值,感兴趣的朋友们下面来一起看看吧。
    2016-11-11
  • Linux手动部署Oracle JDK 17的完全指南

    Linux手动部署Oracle JDK 17的完全指南

    本文手把手教你在 Linux 系统上通过官方 tar.gz 压缩包手动安装 Oracle JDK 17,涵盖旧版清理、下载解压、环境变量配置、多版本管理及常见问题排查,适用于 Ubuntu / CentOS / Debian 等主流发行版,需要的朋友可以参考下
    2026-05-05
  • 详解Linux系统中的tempfs与/dev/shm

    详解Linux系统中的tempfs与/dev/shm

    /dev/shm是Linux非常有用的一个目录,它就是所谓的tmpfs,也可以称之为临时文件系统(不是块设备),类似oracle中的临时表空间一样,用于加速和优化系统。下面这篇文章主要给大家介绍了Linux系统中tempfs与/dev/shm的相关资料,需要的朋友可以参考下。
    2017-02-02
  • 在lnmp环境中的nginx编译安装

    在lnmp环境中的nginx编译安装

    本篇文章给大家分享了在lnmp环境中的nginx编译安装的相关步骤以及需要注意的地方,有兴趣的朋友参考学习下。
    2018-04-04
  • linux服务器安装PHP扩展zip,zlib方法

    linux服务器安装PHP扩展zip,zlib方法

    下面小编就为大家分享一篇linux服务器安装PHP扩展zip,zlib方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-03-03
  • SSH设置别名访问远程服务器详细介绍

    SSH设置别名访问远程服务器详细介绍

    这篇文章主要介绍了SSH设置别名访问远程服务器详细介绍的相关资料,需要的朋友可以参考下
    2017-06-06
  • linux下搭建scala环境并写个简单的scala程序

    linux下搭建scala环境并写个简单的scala程序

    今天小编就为大家分享一篇关于linux下搭建scala环境并写个简单的scala程序,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-04-04

最新评论