

# Amazon EC2 インスタンス上のボリュームのデバイス名
<a name="device_naming"></a>

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

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

**Topics**
+ [

## 使用できるデバイス名
](#available-ec2-device-names)
+ [

## デバイス名に関する考慮事項
](#device-name-limits)

## 使用できるデバイス名
<a name="available-ec2-device-names"></a>

### Linux インスタンス
<a name="device-names-linux"></a>

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

次の表に、ブロックデバイスマッピングまたは 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-c][a-z] /dev/xvdd[a-x]  |  AMI による違い /dev/sda1 or /dev/xvda  |  /dev/sd[b-z]  /dev/xvdb[b-z] \$1  |  /dev/sd[b-e] /dev/sd[b-h] (h1.16xlarge) /dev/sd[b-y] (d2.8xlarge) /dev/sd[b-i] (i2.8xlarge) \$1\$1  | 

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

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

### Windows インスタンス
<a name="device-names-windows"></a>

AWS Windows AMI は、仮想化ハードウェアへのアクセスを許可するために、次のいずれかのドライバーセットを使用します。
+ AWS PV: [Windows インスタンス用 Paravirtual ドライバー](xen-drivers-overview.md)
+ AWS NVMe: [AWS NVMe ドライバー](aws-nvme-drivers.md)

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


| ドライバータイプ | 利用可能 | ルートボリューム用に予約済み | EBS ボリュームとして推奨 | インスタンスストアボリューム | 
| --- | --- | --- | --- | --- | 
| AWS NVMe |  xvd[a-z] xvd[a-c][a-z] xvdd[a-x] /dev/sda1  | /dev/sda1 |  xvd[b-z] xvdb[b-z]  | \$1 | 

\$1 NVMe インスタンスストアボリュームは自動的に列挙され、Windows のドライブ文字が割り当てられます。

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


| ドライバータイプ | 利用可能 | ルートボリューム用に予約済み | EBS ボリュームとして推奨 | インスタンスストアボリューム | 
| --- | --- | --- | --- | --- | 
| AWS PV |  xvd[b-z] xvd[b-c][a-z] /dev/sda1 /dev/sd[b-e]  | /dev/sda1 | xvd[f-z] |  xvdc[a-x] xvd[a-e]  | 
| Citrix PV (サポート終了) |  xvd[b-z] xvd[b-c][a-z] /dev/sda1 /dev/sd[b-e]  | /dev/sda1 | xvd[f-z] |  xvdc[a-x] xvd[a-e]  | 
| Red Hat PV (サポート終了) |  xvd[a-z] xvd[b-c][a-z] /dev/sda1 /dev/sd[b-e]  | /dev/sda1 | xvd[f-p] |  xvdc[a-x] xvd[a-e]  | 

インスタンスストアボリュームの詳細については[EC2 インスタンス用のインスタンスストアの一時ブロックストレージ](InstanceStorage.md) を参照してください。EBS デバイスの識別方法を含む、NVMe EBS ボリューム (Nitro ベースのインスタンス) の詳細については「Amazon EBS ユーザーガイド」の「[Amazon EBS および NVMe](https://docs.aws.amazon.com/ebs/latest/userguide/nvme-ebs-volumes.html)」を参照してください。

## デバイス名に関する考慮事項
<a name="device-name-limits"></a>

デバイス名を選択するときは以下の点を常に考慮する必要があります。
+ 使用するデバイス名の末尾の部分はインスタンスの起動時に問題が発生する可能性があるため、重複しないようにする必要があります。例えば、同じインスタンスにアタッチされたボリュームには`/dev/xvdf` と `xvdf` のような組み合わせを使用しないでください。
+ インスタンスストアボリュームをアタッチするために使用されたデバイス名を使用して EBS ボリュームをアタッチすることはできますが、動作を予測できない場合があるため、この方法は使用しないことを強くお勧めします。
+ インスタンスの NVMe インスタンスストアボリュームの数はインスタンスのサイズによって異なります。NVMe インスタンスストアボリュームは自動的に列挙され、NVMe デバイス名 (Linux インスタンス) または Windows ドライブ文字 (Windows インスタンス) に割り当てられます。
+ (Windows インスタンス) AWS Windows AMI には初めて起動したときにインスタンスを準備する追加のソフトウェアが付属しています。これは EC2Config サービス (Windows Server 2016 以前の Windows AMI) または EC2Launch (Windows Server 2016 以降) です。デバイスがドライブにマッピングされると、初期化され、マウントされます。ルートドライブは `C:\` として初期化およびマウントされます。デフォルトではEBS ボリュームが Windows インスタンスにアタッチされている場合、インスタンスではいずれかのドライブ文字で表示されます。設定を変更して、独自の指定によってボリュームのドライブ文字を設定できます。インスタンスストアボリュームの場合、デフォルトはドライバーにより異なります。AWSPV ドライバーと Citrix PV ドライバーはインスタンスストアボリュームに Z: から A: の順番でドライブ文字を割り当てます。Red Hat ドライバーはインスタンスストアボリュームに D: から Z: の順番でドライブ文字を割り当てます。詳細については「[Amazon EC2 Windows インスタンス上の Windows 起動エージェント](configure-launch-agents.md)」および「[Amazon EC2 Windows インスタンスへのボリュームのアタッチとマッピング方法](ec2-windows-volumes.md)」を参照してください。
+ (Linux インスタンス) カーネルのブロックデバイスドライバーによっては指定したものとは異なる名前でデバイスがアタッチされる可能性があります。例えば、デバイス名 (`/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 は名前が変更されたデバイスに対して指定した名前のシンボリックデバイスを作成します。他のオペレーティングシステムの動作は異なる場合があります。
+ (Linux インスタンス) HVM AMI では`/dev/sda1` (ルートボリューム用に予約) と `/dev/sda2` を除き、デバイス名の末尾に数字を使用することをサポートしていません。`/dev/sda2` は使用できますが、HVM インスタンスでこのデバイスマッピングを使用することは推奨していません。
+ (Linux インスタンス) PV AMI を使用する場合は末尾の数字の有無にかかわらず、同じデバイス文字を共有するボリュームをアタッチすることはできません。例えば、あるボリュームを `/dev/sdc` としてアタッチし、別のボリュームを `/dev/sdc1` としてアタッチした場合、インスタンスは `/dev/sdc` のみを認識します。デバイス名の末尾に数字を使用するには同じベース文字を共有するすべてのデバイス名の末尾に数字を使用する必要があります (例:`/dev/sdc1` 、`/dev/sdc2`、`/dev/sdc3`)。
+ (Linux インスタンス) 一部のカスタムカーネルでは使用できるものが `/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]` に切り替えてみてください。

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