百度
360搜索
搜狗搜索

linux如何区分磁盘类型详细介绍

在 Linux 系统中,可以通过多种方式区分磁盘类型(如 HDD、SSD、NVMe 等),以下是常用方法:

1. 通过 lsblk 命令(推荐)

lsblk 可显示块设备信息,其中 rota 字段表示是否为旋转磁盘(HDD):

  • rota=1:旋转磁盘(HDD,机械硬盘)
  • rota=0:非旋转磁盘(SSD,固态硬盘)

bash

 lsblk  NAME,SIZE,ROTA,TYPE,MOUNTPOINT

  • 说明
    • TYPE=disk 表示物理磁盘,part 表示分区。
    • nvme0n1 通常为 NVMe SSD(名称以 nvme 开头),sda 等以 sd 开头的可能是 HDD 或 SATA SSD,需结合 ROTA 判断。

2. 通过 /sys 系统文件(底层方法)

每个磁盘设备在 /sys/class/block/ 下有对应的目录,其中 queue/rotational 文件的值表示是否为旋转磁盘:

  • 0:非旋转磁盘(SSD)
  • 1:旋转磁盘(HDD)

bash

/sys/class/block/sda/queue/rotational

3. 通过 smartctl 命令(详细信息)

smartctl 可查询磁盘的 SMART 信息,直接显示是否为 SSD(需安装 smartmontools 包):
bash

 smartctl  /dev/sda  

4. 通过设备名称前缀快速判断

磁盘类型通常与设备名称前缀相关:

设备前缀 类型 示例
nvme NVMe SSD /dev/nvme0n1
sd SATA/SCSI 设备 /dev/sda(可能是 HDD 或 SATA SSD,需结合 ROTA
mmcblk 移动存储(SD 卡等) /dev/mmcblk0
vd 虚拟磁盘(如虚拟机磁盘) /dev/vda

5. 通过 dmesg 查看启动日志

系统启动时会输出磁盘硬件信息,包含类型描述:
bash

    

6. 通过 udisksctl 命令(图形化工具底层接口)

udisksctl 可获取磁盘的详细属性,包括是否为固态设备:
bash

 udisksctl info  /dev/sda  

总结

  • 快速区分 HDD/SSD:优先使用 lsblk -o ROTA 或查看 /sys/class/block/<device>/queue/rotational
  • 区分接口类型(如 NVMe/SATA):通过设备名称前缀(nvme/sd)或 dmesg 日志。
  • 获取详细信息:使用 smartctludisksctl,适合需要确认设备类型的场景。

注意:部分老旧系统或特殊设备可能需要管理员权限(sudo),且 SATA 接口的 SSD 设备名称仍为 sd*,需通过 ROTA=0 进一步确认。

阅读更多 >>>  Linux镜像隐藏怎么克隆

网站数据信息

"linux如何区分磁盘类型"浏览人数已经达到19次,如你需要查询该站的相关权重信息,可以点击进入"Chinaz数据" 查询。更多网站价值评估因素如:linux如何区分磁盘类型的访问速度、搜索引擎收录以及索引量、用户体验等。 要评估一个站的价值,最主要还是需要根据您自身的需求,如网站IP、PV、跳出率等!