如何访问 Amazon EC2 中的附加卷

如何访问 Amazon EC2 中的附加卷

我刚刚将另一个 ebs 卷附加到正在运行的实例。但是我如何访问该卷?我找不到/dev/sda任何目录。我应该在哪里查找?

答案1

当您附加 EBS 卷时,您可以指定要附加的设备。在 Linux 下,这些设备是/dev/xvd*- 并且符号链接到/dev/sd*

在 AWS 控制台中,您可以看到您的 EBS 卷、它们附加到的实例以及每个卷附加的设备:

AWS 控制台

您可以从 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*路径是符号链接。

检查当前可用设备的另一种方法是使用fdisk -l,或者使用更简单的输出:

cat /proc/partitions
major minor  #blocks  name

 202        1    4194304 xvda1
 202       80    6291456 xvdf
 202       96    1048576 xvdg

如果您需要确定已安装的设备,请使用mountdf- 并检查/etc/fstab来更改安装选项。

答案2

要使用 EC2 中附加的 EBS 卷,您需要先挂载该卷。

  1. 使用 SSH 连接到您的实例。
  2. 使用lsblk命令查看可用的磁盘设备及其挂载点。

[ec2-user@ip-172-31-86-46 ~]$ 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

  1. 在卷上创建文件系统,例如 ->sudo mkfs -t ext4 /dev/xvdf
  2. 为卷创建一个挂载点目录 ->sudo mkdir mount_point
  3. 要将此 EBS 卷挂载到您刚刚创建的位置 ->sudo mount /dev/xvdf 挂载点
  4. 要检查您是否可以执行ls 挂载点

    https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-using-volumes.html

相关内容