Linux multipath 丢路径排障:用 fc_host、lsblk、multipath -ll 做主机/FC 分流,覆盖物理层、Zone 可见性、multipath 配置与单 path failed 定界,附协作责任对照表。本篇为「FC 存储网络 · 主机协同 · 变更换装 · 监控合规(第三辑)」第 2 篇。
上一篇讲VMware 路径怎么读;本篇专攻 Linux:multipath -ll 少了一条/变成 failed,到底查主机还是查光纤交换机?
适用:Linux + Device Mapper Multipath + FC(Brocade);发行版与 multipath-tools 版本略有差异。
现场最容易吵起来的两句:
本篇目标:用分流图把责任一次划清。
先看:是「从来没有」还是「曾经有、后来丢」→ 再看:scsi/fc 层还有没有盘→ 有盘无 mpath → 偏主机 multipath→ 无盘 → 偏 FC / 阵列 / 链路→ 有盘但路径 failed 抖动 → 两边都查,按信号分流
01 丢路径长什么样?
先问清一句:
02 主机侧:5 分钟先采证(不要先吵)
2.1 必打命令
# 1)多路径现状(核心)multipath -ll# 2)multipathd 是否活着systemctl status multipathd# 或:service multipathd status# 3)SCSI 磁盘是否还在lsblkls /dev/disk/by-id/# 4)FC 主机口与 WWPNls /sys/class/fc_host/cat /sys/class/fc_host/host*/port_namecat /sys/class/fc_host/host*/port_state# 5)链路/远端口状态(若有)cat /sys/class/fc_host/host*/fabric_namedmesg -T | tail -n 100journalctl -u multipathd -n 100 --no-pager
2.2 快速判读表
03 分流总图(贴值班墙)
04 支路一:FC / 物理层(主机口都没 Online)
4.1 主机侧确认
cat /sys/class/fc_host/host0/port_statecat /sys/class/fc_host/host0/port_name
4.2 交换机侧
switch:admin> switchshowswitch:admin> portshow <port>switch:admin> porterrshowswitch:admin> nsshow
回推multipath: 物理口恢复 Online 后,再扫 SCSI / 看 path 是否自动恢复。
05 支路二:可见性(Online 但没有盘)
FC 口 Online ≠ 操作系统看见 LUN
还要:Name Server 登录 + Zone 生效 + 阵列映射 + 主机扫描
5.1 FC 侧三件套
switch:admin> nsshowswitch:admin> cfgactvshow# 核对:主机 WWPN(含 NPIV 虚拟 WWPN)+ 存储 WWPN
5.2 阵列侧
5.3 主机扫描(示例,按发行版选用)
# 对每个 fc/scsi host 扫描(示例)echo "- - -" > /sys/class/scsi_host/hostX/scan# 部分环境:# rescan-scsi-bus.sh# 厂商 HBA 工具lsblkmultipath -ll
06 支路三:multipath 本体(有盘但组不起来 / 少绑)
6.1 典型原因对照
6.2 配置相关(原则,不贴一套万能 conf)
# 检查配置(常见)multipath -t # 查看生效配置(若支持)grep -n "" /etc/multipath.conf | head# 语法/重载视版本:# multipathd reconfigure# systemctl reload multipathd
6.3 「有 sd 无 mpath」检查清单
07 支路四:单条 path failed(最常见争吵点)
7.1 把 failed path 钉到「哪根纤」
multipath -ll# 记下 failed 的 sdX / hostX / channel/target/lun# 反查 FCls -l /sys/class/fc_host/# 结合 udev、lsscsi、厂商工具看 sdX 来自哪个 HBA 口lsscsi -v
目标:得到failed path → HBA hostY → WWPN → 交换机 Domain/Port。
7.2 钉到交换机口之后
switch:admin> switchshowswitch:admin> porterrshowswitch:admin> portstatsshow <port>

7.3 主机侧「误杀路径」可能
# 恢复类操作务必谨慎,先定界再执行(命令随版本)# multipathd show paths# multipath -r # 重载映射,生产慎用
08 主机侧 vs FC 侧:责任分流表(给协作用)
一句话发给对方之前,先贴:
multipath -ll 摘要 + port_state + 对应交换机 switchshow 那一行。
09 恢复后验收(不要只看「路径回来了」)
10 实战小案例:Online 齐全,mpath 却少两路
11 夜班红线
12 命令速查卡
Linux
Brocade
13 一句话总结
Linux 丢路径不要先吵责任:先看 fc_host 与 lsblk,无盘走 FC/Zone/阵列,有盘无 mpath 走 multipathd/conf,单 path failed 则钉到具体光纤口再查 CRC 或慢漏——证据分流,比互相甩锅快十倍。
14 彩蛋
公众号回复「Linux路径」 自动领取:
①主机/FC 分流总图
②5 分钟采证命令卡
③「有盘无mpath」排查清单
④协作甩锅终结对照表(谁牵头)
Online 是交换机的事,mpath 齐不齐常常是主机的事——先分流,再动手。
