在Suse 12 SP2操作系统中,多路径软件(通常称为multipath或者multipathd)被用来管理和聚合来自第三方存储设备的多个I/O路径,以实现冗余和负载均衡。这种技术对于提高数据可用性和系统稳定性至关重要。然而,有时在进行设备别名设置后,可能会遇到使用别名查询SCSI-ID时无法找到对应设备的情况,这通常是由于对多路径设备管理和查询的理解不充分导致的。 我们需要理解多路径设备的基本结构。在Linux系统中,多路径设备通常会被映射到/dev/mapper下的逻辑卷(LVM,Logical Volume Manager),如示例中的/dev/mapper/mpathc。这些逻辑卷是通过udev规则和设备文件系统(/dev/disk/by-id)来为物理设备创建的别名,以便于管理和识别。例如,/dev/dm-2是底层设备映射的直接表示,而/dev/mapper/mpathc是基于其功能或管理目的创建的用户友好的名称。 在问题描述中,尝试用以下两个命令查找SCSI-ID: 1. `ls -l /dev/disk/by-id | grep -w "$(basename /dev/mapper/mpathc)$" | grep scsi | awk '{print $9}'` 2. `ls -l /dev/disk/by-id | grep -w "$(basename /dev/dm-2)$" | grep scsi | awk '{print $9}'` 第一个命令试图根据多路径设备别名(/dev/mapper/mpathc)来查找SCSI-ID,但没有返回结果。这可能是因为udev规则并没有为这个特定的多路径设备生成对应的by-id链接。另一方面,第二个命令通过直接引用/dev/dm-2找到了SCSI-ID(即scsi-mpathc),这表明设备确实存在于系统中,只是别名未正确链接到SCSI-ID。 这种情况的发生可能有以下原因: 1. **udev规则配置不正确**:udev规则可能没有定义将/dev/mapper/mpathc映射到一个包含SCSI-ID的by-id链接。你需要检查/etc/udev/rules.d目录下的规则文件,特别是与multipath相关的规则,确保它们正确地创建了所需的链接。 2. **多路径配置问题**:多路径软件可能没有配置为生成或更新别名,或者配置文件中可能存在错误。检查/etc/multipath.conf配置文件,确保其中包含了正确的alias设置。 3. **系统或软件更新**:在某些情况下,系统或多路径软件的更新可能会导致原有别名失效。确保你的multipath软件和内核版本是最新的,并且兼容你的Suse 12 SP2环境。 4. **udev重载**:可能需要触发udev重新加载规则,以确保新的或更新的规则生效。可以尝试`udevadm control --reload`和`udevadm trigger`命令。 5. **重启服务**:重启multipath服务也可能有助于解决问题。使用`systemctl restart multipathd`命令来重启服务,并检查设备是否按照预期创建了别名。 解决这个问题通常需要检查和调整多路径配置,包括检查udev规则、multipath.conf配置,以及确保服务状态正常。一旦找到问题所在,修复它并验证设备别名是否能正确查询到SCSI-ID。如果仍然遇到困难,可能需要查阅Suse 12 SP2的官方文档或向社区寻求更多帮助。
- 粉丝: 0
- 资源: 2
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助