公司动态

LSI阵列卡IR与IT模式详解:从硬件RAID到HBA直通实战指南

📅 2026/7/29 3:16:46
LSI阵列卡IR与IT模式详解:从硬件RAID到HBA直通实战指南
1. 项目概述为什么今天还要折腾LSI阵列卡如果你最近在二手市场淘服务器配件或者想给家里的老工作站升级存储性能大概率会听到“LSI阵列卡”这个名字。这东西在专业圈子里尤其是数据中心和影视后期工作室曾经是绝对的存储性能标杆。现在虽然NVMe固态硬盘大行其道但对于海量数据存储、低成本搭建多盘位NAS、或者给老服务器续命来说一张几十到几百块的LSI阵列卡依然是性价比极高的选择。它能让你把多块普通的SATA或SAS硬盘“捆绑”在一起变成一个逻辑上的大硬盘不仅容量翻倍还能通过RAID技术实现数据冗余保护或者速度翻倍。我手头这张LSI 9260-8i就是当年的经典款现在在二手市场依然很活跃。很多人拿到手插上电脑发现要么不认盘要么进不了系统折腾半天最后只能吃灰。这其实不怪卡而是因为从固件模式到驱动再到RAID配置每一步都有“坑”。这篇教程就是把我这些年从踩坑到熟练从只会用官方工具到玩转命令行的心得系统地梳理出来。无论你是想用它在TrueNAS/Unraid里做直通还是在Windows Server下组建高性能存储池跟着步骤走都能让你少走至少80%的弯路。2. 核心概念与准备工作理解“IT模式”与“IR模式”的区别在真正动手之前我们必须搞清楚LSI阵列卡现在属于Broadcom旗下最核心的两个概念IT模式Initiator Target和IR模式Integrated RAID。这直接决定了你拿到这张卡后它能干什么、该怎么用。2.1 两种模式的核心差异与应用场景简单来说IR模式是阵列卡的“完全体”。在这种模式下阵列卡自己就是一个功能完整的硬件RAID控制器。它有自己的处理器ROC芯片和缓存通常带电池或电容保护所有RAID的计算、数据条带化、奇偶校验都在卡上完成。你需要在卡自带的配置界面CtrlH进入的WebBIOS里创建虚拟磁盘VD然后操作系统看到的就是这个已经组好RAID的“大硬盘”。它的优势是性能强、不占用主机CPU资源、配置直观。缺点是一旦卡坏了数据恢复相对麻烦需要同型号或兼容的卡才能识别。而IT模式你可以理解为阵列卡的“直通模式”或“HBA主机总线适配器模式”。在这种模式下阵列卡退化成一块纯粹的SAS/SATA扩展卡它的作用只是把连接在其上的每一块物理硬盘原封不动地、一个一个地“透传”给操作系统。操作系统看到的是每一块独立的物理硬盘。此时所有的RAID功能如果你想做的话将由操作系统层面的软件来实现例如Windows的存储池、Linux的mdadm、或者TrueNAS/Unraid的ZFS/阵列管理。那么到底该选哪种模式选IR模式如果你需要在Windows/Linux系统下直接使用硬件RAID追求极致的阵列性能尤其是写性能因为有缓存加速并且希望配置管理相对独立于操作系统。选IT模式如果你计划将卡用于TrueNAS Core/Scale、Unraid、Proxmox VE做直通等系统。这些系统强烈推荐甚至要求使用HBA卡IT模式来直接管理硬盘以便实现其高级的文件系统功能如ZFS的纠错、快照或灵活的存储方案。注意市面上流通的二手LSI卡很多默认是IR模式。而像9207-8i这类纯HBA卡则出厂就是IT模式且无法刷成IR。购买前一定要问清楚。2.2 工具准备与固件/驱动下载工欲善其事必先利其器。玩转LSI卡你需要准备以下工具并强烈建议在开始前下载好。一台用于操作的电脑最好是一台带有PCIe插槽的台式机。笔记本通常无法操作。一个可启动的U盘≥1GB用于制作DOS或Linux启动盘进行刷写固件等底层操作。所需软件包请从Broadcom官方支持网站搜索对应型号下载以下以LSI 9260-8i为例固件Firmware:这是写入阵列卡芯片里的底层程序。不同模式对应不同的固件包。例如9200_8i_Package_P20_IR_IT_FW_BIOS_for_MSDOS_Windows这样的包就同时包含了IR和IT模式的固件。BIOS用于在开机自检POST时显示阵列卡信息并进入配置界面CtrlH。如果不需要开机配置可以刷掉以加快启动速度。管理工具MegaCLI / storcli:这是在操作系统Windows/Linux下管理阵列卡的神器。可以查看阵列状态、重建阵列、设置报警等。storcli是新一代工具更推荐。sas2flash / sas3flash:这是在DOS或EFI Shell下刷写固件和BIOS的命令行工具。根据卡是SAS2如9260还是SAS3如9300系列选择。驱动程序用于让操作系统识别阵列卡或由它创建的虚拟磁盘。Windows可以在设备管理器里在线更新但提前下载好更稳妥。Linux内核通常已包含驱动megaraid_sas。实操心得我习惯在开始前建立一个清晰的文件夹把DOS启动工具、固件包、管理工具分门别类放好。比如LSI_Tools/9260-8i/Firmware/,LSI_Tools/9260-8i/StorCLI/。避免刷机时手忙脚乱找错文件。3. 固件刷写与模式切换实战这是新手遇到的第一道坎也是最重要的一步。我们将以将一张LSI 9260-8i从默认的IR模式刷写成IT模式为例演示完整过程。3.1 制作DOS启动盘并刷写IT模式固件为什么用DOS因为官方提供的刷写工具sas2flash在DOS环境下最稳定、兼容性最好。制作DOS启动U盘使用工具如Rufus。选择你的U盘引导类型选择“FreeDOS”其他默认点击开始即可。完成后将下载好的固件包里的所有文件特别是sas2flash.efi或sas2flash_dos.exe以及.rom和.bin固件文件拷贝到U盘根目录。引导至DOS环境将U盘插入要操作阵列卡的电脑开机进入BIOS设置启动顺序为U盘优先保存重启。成功后会进入一个黑色的C:\或A:\命令行界面。备份原有固件非常重要在DOS提示符下切换到U盘盘符比如U:然后输入sas2flash_dos.exe -o -sasadd 0具体命令可能因工具版本略有不同请参考固件包内说明。这个命令会列出当前卡的信息包括SAS地址。务必记录下这个SAS地址如果刷写失败这是救砖的关键。清除原有固件输入sas2flash_dos.exe -o -e 6。-e 6参数表示擦除整个Flash芯片包括固件和BIOS。执行后会提示确认输入y回车。这个过程很快。刷入IT模式固件输入sas2flash_dos.exe -o -f 文件名.bin -b 文件名.rom。这里文件名.bin是IT模式的固件文件如IT文件夹下的mptsas2.rom文件名.rom是BIOS文件如果不需要BIOS可以不加-b参数。命令执行后会显示刷写进度。验证刷写结果刷写完成后输入sas2flash_dos.exe -o -listall。你应该能看到控制器型号并且Firmware Product ID会显示为IT字样而不是IR。同时检查SAS地址是否与你之前记录的一致。踩坑记录刷写时最常见的错误是“Failed to initialize PAL”。这通常是因为你用的sas2flash工具版本与你的卡不匹配比如用SAS3的工具刷SAS2的卡。务必确认工具版本。另一个坑是有些主板UEFI BIOS下传统的DOS启动盘可能无法工作此时需要制作UEFI Shell的启动盘并使用.efi格式的工具进行刷写原理类似。3.2 在操作系统内使用工具切换模式进阶对于某些型号如某些9211-8i如果已经能在系统内识别也可以尝试在操作系统内使用更安全的方式切换。例如在Linux下可以使用megarec工具但步骤更为复杂且有风险。对于新手强烈推荐上述的DOS/UEFI Shell刷机法这是最彻底、最标准的方法。刷写完成后的直观变化刷成IT模式后开机自检时阵列卡的信息显示会变得非常简短通常只有一行SAS控制器初始化的提示而不会出现漫长的RAID BIOS初始化过程也无法再按CtrlH进入WebBIOS配置界面。因为此时它已经是一块纯粹的HBA卡了。4. 系统安装与驱动配置固件刷好后接下来就是让操作系统正确识别和使用这张卡。4.1 Windows系统下的安装与配置物理连接将阵列卡插入主板PCIe插槽最好是x8或x16使用SAS转SATA线Forward Cable或SAS线连接硬盘。开机。系统识别如果刷的是IT模式进入Windows磁盘管理你应该能看到所有连接的物理硬盘就像直接接在主板上一样。如果刷的是IR模式此时硬盘是“裸盘”需要先配置RAID。配置IR模式RAID如需开机自检时看到LSI卡信息提示按CtrlH或其他指定键进入WebBIOS配置界面。这是一个图形化界面虽然很复古。步骤进入后在Configuration Wizard中选择New Configuration。选择硬盘在左边的物理硬盘列表中勾选你想要加入阵列的硬盘点击Add To Array添加到右边的Drive Group。创建虚拟磁盘将Drive GroupAdd to Span然后点击Next。接下来是关键步骤选择RAID级别如RAID0, RAID1, RAID5, RAID10设置条带大小Stripe Size通常256KB或1MB对性能影响较大一般选默认或256KB设置读写策略Read Policy: Always Read Ahead; Write Policy: Write Back with BBU if battery is good, else Write Through。初始化创建完成后建议进行Full Initialization完全初始化虽然耗时较长数小时到数十小时但能确保阵列稳定性。也可以选择Fast Initialization快速初始化仅需几分钟但某些极端情况下可能不如完全初始化稳定。安装驱动与管理工具无论哪种模式都建议安装Broadcom提供的Windows驱动和管理工具storcli。驱动可以通过设备管理器自动更新或者手动安装inf文件。storcli安装后可以在命令行以管理员身份运行使用storcli /c0 show查看控制器0的信息功能非常强大。4.2 Linux系统下的安装与配置以Ubuntu为例Linux对LSI卡的支持通常非常好。驱动对于主流内核megaraid_sas驱动模块已经内置。启动后使用lspci | grep -i lsi或lspci | grep -i raid命令应该能看到你的阵列卡信息。使用lsmod | grep megaraid检查驱动是否加载。识别磁盘使用lsblk或fdisk -l命令可以看到所有连接的物理硬盘IT模式或虚拟磁盘IR模式。在IT模式下硬盘名通常是/dev/sda,/dev/sdb...在IR模式下虚拟磁盘通常是/dev/sda。安装管理工具从Broadcom官网下载对应Linux版本的storcli工具包通常是.rpm或.deb包也有提供二进制文件。例如对于UbuntuDebian系可以下载.deb包后用sudo dpkg -i storcli_xxx.deb安装。安装后使用sudo storcli /c0 show来管理。配置软件RAIDIT模式下如果你在IT模式下想用Linux做RAID可以使用mdadm工具。例如将/dev/sdb和/dev/sdc组成RAID1sudo mdadm --create /dev/md0 --level1 --raid-devices2 /dev/sdb /dev/sdc。然后对/dev/md0进行分区和格式化即可。实操心得在Linux服务器上我更喜欢用IT模式然后结合ZFS或mdadm。这样数据层的控制权完全在操作系统迁移和恢复更灵活。storcli工具在Linux下同样不可或缺我通常会设置一个crontab定时任务定期运行storcli /c0 /eall /sall show来检查所有物理硬盘的健康状态SMART信息并将输出重定向到日志文件便于监控。5. 高级管理与维护技巧阵列卡不是设置好就一劳永逸的日常的监控和维护同样重要尤其是用于存放重要数据时。5.1 使用StorCLI进行命令行管理storcli是比老款MegaCLI更强大、语法更清晰的工具。以下是一些常用命令示例查看控制器信息storcli /c0 show查看所有物理硬盘storcli /c0 /eall /sall show查看虚拟磁盘storcli /c0 /vall show查看物理硬盘详细状态包括SMARTstorcli /c0 /e32 /s0 show all这里/e32是Enclosure 32/s0是Slot 0请根据实际情况替换设置硬盘为JBOD模式仅IR模式卡支持storcli /c0 /e32 /s0 set jbod将某块盘设为直通不参与RAID启动阵列重建如果RAID1/5/10中有一块盘坏了换上新盘后需要手动触发重建。首先找到新盘的Enclosure和Slot号然后执行storcli /c0 /e32 /s1 start insert假设新盘在/e32/s1。设置蜂鸣器报警storcli /c0 set alarmon5.2 监控、报警与故障排查健康状态监控定期检查storcli输出的Drive Temperature和SMART警告。温度过高是硬盘故障的前兆。事件日志使用storcli /c0 show events可以查看控制器事件日志里面会记录硬盘掉线、重建开始/完成、电池状态变化等重要信息。电池/电容学习周期带缓存CacheCade的IR模式卡如9260其缓存电池或电容需要定期进行“学习周期”Learn Cycle来校准电量确保意外断电时能将缓存中的数据安全写回硬盘。这个周期通常是每90天左右自动进行一次期间缓存会暂时禁用写入策略从Write Back变为Write Through可能导致性能短暂下降。你可以用storcli /c0 show bbustatus查看电池状态并用storcli /c0 start bbulearn手动启动学习建议在业务空闲时进行。常见故障排查表现象可能原因排查步骤系统不认卡/硬盘1. 卡未插紧或PCIe插槽故障2. 固件损坏或模式不对3. 线缆故障1. 重新插拔卡更换PCIe插槽2. 尝试进入卡的BIOSCtrlH进不去则可能需重刷固件3. 更换SAS/SATA数据线或背板RAID阵列降级Degraded1. 物理硬盘掉线或故障2. 线缆接触不良1. 使用storcli查看哪个盘状态为FrnForeign或UGoodUnconfigured Good2. 重新插拔故障硬盘的线缆3. 替换故障硬盘并启动重建阵列卡缓存策略失效1. 电池/电容电量低或故障2. 学习周期正在进行1.storcli /c0 show bbustatus检查电池状态2. 如果电池故障需更换否则缓存只能工作在Write Through模式影响写入性能在IT模式下系统内看不到硬盘1. 硬盘未初始化有残留RAID信息2. 操作系统驱动问题1. 在IR模式下进入WebBIOS将硬盘标记为“Unconfigured Good”或使用storcli的/c0 /ex /sx set good命令清除配置2. 检查并安装正确的HBA驱动5.3 性能调优建议条带大小Stripe Size这是影响RAID性能最关键参数之一。小文件多如虚拟机硬盘、数据库日志选择较小的条带如64KB、128KB大文件顺序读写多如视频编辑、备份仓库选择较大的条带如512KB、1MB。没有绝对标准需要根据负载测试。读写策略Read Policy读策略Always Read Ahead预读对顺序读取性能提升明显建议开启。Write Policy写策略Write Back with BBU回写电池保护能提供最高的写入性能数据先写入缓存即返回成功。但前提是电池/电容必须健康如果电池故障务必切换到Write Through直写模式否则断电会丢失数据。I/O策略I/O Policy通常选择Cached缓存。最后一点个人体会LSI阵列卡尤其是这些经典的SAS2代产品在今天依然有强大的生命力。它的稳定性和性价比是很多消费级产品无法比拟的。玩转它的关键不在于死记命令而在于理解其背后的架构逻辑——IR和IT模式的区别硬件RAID与软件RAID的取舍。把这张卡用好了你搭建的不仅仅是一个存储系统更是一套对数据中心级硬件原理的深刻理解。无论是组一台安静省电的家用NAS还是搭建一台用于渲染的小型工作站这张小小的卡都能成为你可靠的数据基石。如果在操作过程中遇到任何奇怪的问题第一反应应该是去Broadcom官网搜索对应型号的“Release Notes”和“User Guide”官方文档往往能提供最准确的答案。