翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon EBSボリュームを使用できるようにする
Amazon EBSボリュームをインスタンスにアタッチすると、ブロックデバイスとして公開されます。任意のファイルシステムでボリュームをフォーマットし、マウントできます。EBS ボリュームを使用可能にした後、他のボリュームと同じ方法でボリュームにアクセスできます。このファイルシステムに書き込まれるデータはEBSボリュームに書き込まれ、デバイスを使用するアプリケーションには透過的です。
バックアップ目的でEBSボリュームのスナップショットを作成したり、別のボリュームを作成するときにベースラインとして使用したりできます。詳細については、「Amazon EBSスナップショット」を参照してください。
使用準備中のEBSボリュームが 2 TiB を超える場合は、GPTパーティション分割スキームを使用してボリューム全体にアクセスする必要があります。詳細については、「Amazon EBSボリュームの制約」を参照してください。
アタッチ済みボリュームのフォーマットとマウント
ルートデバイス のEBSボリュームを持つEC2インスタンスがあり、 /dev/xvda
を使用して空のEBSボリュームをインスタンスにアタッチしたとします/dev/sdf
。新たなアタッチ済みボリュームを使用するには、次の手順を使用します。
Linux でEBSボリュームをフォーマットしてマウントするには
-
を使用してインスタンスに接続しますSSH。詳細については、「Linux インスタンスへの接続」を参照してください。
-
ブロックデバイスマッピングで指定したものとは異なるデバイス名を使用して、デバイスをインスタンスにアタッチすることができます。詳細については、「Linux インスタンスでのデバイス名」を参照してください。lsblk コマンドを使用して、使用可能なディスクデバイスとマウントポイント (該当する場合) を表示し、使用する正しいデバイス名を決定します。lsblk の出力は、フルデバイスパスから
/dev/
プレフィクスを削除します。Nitro System 上に構築されたインスタンスの出力例を次に示します。このインスタンスでは、EBSボリュームをNVMeブロックデバイスとして公開します。ルートデバイス
/dev/nvme0n1
には、nvme0n1p1
およびnvme0n1p128
という名前の 2 つのパーティションがあります。アタッチされているボリュームは/dev/nvme1n1
パーティションがなく、まだマウントされていません。[ec2-user ~]$
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT nvme1n1 259:0 0 10G 0 disk nvme0n1 259:1 0 8G 0 disk -nvme0n1p1 259:2 0 8G 0 part / -nvme0n1p128 259:3 0 1M 0 part
以下は T2 インスタンスの出力例です。ルートデバイス
/dev/xvda
には、xvda1
という名前のパーティションが 1 つあります。アタッチされているボリュームは/dev/xvdf
パーティションがなく、まだマウントされていません。[ec2-user ~]$
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvda 202:0 0 8G 0 disk -xvda1 202:1 0 8G 0 part / xvdf 202:80 0 10G 0 disk
-
ボリュームにファイルシステムがあるかどうかを確認します。新しいボリュームは未加工のブロックデバイスであるため、マウントして使用する前に、ボリュームにファイルシステムを作成する必要があります。スナップショットから作成されたボリュームは、多くの場合既にファイルシステムがあります。既存のファイルシステムの上に新しいファイルシステムを作成すると、データが上書きされます。
次の方法のいずれか (または両方) を使用して、ボリューム上にファイルシステムがあるかどうかを判断します。
-
file -s コマンドを使用して、ファイルシステムタイプなど、特定のデバイスに関する情報を取得します。次の例のように、出力に
data
だけが表示されている場合は、デバイスにはファイルシステムが存在していません。[ec2-user ~]$
sudo file -s
/dev/xvdf
/dev/xvdf: data
デバイスにファイルシステムがある場合は、ファイルシステムの種類に関する情報が表示されます。例えば、次の出力は、XFSファイルシステムを持つルートデバイスを示しています。
[ec2-user ~]$
sudo file -s
/dev/xvda1
/dev/xvda1: SGI XFS filesystem data (blksz 4096, inosz 512, v2 dirs)
-
lsblk -f コマンドを使用して、インスタンスにアタッチされているすべてのデバイスに関する情報を取得します。
[ec2-user ~]$
sudo lsblk -f
例えば、次の出力例では、3 つのデバイス —
nvme1n1
、nvme0n1
、およびnvme2n1
がインスタンスにアタッチされていることを示しています。最初の列には、デバイスとそのパーティションが一覧表示されています。FSTYPE
列には、各デバイスのファイルシステムタイプが表示されています。特定のデバイスについての列が空の場合は、そのデバイスにファイルシステムがないことを意味します。この場合、デバイスnvme0n1p1
上のデバイスnvme1n1
とパーティションnvme0n1
はどちらもXFSファイルシステムを使用してフォーマットされますが、デバイスnvme0n1p128
上のデバイスnvme2n1
とパーティションにはファイルシステムnvme0n1
がありません。NAME FSTYPE LABEL UUID MOUNTPOINT nvme1n1 xfs 7f939f28-6dcc-4315-8c42-6806080b94dd nvme0n1 ├─nvme0n1p1 xfs / 90e29211-2de8-4967-b0fb-16f51a6e464c / └─nvme0n1p128 nvme2n1
これらのコマンドの出力で、デバイス上にファイルシステムがないことが示された場合は、ファイルシステムを作成する必要があります。
-
-
(条件付き) 前の手順でデバイスにファイルシステムがあることがわかった場合は、このステップをスキップしてください。ボリュームが空の場合は、mkfs -t コマンドを使用し、そのボリューム上にファイルシステムを作成します。
警告
すでにデータが入っているボリューム (例: スナップショットから作成されたボリューム) をマウントしている場合は、このコマンドを使用しないでください。そうでない場合、ボリュームがフォーマットされ、既存のデータが削除されます。
[ec2-user ~]$
sudo mkfs -t xfs
/dev/xvdf
見つからないエラーが発生した場合
mkfs.xfs
は、次のコマンドを使用してXFSツールをインストールし、前のコマンドを繰り返します。[ec2-user ~]$
sudo yum install xfsprogs
-
mkdir コマンドを使用して、ボリュームのマウントポイントディレクトリを作成します。マウントポイントとは、ボリュームをマウントした後、ファイルシステムツリー内でボリュームが配置され、ファイルの読み書きが実行される場所です。次の例では、
/data
という名前のディレクトリが作成されます。[ec2-user ~]$
sudo mkdir
/data
-
前のステップで作成したマウントポイントディレクトリにボリュームまたはパーティションをマウントします。
ボリュームにパーティションがない場合は、次のコマンドを実行してデバイス名を指定し、ボリューム全体をマウントします。
[ec2-user ~]$
sudo mount
/dev/xvdf
/data
ボリュームにパーティションがある場合は、次のコマンドを実行してパーティション名を指定し、パーティションをマウントします。
[ec2-user ~]$
sudo mount
/dev/xvdf1
/data
-
新しいボリュームマウントのファイルのアクセス許可をプレビューして、ユーザーとアプリケーションがボリュームに書き込みできることを確認します。ファイルのアクセス許可の詳細については、Linux Documentation Project のファイルセキュリティ
を参照してください。 -
インスタンスを再起動した後にマウントポイントが自動的に保存されることはありません。再起動後にこのEBSボリュームを自動的にマウントするには、次の手順を実行します。
再起動後に接続ボリュームを自動的にマウントする
アタッチされたEBSボリュームをシステムの再起動ごとにマウントするには、デバイスのエントリを /etc/fstab
ファイルに追加します。
/dev/xvdf
では、 などのデバイス名を使用できますが/etc/fstab
、代わりにデバイスの 128 ビットユニバーサル一意識別子 (UUID) を使用することをお勧めします。デバイス名は変更される可能性がありますが、 はパーティションの存続期間を通じてUUID保持されます。を使用するとUUID、ハードウェアの再設定後にシステムがブート不能になる可能性が低くなります。詳細については、「Amazon EBSボリュームをNVMeデバイス名にマッピングする」を参照してください。
再起動後に接続ボリュームを自動的にマウントするには
-
(オプション)
/etc/fstab
ファイルのバックアップコピーを作成すると、編集中に誤って破壊/削除してしまった場合にこのコピーを使用できます。[ec2-user ~]$
sudo cp /etc/fstab /etc/fstab.orig
-
blkid コマンドを使用して、デバイスの UUID を検索します。再起動後にマウントするデバイスの UUIDを書き留めます。次の手順で必要になります。
例えば、次のコマンドは、インスタンスに 2 つのデバイスがマウントされていることを示し、UUIDs両方のデバイスの を示しています。
[ec2-user ~]$
sudo blkid
/dev/xvda1: LABEL="/" UUID="ca774df7-756d-4261-a3f1-76038323e572" TYPE="xfs" PARTLABEL="Linux" PARTUUID="02dcd367-e87c-4f2e-9a72-a3cf8f299c10" /dev/xvdf: UUID="aebf131c-6957-451e-8d34-ec978d9581ae" TYPE="xfs"
Ubuntu 18.04 では、lsblk コマンドを使用します。
[ec2-user ~]$
sudo lsblk -o +UUID
-
nano や vim などのテキストエディタを使用して、
/etc/fstab
ファイルを開きます。[ec2-user ~]$
sudo vim /etc/fstab
-
指定されたマウントポイントにデバイスをマウントするために、
/etc/fstab
に次のエントリを追加します。フィールドは、 blkid (または Ubuntu 18.04 lsblkの場合は) によって返されるUUID値、マウントポイント、ファイルシステム、および推奨されるファイルシステムマウントオプションです。必須フィールドの詳細については、man fstab
を実行して fstab マニュアルを開きます。次の例では、 を使用してデバイスをマウントポイントUUID
aebf131c-6957-451e-8d34-ec978d9581ae
にマウント/data
し、xfs
ファイルシステムを使用します。defaults
フラグとnofail
フラグも使用します。ファイルシステムがダンプされないように0
を指定し、ルート以外のデバイスであることを示すように2
を指定します。UUID=
aebf131c-6957-451e-8d34-ec978d9581ae
/data
xfs
defaults,nofail 0 2注記
このボリュームをアタッチしないでインスタンスを起動することを目的としている場合 (例えば、ボリュームを別のインスタンスに移動した後)、
nofail
マウントオプションを追加し、ボリュームのマウントでエラーが発生してもインスタンスが起動できるようにしてください。また、Debian から派生した OS (16.04 より前の Ubuntu バージョンなど) では、nobootwait
マウントオプションを追加する必要があります。 -
入力内容が正しいことを確認するには、次のコマンドを実行してデバイスをアンマウントし、すべてのファイルシステムを
/etc/fstab
にマウントします。エラーがなければ、/etc/fstab
ファイルは問題ありません。ファイルシステムは再起動後に自動的にマウントされます。[ec2-user ~]$
sudo umount
/data
[ec2-user ~]$
sudo mount -a
エラーメッセージが表示されたら、ファイル内のエラーに対処してください。
警告
/etc/fstab
ファイルにエラーがあると、システムがブート不能になる可能性があります。/etc/fstab
ファイルにエラーがあるシステムをシャットダウンしないでください。/etc/fstab
のエラーを修正する方法がわからず、このステップの最初のステップでバックアップファイルを作成した場合は、次のコマンドを使用してバックアップファイルから復元できます。[ec2-user ~]$
sudo mv /etc/fstab.orig /etc/fstab
次のいずれかの方法を使用し、Windows インスタンスでボリュームを使用できるようにします。