解決策 1:
EBS ボリュームをアタッチするときは、アタッチするデバイスを指定します。 Linux では、これらのデバイスは /dev/xvd*
です。 - そして /dev/sd*
にシンボリックリンクされています
AWS コンソールでは、EBS ボリューム、それらが接続されているインスタンス、および各ボリュームが接続されているデバイスを確認できます:
CLI ツールから同じことを実現できます。必要な環境変数を設定します。
export EC2_PRIVATE_KEY=/root/pk-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.pem
export EC2_CERT=/root/cert-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.pem
現在のインスタンスでコマンドを実行します (それ以外の場合は、インスタンス ID を指定するだけです):
ec2-describe-instances `curl -s http://169.254.169.254/latest/meta-data/instance-id` | grep BLOCKDEVICE
BLOCKDEVICE /dev/sda1 vol-xxxxxxxx 2011-11-13T21:09:53.000Z
BLOCKDEVICE /dev/sdf vol-xxxxxxxx 2011-11-13T21:09:53.000Z
BLOCKDEVICE /dev/sdg vol-xxxxxxxx 2011-11-13T21:09:53.000Z
上記の両方のケース (CLI と AWS コンソール) で、デバイスは /dev/sd*
で接続されていると説明されていることに注意してください。 - ただし、実際にはそうではありません。
/dev の内容を見てください:
ls -l /dev/sd* /dev/xv*
lrwxrwxrwx 1 root root 5 Dec 12 18:32 /dev/sda1 -> xvda1
lrwxrwxrwx 1 root root 4 Dec 12 18:32 /dev/sdf -> xvdf
lrwxrwxrwx 1 root root 4 Dec 12 18:32 /dev/sdg -> xvdg
brw-rw---- 1 root disk 202, 1 Dec 12 18:32 /dev/xvda1
brw-rw---- 1 root disk 202, 80 Dec 12 18:32 /dev/xvdf
brw-rw---- 1 root disk 202, 96 Dec 12 18:32 /dev/xvdg
デバイスは実際には /dev/xvd*
です - そして /dev/sd*
パスはシンボリック リンクです。
現在利用可能なデバイスを確認するもう 1 つの方法は、fdisk -l
を使用することです。 、またはより単純な出力の場合:
cat /proc/partitions
major minor #blocks name
202 1 4194304 xvda1
202 80 6291456 xvdf
202 96 1048576 xvdg
マウントされているデバイスを特定する必要がある場合は、mount
を使用します。 そして df
- そして /etc/fstab
をチェックしてください マウント オプションを変更します。
解決策 2:
EC2 にアタッチされた EBS ボリュームを使用するには、最初にボリュームをマウントする必要があります。
<オール>
[[email protected] ~]$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 8G 0 disk
└─xvda1 202:1 0 8G 0 part /
xvdb 202:16 0 8G 0 disk
xvdf 202:80 0 100G 0 disk
- ボリュームにファイル システムを作成します。例 -> sudo mkfs -t ext4 /dev/xvdf
- ボリュームのマウント ポイント ディレクトリを作成します ->sudo mkdir mount_point
- 作成したばかりの場所にこの EBS ボリュームをマウントするには -> sudo mount /dev/xvdf mount_point
- ls mount_point を実行できることを確認するには
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-using-volumes.html