Linuxブロックデバイスの命名

Linuxブロックデバイスの命名

Linuxハードディスク/ストレージデバイスとブロックファイルの名前がどのように指定されているのかは少し混乱しています。

私の質問は次のとおりです

  • IDEデバイスとパーティションの名前はどのように指定されますか?

  • EIDEデバイスとパーティションの名前はどのように指定されますか?

  • PATAデバイスとパーティションの名前はどのように指定されますか?

  • SATAデバイスとパーティションの名前はどのように指定されますか?

  • SCSIデバイスとパーティションの名前はどのように指定されますか?

最後に、このトピックに関する記事を読んで、「マスタードライブ」と「スレーブドライブ」についての言及を見ました。それらは何であり、どの用途に使用され、名前はどのように指定されますか?

ベストアンサー1

紹介する

まず/dev、フォルダはすべてのデバイスで埋められます。

また、(E)IDEとPATAという用語は通常同じことを意味することに注意する必要があります。インターフェース標準PATA。この文脈では、IDEとPATAは互いに置き換えて使用できる用語です。

Linuxカーネルバージョン2.6がリリースされ、Linuxのブロックデバイスの命名規則が大幅に変更されました。カーネルは以下を介してすべてのATAデバイスをサポートします。libATA、2003年からSATAデバイスのサポートを開始し、現在PATAサポートに拡張されました。

したがって、ドライブの命名規則はディストリビューションとカーネルのバージョンによって異なる場合があります。

しばらく「現代」ディストリビューションのPATAデバイスは、SATAドライブにちなんで命名されました。どちらも現在のlibATAを使用しているためです。


ディストリビューションの場合にあります/lib/udev/rules.d/60-persistent-storage.rules

Debian 9を使用するシステムでも同様です。たとえば、

$ cat /lib/udev/rules.d/60-persistent-storage.rules | grep "ATA"
# ATA
KERNEL=="sd*[!0-9]|sr*", ENV{ID_SERIAL}!="?*", SUBSYSTEMS=="scsi", 
ATTRS{vendor}=="ATA", IMPORT{program}="ata_id --export $devnode"

このファイルに移動すると、ディストリビューションでコンピュータに接続できる各ブロックデバイスの名前を指定する方法がわかります。

ブロックデバイス命名規則

IDEドライブ

  • IDEドライブ(以前のPATAドライバを使用)には「hd」というプレフィックスが付いています。
    • IDEコントローラ(マスター)の最初のデバイスはhda
    • 2番目のデバイス(スレーブ)はhdb

IDEコントローラ/ケーブルには2つのドライブしかない可能性があるため、最初のものはマスタードライブ、2番目のものはスレーブドライブです。ほとんどのマザーボードには2つのIDEコントローラが付属しているため、2番目のコントローラは2番目のコントローラと同じ目的、つまり2番目のコントローラのマスタードライブとhdcスレーブhddドライブとして使用されます。

Linuxカーネル2.6.19以降、IDEドライブのサポートがSATA / SCSIドライブとマージされているため、名前はこのように指定されています。

SATAおよびSCSIドライブ

この命名規則はSCSIドライブで始まり、libATAを含むSATAドライブに拡張されます。 SCSI、SATA、PATA、OPの質問範囲外のその他のドライブ(USB大容量記憶装置、FireWireなど)で動作します。とにかく、通常、シリアルバスを使用するすべてのデバイスは同じ名前を使用します(NVMeドライブは除くが、これはPCIデバイスの話です)。

  • SATA / SCSIドライブは「sd」で始まります。
    • 最初はsda
    • 二つ目はsdb
    • など。

パーティション命名規則

パーティションの場合、各パーティションは各ディスクの最後に数字で表示され、前述のように名前が付けられます。1から始まる。 OPに記載されていない他のデバイスを除いて、常にそうです。

sda1たとえば、SATAドライブのパーティションの場合は、次のように表示されますsda2基本パーティションの場合。論理区画は索引「5」で始まり、拡張区画は索引「4」で始まります。これは明らかにGPTではなくMBRを使用するドライブにのみ適用されます。

lsblksdd以下は、3つのプライマリパーティション(sdd1、、、)、1つの拡張パーティション(sdd2)、および2つの論理パーティション(、、)という名前のサンプルディスクの出力です。sdd3sdd4sdd5sdd6

$ lsblk
sdd      8:48   1   1.9G  0 disk 
├─sdd1   8:49   1   153M  0 part 
├─sdd2   8:50   1   229M  0 part 
├─sdd3   8:51   1   138M  0 part 
├─sdd4   8:52   1     1K  0 part 
├─sdd5   8:53   1   289M  0 part 
└─sdd6   8:54   1   1.1G  0 part 

マスター-スレーブデバイス

単一の IDE インターフェイスは 2 つのデバイスをサポートできます。通常、マザーボードにはデュアルIDEコネクタ(プライマリとセカンダリ)が装備されており、システムに最大4つのIDEデバイスを収容できます。

同じパラレルケーブルで2つのドライブを実行できるように、IDEはマスタードライブとスレーブドライブと呼ばれる特別な設定を使用します。この構成により、あるドライブのコントローラがコンピュータとデータを送受信できるときに別のドライブに通知できます。スレーブドライバがマスターにマザーボードと通信しているかどうかを尋ねたため、名前が由来しました。マスターが通信している場合は、スレーブにジョブが完了するまで待機し、そうでない場合はスレーブに続行するように指示します。

「ケーブル選択」機能により、マスター/スレーブの役割を選択できます。この機能をサポートする各ドライブでジャンパを使用して、「マスター」、「スレーブ」、または「自動」を選択できます(最後のオプションはマスターがあることを意味します)。IDEでは、ケーブルの一方の端、スレーブケーブルのもう一方の端)。

おすすめ記事