在Linux系统上检查硬盘是SSD还是HDD
概述
要确定我们的文件系统使用的是SSD还是HDD技术,我们需要知道操作系统使用了哪种类型的存储设备。
Linux存储有很多不同的方面。似乎也有很多可用于读取和配置存储的工具。当我们想描述硬盘、光盘和U盘时,我们使用“驱动器”、“卷”和“挂载点”等词。但要理解底层技术,我们只需要关心两件事:
我们正在查看哪个物理磁盘或块设备(来自df)
该磁盘的硬件参数(来自hdparm)我们将了解如何确定我们的文件是存储在快速的固态介质(SSD)上还是较慢的机械硬盘上。
我们究竟在哪个磁盘上?
我们将首先使用“disk free”命令检查我们的磁盘使用情况。
$ df -Th -x tmpfs Filesystem Type Size Used Avail Use% Mounted on /dev/sdb2 ext4 228G 173G 44G 80% / /dev/sdb1 vfat 511M 6.3M 505M 2% /boot/efi /dev/sdc1 fuseblk 466G 352G 114G 76% /media/a/9EE8E134E8E10AFB1 /dev/mapper/wonder--vg-root ext4 902G 57G 799G 7% /media/a/450c0236-eea5-4a7
要查看文件系统类型,我们使用-T;要查看文件使用的总磁盘空间,我们使用-h;要从输出中排除临时文件,我们使用-x tmpfstype。我们只需要物理硬盘。
由此,我们知道我们的根文件系统位于名为/dev/sda的磁盘上。我们还看到两个名为sdc和mapper的磁盘。我们可以使用`mount`和`mountpoint`等命令来阐明我们的文件系统映射到哪个硬盘分区。
谨慎使用hdparm
“硬盘参数”命令hdparm可用于获取或设置驱动器参数。这意味着我们可以从驱动器读取各种信息。但此外,这意味着我们可以更改可能损害性能或破坏数据的设置。
我们需要以root用户身份运行hdparm。这意味着我们的操作可能会产生直接而立即的后果。
hdparm和固态驱动器
假设我们想了解更多关于根文件系统背后硬件的信息。我们记得它在sdb驱动器上。因此,我们可以使用带-I选项的hdparm来请求详细信息:
$ sudo hdparm -I /dev/sdb /dev/sdb: ATA device, with non-removable media Model Number: Samsung SSD 840 EVO 250GB
从这几行中,我们发现我们的磁盘驱动器名称中包含“SSD”。这是一个很好的指示器,表明它确实是一个固态驱动器。
“固态”意味着没有活动部件
但这是另一个具有不太易于人类阅读名称的SSD驱动器的示例:
$ sudo hdparm -I /dev/sdb /dev/sdb: ATA device, with non-removable media Model Number: Samsung SSD 840 EVO 250GB ...
让我们看看是否可以找出这是哪个型号。如果我们查看hdparm的输出,我们会看到另一个命令行选项允许我们获得确切的秒数:
$ sudo hdparm -I /dev/sdc | grep 'Nominal Media Rotation Rate' Nominal Media Rotation Rate: Solid State Device
“标称介质旋转速度”是什么意思?我们将区分两种不同的驱动器。
硬盘驱动器是一种机械设备。它的读/写操作是通过旋转涂有磁性材料的磁盘来实现的。这些系统容易发生机械故障。但是,它也受到读取器手(如留声机唱针)在旋转记录上移动速度的限制。它们旋转的速度称为旋转速度。
固态驱动器 (SSD) 将我们的数据存储在非易失性随机存取半导体存储介质上,类似于USB拇指驱动器。它没有活动部件!有速度较快和较慢的固态驱动器 (SSD)。但是,问题不在于将数据从一个地方移动到另一个地方。它不在于将其传输到CPU;它在于将数据从硬盘驱动器传输到RAM。
让我们看看hdparm对硬盘驱动器 (HDD) 有什么说法。
$ sudo hdparm -I /dev/mapper/wonder--vg-root | grep 'Nominal Media Rotation Rate' Nominal Media Rotation Rate: 7200
此输出表明此硬盘具有活动部件。磁盘以每分钟7200转 (rpm) 的速度旋转。
我们检查硬盘的“标称介质旋转速度”。如果它是一个数字,则它是一个硬盘驱动器 (HDD)。固态设备 (SSD) 比传统硬盘驱动器快,因为它们不使用活动部件。
结论
Linux将告诉我们很多关于我们的存储设备的信息。那里有如此多的信息,很难知道从哪里开始。我们浏览所有这些信息以发现存储系统的具体细节。
我们首先使用df列出已挂载的驱动器。
然后,我们以root用户身份运行hdpamd -i命令。
最后,我们使用grep直接获取我们的信息。
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP