- 目前服务器上安装的nvme类型硬盘,如果涉及到故障需要更换的话,对于nvme硬盘插在哪个槽位上是一个非常难确认的事情,由于工作原因涉及这块操作较多有些经验做下分享。
- 常用的方式有三种
- 凭个人经验+结合硬盘指示灯闪烁情况是否和其他硬盘一致来判断,不太准确,下文不做介绍
- 通过ledmon工具点亮nvme磁盘(使用范围教窄,很少有适配的),如果有需要可以找我要该工具链接
- 通过系统命令确认硬盘的bus address地址来反推slot号
1、ledmon工具
- 适用场景
- 必须是Dell R740xd以上的服务器才支持
- 必须要在Dell的idrac页面中可以监控到nvme硬盘才可以
2、通过bus address地址判断
- 首先你要确认你的硬盘在系统里面识别到的是什么,例如/dev/nvme8n1
可以是用nvme list命令查看
有两种方式
1、ls -l /dev/disk/by-path/ -l

2、lspci |grep -i non

- 通过查询,该块盘的bus address地址为‘0000:62:00.0’
- 然后通过dmidecode -t slot 去定位bus address地址为‘0000:62:00.0’
dmidecode -t slot > /tmp/slot.txt
直接编辑slot.txt文件去匹配‘0000:62:00.0
- 通过匹配可以看到该盘插在哪个bay上面的哪个slot

- 通过查出来的slot号再加上现场nvme硬盘灯闪烁情况来认定该盘是哪个槽位,就可以做到万无一失了