我刚刚将 LSI 9211-8i 添加到运行 Debian Wheezy(在 Linux 内核上)的系统中。所有软件都是最新的,内核是3.2.65-1+deb7u2 x86_64
根据 uname 的。
卡直接从包装中取出并进入主机,目视检查后没有发现卡有任何明显问题(尽管我没有已知的好卡可以比较)。这一点,再加上内核正在与卡片对话(见下文),这让我相信卡片本身比哑弹更有用。
物理安装卡没有问题。PCIe x8 卡不需要我可用的 PCIe x16 插槽的全长,但据我所知,如果主机和卡完全相互通信,这应该不是问题。主板有两个 PCIe x16 插槽,其中一个被列为“x4 性能”。由于该卡显然在某种程度上被检测到,我不相信像只有显卡的 x16 插槽这样的东西在这里起作用。
在 9211 的内部端口上,我连接了两根 8077 转 4x8482 分支电缆,将每根电缆连接到两个硬盘驱动器(每个上的其他两个插头不用),中间没有 PMP 或任何类似的东西。两个 8077 端口中的一个(在不太可能的情况下会有所不同,离 PCIe 插槽较远的那个)有点挑剔,但是一旦我以正确的角度将其滑入,电缆就会毫无争议地卡入并锁定到位。我更仔细地查看了那个端口的区域,但没有发现卡有物理损坏的迹象。
与我安装这些新驱动器之前的系统相比,系统在启动时的噪音明显更大,这让我相信该卡至少可以供电并启动驱动器。驱动器随后减速。
我预计该卡在引导过程中会发出一些声音,但很惊讶没有得到任何类似的结果(没有“按 Ctrl-C 启动 LSI 逻辑配置实用程序”提示)。我查看了主板的 BIOS 设置,但找不到需要为板外 BIOS 或 HBA 翻转的相关开关。在启动过程中敲击 Ctrl+C 到 GRUB(以尝试调用卡的板载配置实用程序)不会产生任何可见的结果。
mpt2sas 模块在启动时自动加载,并且似乎与卡通信正常:
[ 1.692606] mpt2sas version 10.100.00.00 loaded
[ 1.698699] mpt2sas 0000:08:00.0: enabling device (0000 -> 0002)
[ 1.698717] mpt2sas 0000:08:00.0: setting latency timer to 64
[ 1.698721] mpt2sas0: 64 BIT PCI BUS DMA ADDRESSING SUPPORTED, total mem (32967612 kB)
[ 1.698761] mpt2sas0: IO-APIC enabled: IRQ 16
[ 1.698764] mpt2sas0: iomem(0x00000000d0440000), mapped(0xffffc90013ea8000), size(16384)
[ 1.698766] mpt2sas0: ioport(0x0000000000001000), size(256)
[ 2.139165] mpt2sas0: Allocated physical memory: size(3379 kB)
[ 2.139168] mpt2sas0: Current Controller Queue Depth(1483), Max Controller Queue Depth(1720)
[ 2.139170] mpt2sas0: Scatter Gather Elements per IO(128)
[ 2.360461] mpt2sas0: LSISAS2008: FWVersion(20.00.00.00), ChipRevision(0x03), BiosVersion(07.27.01.00)
[ 2.360464] mpt2sas0: Protocol=(Initiator), Capabilities=(Raid,TLR,EEDP,Snapshot Buffer,Diag Trace Buffer,Task Set Full,NCQ)
[ 2.360563] mpt2sas0: sending port enable !!
[ 4.895613] mpt2sas0: host_add: handle(0x0001), sas_addr(0x500605b00963d470), phys(8)
[ 10.024028] mpt2sas0: port enable: SUCCESS
lspci
显示卡正在被检测和识别:
$ lspci | grep LSI
08:00.0 Serial Attached SCSI controller: LSI Logic / Symbios Logic SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] (rev 03)
$
然而, 这就是有趣的地方,据我所知,既没有lsblk
也没有展示任何新的硬盘驱动器。udevadm info --exportdb
它们也(显然,给定 udevadm)没有出现在任何 /dev/disk/by-* 目录中。
我尝试运行udevadm trigger
以防万一启动顺序排序有问题,但这并没有改变任何东西,也没有向系统日志添加任何东西(即 dmesg 输出的最新部分之前和之前是相同的)运行该命令后)。
我不倾向于相信两条全新的分线电缆都以某种方式损坏。
物理上从卡上拔下两条分支电缆(以从案例中删除 HDD 和电缆)并没有产生任何明显的区别。
我按照这些说明在我的系统上安装了最新版本的 MegaRAID Storage Manager。(基本上,使用 rpmsalien --scripts
将它们转换为 debs,然后 dpkg --install debs。)之后,插入并/etc/init.d/vivaldiframeworkd
启动驱动器,运行/usr/local/MegaRAID Storage Manager/StorCLI/storcli64 show all
会打印以下内容:
Status Code = 0
Status = Success
Description = None
Number of Controllers = 0
Host Name = my-host
Operating System = Linux3.2.0-4-amd64
在这一点上,我有点没有想法了。如果我可以提供任何其他信息可能有助于回答这个问题,请告诉我。我几乎开始认为这毕竟是主板问题。
以将它们用于 ZFS 池的最终目标,我需要执行哪些咒语、魔法话语、牺牲或其他相关仪式才能使连接到 9211 的驱动器出现在 Linux 中?
更新:在物理上切换显卡和 9211 的位置后,9211 的 BIOS 现在会在启动时显示,我可以进入配置实用程序。然而,它仍然显示没有连接磁盘(即使在SAS 拓扑视图中),尽管磁盘非常明确地连接并且电缆在两端都牢固就位。(然而,我还没有使用卡的配置实用程序创建任何 RAID 阵列。)更重要的是,卡报告它已被“禁用”。在这一点上,我几乎愿意将我最初的问题归结为糟糕的主板,而我目前的问题归结为 9211 本身的 IR 与 IT 固件。稍后我将尝试将卡刷入 IT 固件,看看效果如何;由于 ZFS,我无论如何都计划使用 IT 固件,所以有
事实证明,这涉及两个实际问题(和一个小烦恼)。非常感谢ewwhite为我提供了故障排除建议,最终让我能够解决这个问题。
第一个问题是我安装 LSI 的 PCI Express 插槽无论出于何种原因都不能与 HBA 完全配合使用。这里让我感到困惑的主要是Linux正在检测卡,但没有做更多(当然也没有检测到任何连接到它的磁盘)。当我在显卡和 HBA 之间切换位置时, HBA 的 BIOS 出现了,我可以按照ewwhite 的说明进入配置实用程序,并且显卡仍然可以正常工作。(我想这就是我使用我所拥有的东西所得到的......)但是,尽管我三重检查连接是否安全,但配置实用程序的“SAS拓扑”菜单或Linux中仍然没有显示驱动器.
有一次,控制器报告自己“被用户禁用”;这与其配置中的引导支持设置有关。将其设置为“启用”选项之一修复了该问题。这是小烦恼。
第二个问题主要是我的一个误解。我不知何故认为该卡的 8077 端口将为驱动器提供电源,但他们没有。回想起来,我认为这是有道理的。将连接到我正在使用的驱动器的相应 8482 连接器的电源线连接到系统的电源,这很容易固定。(但是,我对安装 LSI 后第一次启动系统时的初始噪音没有很好的解释。)
整理好上述内容后,控制器现在可以正常工作,并且当前正在配置磁盘。我把它留在这里是希望有人,在某个时候,会发现它很有用,而不是像我一样犯同样的错误。
您不需要做任何事情来使连接到此卡的 SAS 驱动器在 Linux 或其他方式下可见。LSI-9211 是基本的 SAS HBA。
这只是故障排除:
<<<Press Ctrl-C to start LSI Logic Configuration Utility>>>
,按 Ctrl+C。