AWS EC2 EBS卷控制台设备名与fdisk显示不一致如何匹配对应
EBS卷控制台设备名与系统内NVMe设备名匹配方法
AWS Nitro架构实例挂载的EBS卷会通过NVMe接口暴露给操作系统,控制台配置的/dev/sdX为逻辑分配名,操作系统内实际识别的设备名是/dev/nvmeXn1,属于正常现象,可通过以下方法直接匹配:
方法1:通过disk by-id目录直接查询(无需额外安装工具)
执行命令:
ls -l /dev/disk/by-id/ | grep 'nvme-Amazon_Elastic_Block_Store'
输出示例:
lrwxrwxrwx 1 root root 9 Oct 6 14:24 nvme-Amazon_Elastic_Block_Store_volss -> ../../nvme3n1 lrwxrwxrwx 1 root root 9 Oct 6 14:24 nvme-Amazon_Elastic_Block_Store_volyy -> ../../nvme5n1
输出规则:nvme-Amazon_Elastic_Block_Store_后的字符串为EBS卷ID删除横杠后的结果,比如volss对应卷IDvol-ss,volyy对应卷IDvol-yy,后面的路径即为系统内实际设备名。
你可以直接和aws cli查询到的卷ID对应,即可得到对应关系:
- 卷ID
vol-ss(控制台设备名/dev/sde,标签Disk1)对应系统内设备/dev/nvme3n1 - 卷ID
vol-yy(控制台设备名/dev/sdd,标签Disk-2)对应系统内设备/dev/nvme5n1
(以上对应关系为示例,实际以你命令输出为准)
方法2:通过udevadm查询指定设备对应的卷ID
如果要单独查某一个nvme设备对应的卷ID,执行命令(替换为你要查的设备名):
udevadm info --query=property --name=/dev/nvme3n1 | grep ID_SERIAL
输出中ID_SERIAL值后缀即为去掉横杠的卷ID。
方法3:通过nvme-cli工具查询(更直观)
先安装工具:
yum install nvme-cli -y
执行查询命令:
nvme list
输出的Serial列直接展示对应EBS卷ID(去掉横杠),和左侧的Node列的系统设备名一一对应。
内容的提问来源于stack exchange,提问作者Kenot Solutions
相关产品推荐
相关产品推荐

