1. 概要

ファイルシステムがソリッドステートデバイス(SSD)で実行されているのか、それとも古くて低速なハードディスクドライブ(HDD)で実行されているのかを確認する最も直接的な方法は何ですか?

Linuxストレージには多くの要素があります。 そして、ストレージを読み取って構成するためのツールと同じくらい多くのように見えるものが見つかります。 情報を探しに行くと、「ドライブ」、「ブロックデバイス」、「ボリューム」、「マウントポイント」などの用語をふるいにかけます。 ファイルシステムの背後にあるハードウェアを発見するには、次の2つのことだけを知る必要があります。

  1. 私たちが見ている物理ディスクまたはブロックデバイス( df から)
  2. そのディスクのハードウェアパラメータ( hdparm から)

このチュートリアルでは、ファイルが高速のソリッドステートメディアにあるのか、低速の機械式ドライブにあるのかを確認する方法を説明します。

2. とにかく、どのディスクを使用していますか?

マウントされたボリュームをdf、「ディスクフリー」コマンドでチェックすることから始めましょう。

$ 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-4a75

-T を使用してファイルシステムの種類を表示し、 -h を使用して人間が読める形式の単位でサイズを表示し、 -x tmpfs 一時ファイルシステムを除外します。 物理ドライブのみが必要です。

これから、ルートファイルシステムが/ dev/sdbドライブのパーティション上にあることがわかります。sdcドライブと「マッパー」LVM仮想ボリュームグループも表示されます。 混乱した場合は、マウントやマウントポイントなどのツールを使用して、ファイルシステムがどのドライブパーティションにマップされているかを明確にすることができます。

3. hdparmを注意して使用する

「ハードディスクパラメータ」コマンドhdparmを使用して、ドライブパラメータを取得または設定できます。 つまり、ドライブからあらゆる種類の情報を読み取ることができます。 ただし、それに加えて、パフォーマンスを低下させたり、データを破壊したりする可能性のある設定を変更できることを意味します。

ルートとしてhdparmを実行する必要があります。 これは、私たちの行動が即時かつ直接的な結果をもたらす可能性があることを意味します。

3.1. hdparmおよびソリッドステートドライブ

ルートファイルシステムの背後にあるハードウェアについてもっと知りたいとしましょう。 sdbドライブにあることを覚えています。 したがって、hdparm-Iオプションとともに使用して、詳細情報を要求できます。

$ sudo hdparm -I /dev/sdb

/dev/sdb:

ATA device, with non-removable media
	Model Number:       Samsung SSD 840 EVO 250GB
...         

これらの最初の数行から、ディスクドライブの名前に「SSD」が含まれていることがわかります。 これは、それが実際にソリッドステートドライブであることを示すかなり良い指標です。

3.2. 「ソリッドステート」とは、可動部品がないことを意味します

しかし、人間が読めない名前のSSDドライブの別の例を次に示します。

$ sudo hdparm -I /dev/sdc

/dev/sdc:

ATA device, with non-removable media
	Model Number:       WDC WDS500G2B0B-00YS70  
...

この型番を調べることができます。 しかし、 hdparm の出力をさらに下に検索すると、より迅速な方法があります。

$ sudo hdparm -I /dev/sdc | grep 'Nominal Media Rotation Rate'
	Nominal Media Rotation Rate: Solid State Device

「公称メディアローテーションレート」とはどういう意味ですか? 2種類のドライブを区別しようとしていることを忘れないでください。

ハードディスクドライブは機械的なデバイスです。回転する金属製の大皿にデータを読み書きします。これは、ワグが「回転する錆」と呼んでいます。 このシステムは、機械的な故障に対して脆弱です。 ただし、リーダーアーム(蓄音機の針など)が回転するプラッターに沿って移動できる速度によっても制限されます。 それらがどれだけ速く回転するかが「回転速度」です。

対照的に、ソリッドステートドライブは、USBスティックと同様に、データをNANDフラッシュメモリに保存します。 可動部品はありません! 現在、SSDには低速と高速の種類があります。 しかし、ボトルネックはもはやデータをディスクに出し入れすることではありません。 それはコンピュータの残りの部分(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です。

4. 結論

Linuxは、ストレージに関する多くの情報を教えてくれます。 たくさんの情報があるので、迷子になりがちです。 この記事では、そのすべての情報をふるいにかけて、ストレージのハードウェアの詳細を明らかにします。

まず、マウントされたドライブデバイスをdf。で一覧表示します。

次に、rootとして hdparm-Iコマンドを慎重に実行します。

そして最後に、 grep を使用して、関心のある情報を正しく取得します。