帮助中心

立即注册 咨询客服

当前位置:首页 > 帮助中心> 如何检查Linux系统服务器的硬盘是SSD还是HDD?

如何检查Linux系统服务器的硬盘是SSD还是HDD?

发布时间:2020年04月16日 15:17:56    来源: A5互联

如果您购买了一台服务器,安装的是Linux系统,例如Ubuntu。你无法确定是配置硬盘是SSD(固态硬盘)还是普通的HDD(硬盘)。今天我们来简单介绍一下如何查看Linux操作系统中的硬盘是SSD还是HDD。

从内核版本2.6.29开始,Linux操作系统可以自动检测SSD。有几种方法可以找到磁盘是SSD还是HDD。这里给出了7个方法。

方法一、检查磁盘是否旋转

大家可能已经知道,传统的硬盘驱动器(HDD)将数据存储在称为磁盘的圆形磁盘上。当光盘旋转时,移动的读/写头将访问数据。磁盘旋转(旋转)的速度越快,硬盘的工作速度就越快。

固态驱动器(SDD)是现代存储技术和速度更快的磁盘驱动器,可将数据存储在即时可访问的闪存芯片上。与传统的HDD不同,SSD没有任何活动部件,SSD不旋转。

因此,如果要查找安装的磁盘是SSD磁盘还是普通HDD,只需使用以下命令检查磁盘是否旋转:

$ cat / sys / block / sda / queue / rotational

如果输出为1,则硬盘为HDD。如果输出为0,则磁盘为SDD。因为,固态硬盘是不会旋转的。所以,如果你的系统里有SSD,输出应该是0。

每个驱动器在/ sys / class / block /位置都有一个目录。因此,您也可以检查其他驱动器的详细信息。

$ cat / sys / block / sdb / queue / rotational

$ cat / sys / block / sdc / queue / rotational

方法二、使用lsblk命令

lsblk命令读取sysfs文件系统和udev db来收集所有可用或指定块设备的信息。lsblk 命令是 util-linux 软件包的一部分,大多数 Linux 发行版都预装了 lsblk 命令。

万一lsblk命令不可用,只需使用发行版的软件包管理器安装util-linux软件包。

例如,在基于Arch的系统上,可以使用以下命令进行安装:

$ sudo pacman -S util-linux

在基于Debian的系统上:

$ sudo apt install util-linux

在基于RPM的系统上:

$ sudo yum install util-linux

在openSUSE上:

$ sudo zypper install util-linux

现在,使用命令查找磁盘是SSD还是HDD:

$ lsblk -d -o name,rota

样本输出:

NAME   ROTA

loop0     1

loop1     1

loop2     1

loop3     1

loop4     1

loop5     1

loop6     1

loop7     1

loop8     1

loop9     1

loop10    1

loop11    1

loop12    1

loop13    1

loop14    1

loop15    1

loop16    1

loop17    1

loop18    1

loop19    1

loop20    1

sda       1

sr0       1

这里的 "rota "指的是旋转设备。如果在上面的输出中rota的值为1,则表示硬盘是HDD。如果值为0,则表示硬盘是SSD。