在Linux系統上檢查硬碟是SSD還是HDD
概述
要確定我們的檔案系統使用的是SSD還是HDD技術,我們需要知道作業系統使用了哪種型別的儲存裝置。
Linux儲存有很多不同的方面。似乎也有很多可用於讀取和配置儲存的工具。當我們想描述硬碟、光碟和隨身碟時,我們使用“驅動器”、“卷”和“掛載點”等詞。但要理解底層技術,我們只需要關心兩件事:
我們正在檢視哪個物理磁碟或塊裝置(來自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直接獲取我們的資訊。