EC2:EBS设备ID混淆(/ dev/sdf vs./dev/xvdf)

Ede*_*uer 37 filesystems amazon-ec2 amazon-ebs

我将一个EBS卷附加到我的EC2实例,将其转换为EXT3文件系统,并成功安装它.然而,最初我被抛弃了主要是因为AWS控制台说我的EBS设备ID是什么.

根据AWS控制台:

i-xxxxxxx :/dev/sdf (attached)
Run Code Online (Sandbox Code Playgroud)

我认为这意味着我附加的EBS设备ID是/ dev/sdf.因此,当我尝试使用此设备ID将设备转换为文件系统时,我收到以下错误消息.

ubuntu@ip-xx-xx-xx-xx:~$ mkfs -t ext3 /dev/sdf
mke2fs 1.42 (29-Nov-2011)
Could not stat /dev/sdf --- No such file or directory
The device apparently does not exist; did you specify it correctly?
Run Code Online (Sandbox Code Playgroud)

然后经过一段时间的研究,我找到了这篇文章然后通过运行 cat /proc/partitions 发现我的真实设备ID是/ dev/xvdf而不是/ dev/sdf.

我的问题是为什么AWS控制台在实际上是/ dev/xvdf时会说它是/ dev/sdf?我认为必须有一些合乎逻辑的解释.

Ste*_*pel 34

通过AWS管理控制台附加卷时,AWS会提供以下消息/警告:

注意:较新的Linux内核可能会在内部通过/ dev/xvdp将您的设备重命名为/ dev/xvdf,即使此处输入的设备名称(并在详细信息中显示)是/ dev/sdf/dev/sdp.

我没有任何上游源这个信息方便,但Jay Rum回答(不再相关)临时问题EBS磁盘作为设备/ dev/xvde启动,但映射为/ dev/sda将此功能归因于xen-blkfront驱动程序:

"xen-blkfront"驱动程序,允许虚拟机(即EC2实例)访问底层块设备,传统上将sda,sdb ...映射到xvda,xvdb ......,[...]

最后,cyberx86'回答如何访问Amazon EC2中的附加卷,提供了有关此设备命名不匹配以及如何处理它的详细说明,即识别当前可用的设备等.

注意:这个问题已经在12月24日得到了回答,但是由于社区主持人(即一个自动化流程)在2013年5月1日被删除了6个upvotes的答案是出于非透明的原因(显然是因为删除用户)) - 无论如何,我从我的角度添加了原始内容的略微变化.