Linux下如何确认磁盘是否为SSD

0    149    1

Tags:

👉 本文共约2486个字,系统预计阅读时间或需10分钟。

简介

There are different types of disk drives available among which most used are Hard drive (HDD) and Solid State Drive (SSD). Starting from the Kernel version 2.6.29, SSD is automatically detected by Linux systems.

HDD : Hard Disk Drive, 机械硬盘
SSD : Solid State Drive,固态硬盘

首先学习一下 HDD 和 SSD 工作原理的区别:

HDD机械硬盘,主要由:盘片,磁头,盘片转轴及控制电机,磁头控制器,数据转换器,接口,缓存等几个部分组成。
在这里插入图片描述

磁头沿盘片半径方向运动,盘片以每分钟几千转的高速旋转,这样磁头就可以定位在盘片的指定位置上进行数据读写。

信息通过离磁性表面很近的磁头,由电磁流改变极性的方式,被电磁流写到磁盘上,并可以通过相反的方式读取。

如此精密之设备,尘埃是其大敌,因此进入硬盘的空气必须过滤。
在这里插入图片描述


而SSD固态硬盘,内部构造则相对简单,固态硬盘内主体其实就是一块PCB板,组成部件分为:主控芯片、闪存芯片、固件算法。

在这里插入图片描述

SSD,在主控的指挥下,通过电学信号的传输完成对闪存芯片的读写操作;

所以,SSD的读写过程依靠的是电学信号,不需要旋转磁盘。

电学信号比物理机械运作快多了,因此固态硬盘的运行速度远胜机械硬盘。

在这里插入图片描述


而磁盘的旋转情况,可以通过查看 rotational 来获知结果。
因此可以通过查看 rotational 来判断 Linux 磁盘是 HDD 还是 SSD 。

比如对于 sda 这个设备,可以通过 cat /sys/block/sda/queue/rotational 得到结果:

1 :表示磁盘可旋转, 是 HDD ;

0 :表示磁盘不可以旋转 , 是 SSD 。

JBOD

JBOD(just a bunch of disks,简单磁盘捆绑),官方术语称之为“Spanning”,仅仅是表面上将多个驱动器合并成一个大的逻辑磁盘(类似lvm的pv)

原理:数据的存放机制是由第一颗硬盘开始依序往后存放,即操作系统看到的是一个大硬盘(由许多小硬盘组成的)。但如果硬盘损毁,则该颗硬盘上的所有数据将无法救回。若第一颗硬盘损坏,通常无法作救援(因为大部分文件系统将磁盘分割表(partition table)存在磁盘前端,即第一颗),失去磁盘分割表即失去一切数据,若遭遇磁盘阵列数据或硬盘出错的状况,危险程度较RAID 0更剧。它的好处是不会像RAID 0,每次访问都要读写全部硬盘。但在部分的JBOD数据恢复实践中,可以恢复未损毁之硬盘上的数据。同时,因为每次读写操作只作用于单一硬盘,JBOD的传输速率与I/O表现均与单颗硬盘无异。

方法

方法1:通过查看/sys/block/sda/queue/rotational

通过cat /sys/block/sda/queue/rotational进行查看,返回0即为SSD;返回1 则表示磁盘可旋转,即为HDD。

查看所有磁盘:

本人提供Oracle(OCP、OCM)、MySQL(OCP)、PostgreSQL(PGCA、PGCE、PGCM)等数据库的培训和考证业务,私聊QQ646634621或微信dbaup66,谢谢!
AiDBA后续精彩内容已被站长无情隐藏,请输入验证码解锁本文!
验证码:
获取验证码: 请先关注本站微信公众号,然后回复“验证码”,获取验证码。在微信里搜索“AiDBA”或者“dbaup6”或者微信扫描右侧二维码都可以关注本站微信公众号。

标签:

Avatar photo

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复