以下教程使用的为飞牛 fnOS 为范本在线刷新 CX4 固件应该适用以下几种系统,教程比较粗糙但是基本够用,文件我也存在自己的服务器上,免得官方失效 。esxi 和 unraid 教程另外再写 。
================================================================
ConnectX-4 Lx (MCX4421A-ACQ) 在线刷固件教程
适用:fnOS / TrueNAS SCALE / Proxmox(Debian 系)
不适用:群晖(MFT 难装,不推荐)
================================================================
【前提】
– 网卡:Mellanox / NVIDIA ConnectX-4 Lx,型号 MCX4421A-ACQ
– 系统:Debian 系,能 SSH
– 有 root 权限
– 刷写过程中不要断网断电
– 刷完必须完全断电,不是单纯 reboot
================================================================
一、SSH 进系统,获取 root
================================================================
sudo -i
================================================================
二、下载并安装 MFT 工具
================================================================
cd /tmp
wget “https://ky.mi-d.cn/?download=TANK%E8%AE%A2%E5%88%B6%E4%B8%BB%E6%9D%BF%E7%9B%B8%E5%85%B3%2FTAD6S4N10G%28N00_N305%29%2F%E7%BD%91%E5%8D%A1%E5%9B%BA%E4%BB%B6%2F%E5%9C%A8%E7%BA%BF%E5%88%B7%E5%9B%BA%E4%BB%B6%2Flinux%2Fmft-4.37.0-154-x86_64-deb.tgz”
tar xvf mft-4.37.0-154-x86_64-deb.tgz
cd mft-4.37.0-154-x86_64-deb
./install.sh
================================================================
三、启动 MST 并确认网卡
================================================================
mst start
mst status
ls /dev/mst
正常会看到类似:
/dev/mst/mt4117_pciconf0 bus:dev.fn=01:00.0
本文机器固定,PCI 地址为 01:00.0,后面命令都用这个。
================================================================
四、刷前检查 + 备份(强烈建议)
================================================================
1. 查看当前固件信息
flint -d 01:00.0 q
重点看:
FW Version —— 当前固件版本
PSID —— 固件标识符
Base MAC —— 网卡 MAC 地址
如果已经是 14.32.1900 且功能正常,可以不刷。
2. 备份原固件和配置(救砖用)
mkdir -p /root/cx4_fw_backup
cd /root/cx4_fw_backup
flint -d 01:00.0 ri cx4_original_fw.bin
flint -d 01:00.0 dc cx4_original_cfg.ini
备份保存在 /root/cx4_fw_backup/
================================================================
五、下载目标固件
================================================================
cd /tmp
wget “https://ky.mi-d.cn/?download=TANK%E8%AE%A2%E5%88%B6%E4%B8%BB%E6%9D%BF%E7%9B%B8%E5%85%B3%2FTAD6S4N10G%28N00_N305%29%2F%E7%BD%91%E5%8D%A1%E5%9B%BA%E4%BB%B6%2F%E5%9C%A8%E7%BA%BF%E5%88%B7%E5%9B%BA%E4%BB%B6%2Ffw-ConnectX4Lx-rel-14_32_1900-MCX4421A-ACQ_Ax-UEFI-14.25.17-FlexBoot-3.6.502.bin”
确认固件信息:
flint -i /tmp/fw-ConnectX4Lx-rel-14_32_1900-MCX4421A-ACQ_Ax-UEFI-14.25.17-FlexBoot-3.6.502.bin q
确认 PSID 和板型是 MCX4421A-ACQ。
================================================================
六、烧写固件
================================================================
flint -d 01:00.0 -i /tmp/fw-ConnectX4Lx-rel-14_32_1900-MCX4421A-ACQ_Ax-UEFI-14.25.17-FlexBoot-3.6.502.bin burn
看到以下输出说明成功:
Writing Boot image component – OK
Restoring signature – OK
100%
PSID 一致时不需要加 –allow_psid_change。
================================================================
七、完全断电(关键!不执行等于白刷)
================================================================
shutdown -P now
然后:
1. 拔掉电源线
2. 冗余电源全部拔掉
3. 等 30 秒以上
4. 可选:长按开机键 10 秒放掉余电
5. 插回电源线
6. 开机
CX4 刷完不是 reboot 就生效的,必须彻底断电。
================================================================
八、开机后验证
================================================================
mst start
flint -d 01:00.0 q
mlxfwmanager –query
确认版本:
FW Version: 14.32.1900
UEFI: 14.25.17
FlexBoot / PXE: 3.6.502
查温度:
mget_temp -d 01:00.0 -v
确认网卡已加载:
lspci | grep -i mellanox
ip link
ethtool -i ethX
dmesg | grep mlx
================================================================
九、常见问题
================================================================
【PSID mismatch】
报错:-E- PSID mismatch
说明卡上 PSID 和固件不一致。
先确认是不是 MCX4421A-ACQ 同板型。
确认没问题再加参数强刷:
flint -d 01:00.0 -i /tmp/fw-ConnectX4Lx-rel-14_32_1900-MCX4421A-ACQ_Ax-UEFI-14.25.17-FlexBoot-3.6.502.bin –allow_psid_change burn
OEM 卡(Dell/Lenovo/HPE/淘宝定制)不要随便跨刷。
【semaphore / cannot open device】
flint -clear_semaphore -d 01:00.0
然后重新 flint -d 01:00.0 q
【刷完系统不认网卡】
– 端口模式可能变成了 IB
– 驱动没加载
– 没彻底断电
检查:
lspci -nn | grep Mellanox
lsmod | grep mlx5
================================================================
十、最小可用命令合集(懒人版)
================================================================
sudo -i
cd /tmp
tar xvf mft-4.37.0-154-x86_64-deb.tgz
cd mft-4.37.0-154-x86_64-deb
./install.sh
mst start
mst status
flint -d 01:00.0 q
flint -d 01:00.0 ri /root/cx4_original_fw.bin
flint -d 01:00.0 dc /root/cx4_original_cfg.ini
flint -d 01:00.0 -i /tmp/fw-ConnectX4Lx-rel-14_32_1900-MCX4421A-ACQ_Ax-UEFI-14.25.17-FlexBoot-3.6.502.bin burn
shutdown -P now
断电 → 等 30 秒 → 上电 → 验证。
================================================================
固件文件存放于私有服务器,防止官方链接失效。
适用于 fnOS / TrueNAS SCALE / Proxmox。
================================================================
