Linux インスタンスでのデバイス名 - Amazon Elastic Compute Cloud

Linux インスタンスでのデバイス名

インスタンスにボリュームをアタッチする場合は、ボリュームのデバイス名を含めます。このデバイス名は Amazon EC2 によって使用されます。インスタンスのブロックデバイスドライバーは、ボリュームのマウント時に実際のボリューム名を割り当てますが、この割り当てられた名前は、Amazon EC2 が使用する名前とは異なる可能性があります。

インスタンスがサポートできるボリュームの数は、オペレーティングシステムによって決まります。詳細については、インスタンスボリューム数の制限を参照してください。

Windows インスタンスのデバイス名の詳細については、Windows インスタンスの Amazon EC2 ユーザーガイドWindows インスタンスでのデバイスの名前付けを参照してください。

使用できるデバイス名

Linux インスタンスでは、準仮想化 (PV) とハードウェア仮想マシン (HVM) の 2 種類の仮想化を使用できます。インスタンスの仮想化タイプは、インスタンスの起動に使用される AMI によって決まります。すべてのインスタンスタイプが HVM AMI をサポートしています。一部の旧世代のインスタンスタイプは PV AMI をサポートしています。使用できる推奨のデバイス名はインスタンスの仮想化タイプによって異なるため、必ず AMI の仮想化タイプを確認してください。詳細については、Linux AMI 仮想化タイプを参照してください。

次の表に、ブロックデバイスマッピングまたは EBS ボリュームの接続時に指定できる使用可能なデバイス名を示します。

仮想化タイプ 利用可能 ルートボリューム用に予約済み EBS ボリュームとして推奨 インスタンスストアボリューム

準仮想化

/dev/sd[a-z]

/dev/sd[a-z][1-15]

/dev/hd[a-z]

/dev/hd[a-z][1-15]

/dev/sda1

/dev/sd[f-p]

/dev/sd[f-p][1-6]

/dev/sd[b-e]

HVM

/dev/sd[a-z]

/dev/xvd[a-d][a-z]

/dev/xvd[e-z]

AMI による違い

/dev/sda1 or /dev/xvda

/dev/sd[f-p] *

/dev/sd[b-e]

/dev/sd[b-h] (h1.16xlarge)

/dev/sd[b-y] (d2.8xlarge)

/dev/sd[b-i] (i2.8xlarge)

**

* ブロックデバイスマッピングの NVMe EBS ボリュームで指定したデバイス名は、NVMe デバイス名 (/dev/nvme[0-26]n1) を使用して名称変更されます。ブロックデバイスドライバーは、ブロックデバイスマッピングのボリュームに指定した順序とは異なる順序で NVMe デバイス名を割り当てることができます。

** NVMe インスタンスストアボリュームは自動的に列挙され、NVMe デバイス名が割り当てられます。

インスタンスストアボリュームの詳細については、Amazon EC2 インスタンスストア を参照してください。EBS デバイスの識別方法を含む、NVMe EBS ボリューム (Nitro ベースのインスタンス) の詳細については、「Amazon EBS ユーザーガイド」の「Amazon EBS および NVMe」を参照してください。

デバイス名に関する考慮事項

デバイス名を選択するときは、以下の点を常に考慮する必要があります。

  • インスタンスストアボリュームをアタッチするために使用されたデバイス名を使用して EBS ボリュームをアタッチすることはできますが、動作を予測できない場合があるため、この方法は使用しないことを強くお勧めします。

  • インスタンスの NVMe インスタンスストアボリュームの数は、インスタンスのサイズによって異なります。NVMe インスタンスストアボリュームは自動的に列挙され、NVMe デバイス名 (/dev/nvme[0-26]n1)

  • カーネルのブロックデバイスドライバによっては、指定した名前とは異なる名前でデバイスがアタッチされる可能性があります。例えば、デバイス名 (/dev/sdh) を指定した場合、デバイスの名前が /dev/xvdh/dev/hdh に変更される場合があります。ほとんどの場合、末尾の文字は変更されません。Red Hat Enterprise Linux (および CentOS などのバリアント) の一部バージョンでは、末尾の文字が変更されることがあります (/dev/sda/dev/xvde になることがあります)。このような場合、各デバイス名の末尾の文字は同じ規則で変更されます。例えば、/dev/sdb の名前が /dev/xvdf に変更されると、/dev/sdc の名前は /dev/xvdg に変更されます。Amazon Linux は、名前が変更されたデバイスに対して指定した名前のシンボリックデバイスを作成します。他のオペレーティングシステムの動作は異なる場合があります。

  • HVM AMI では、ルートデバイス用に予約されているデバイス名 (/dev/sda1) や /dev/sda2 を除き、デバイス名の末尾に数字を使用することをサポートしていません。/dev/sda2 は使用できますが、HVM インスタンスでこのデバイスマッピングを使用することは推奨していません。

  • PV AMI を使用する場合は、末尾の番号の有無にかかわらず、同じデバイス文字を共有するボリュームをアタッチすることはできません。例えば、あるボリュームを /dev/sdc としてアタッチし、別のボリュームを /dev/sdc1 としてアタッチした場合、インスタンスは /dev/sdc のみを認識します。デバイス名の末尾に数字を使用するには、同じベース文字を共有するすべてのデバイス名の末尾に数字を使用する必要があります (例:/dev/sdc1/dev/sdc2/dev/sdc3)。

  • 一部のカスタムカーネルでは、使用できるデバイス名が /dev/sd[f-p]/dev/sd[f-p][1-6] に制限されている場合があります。/dev/sd[q-z] または /dev/sd[q-z][1-6] の使用に関して問題がある場合は、/dev/sd[f-p] または /dev/sd[f-p][1-6] に切り替えてみてください。

選択したデバイス名を指定するときは、事前に、そのデバイス名が使用可能であることを確認します。確認しないと、そのデバイス名はすでに使用されている、とのエラーが表示されます。例えば Linux では、lsblk コマンドを使用すればディスクデバイスとマウントポイントを表示できます。Windows では、ディスク管理ユーティリティまたは diskpart コマンドを使用します。