Last Updated on 2021-06-21 by Clay
今天想要紀錄的是在 Linux 中要如何判斷我們裝置內的硬碟究竟是 SSD (固態硬碟)呢?還是 HDD (傳統硬碟) 呢?其實在我們將硬碟掛載在裝置上的時候,都會有留下相關資訊的文件,我們可以直接翻看。
以下,就來簡單紀錄如何查看吧!
查看方法
其實只需要使用 "cat" 指令印出相關裝置的 "rotational" 資訊即可。原因很簡單,那就是 SSD 並不需要像 HDD 那般需要機械構造 (讀寫頭) 的旋轉,而是直接採用晶片定址。所以,如果 "rotational" 的資訊為 "0",則代表這個硬碟為 SSD;反之,印出 "1" 則代表示 HDD。
印出資訊也相當簡單:
cat /sys/block/"your_device"/queue/rotational
不過要小心的是,我們電腦上掛載著的裝置有時候可能有不只一兩個,需要小心確認。比如說我自己的裝置:
關於存在著很多 loop* 裝置的情況,可以參考我之前寫過的: [Linux] 如何隱藏 df 指令顯示的 /dev/loop* 裝置。我在這篇文章中有紀錄這些 loop 裝置是什麼。
不過目前我們不需要理他們;以我的電腦為例,我們真正要查看的,是 "nvme0n1" 以及 "sda" 這兩顆硬碟。
cat /sys/block/nvme0n1/queue/rotational
Output:
0
這顆是 SSD。
cat /sys/block/sda/queue/rotational
Output:
1
這顆就是 HDD。
謝謝