我刚刚将 LSI 9211-8i 添加到运行 Debian Wheezy(在 Linux 内核上)的系统中。所有软件都是最新的,内核符合3.2.65-1+deb7u2 x86_64
uname。
卡从包装中取出后直接放入主机,经过目视检查,没有发现卡上有任何明显问题(尽管我没有已知的好卡可以与之比较)。这一点,加上内核正在与卡对话(见下文)的事实,使我相信卡本身比坏卡稍微有用一些。
物理安装卡没有问题。PCIe x8 卡不需要我手头有的 PCIe x16 插槽的全长,但据我所知这应该不是问题如果主机和卡之间完全通信的话。主板有两个 PCIe x16 插槽,其中一个被列为“x4 性能”。由于卡显然在某种程度上被检测到,我不相信这里存在任何类似显卡专用 x16 插槽的情况。
我在 9211 的内部端口上连接了两条 8077-to-4x8482 分支电缆,每条电缆都连接到两个硬盘驱动器(每条电缆上的另外两个插头不用),中间没有 PMP 或类似的东西。两个 8077 端口中的一个(不太可能有影响,距离 PCIe 插槽较远的端口)有点挑剔,但一旦我以正确的角度将其滑入,电缆就会卡入并锁定到位,没有任何问题。我仔细检查了该端口周围区域,但没有发现卡有物理损坏的证据。
与安装这些新驱动器之前相比,系统启动时噪音明显增大,这让我相信该卡至少在供电并启动驱动器。驱动器随后停止旋转。
我以为卡会在启动过程中发出一些提示,但令我惊讶的是,没有听到任何提示(没有“按 Ctrl-C 启动 LSI Logic 配置实用程序”提示)。我查看了主板的 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)
$
然而, 这就是有趣的地方,据我所知,它们都没有显示任何新硬盘。它们也没有显示在任何 /dev/disk/by-* 目录中(显然,这是由于 udevadm 的原因lsblk
)。udevadm info --exportdb
我尝试运行udevadm trigger
以防启动顺序出现问题,但这并没有改变任何东西,也没有在系统日志中添加任何内容(即,运行该命令之前和之后 dmesg 输出的最新部分是相同的)。
我不相信两个都的全新分支电缆不知为何断裂了。
从卡上拔下两根接线电缆(以从机箱中移除硬盘和电缆)没有产生任何明显的区别。
我跟着这些说明在我的系统上安装最新版本的 MegaRAID Storage Manager。(基本上,获取 rpm,使用alien --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 固件,所以在我看来这样做没有坏处。
答案1
事实证明,这涉及两个实际问题(以及一个小麻烦)。非常感谢尤怀特为我提供故障排除建议,最终帮助我修复了这个问题。
第一个问题是,我安装 LSI 的 PCI Express 插槽由于某种原因无法与 HBA 完全配合使用。这里让我感到困惑的是,Linux 检测到了卡,但没有做更多的事情(当然也没有检测到连接到它的任何磁盘)。当我在显卡和 HBA 之间交换位置,HBA 的 BIOS 出现了,我能够按照ewwhite 的指示,并且图形仍能正常工作。(我想这就是我利用我所拥有的东西所得到的结果......)然而,尽管我再三检查连接是否安全,但配置实用程序的“SAS 拓扑”菜单或 Linux 中仍然没有显示任何驱动器。
控制器曾一度报告自己被“用户禁用”;这与其配置中的启动支持设置有关。将其设置为“已启用”选项之一即可解决该问题。这只是一个小麻烦。
第二个问题主要是我的误解。我以为卡的 8077 端口会为驱动器供电,但实际上并没有。现在回想起来,我觉得这是有道理的。连接电源线连接到我使用的驱动器的相应 8482 连接器到系统电源,这个问题很容易解决。(但是,我无法很好地解释安装 LSI 后第一次启动系统时出现的初始噪音。)
整理完以上内容后,控制器现在运行正常磁盘目前正在配置中。我把这个留在这里,希望有人在某个时候会发现它很有用,并且不会犯和我一样的错误。
答案2
您无需执行任何操作即可使连接到此卡的 SAS 驱动器在 Linux 或其他环境下可见。LSI-9211 是一款基本的 SAS HBA。
这只是故障排除:
- 您的 LSI 9211-8i 控制器健康吗?(重要的)
- 当
<<<Press Ctrl-C to start LSI Logic Configuration Utility>>>
出现提示时,按 Ctrl+C。 - 在 MPT SAS BIOS 实用程序中查看磁盘。选择“SAS 拓扑”... 您看到磁盘了吗?(很重要)
- 尝试不同的电缆。(重要的)
- 尝试不同的 PCIe 插槽。(不太重要)
- 磁盘是否已知良好?