Debian 和多路径 IO 问题

Debian 和多路径 IO 问题

基本情况是,我有一个运行 Debian 的盒子,盒子内部有一个 Intel SCSI RAID 控制器,它以 RAID1 模式控制 2 个硬盘,操作系统就安装在硬盘上。

此外,我有一个 QLogic 光纤通道适配器,可将设备连接到光纤通道 SAN。

我的安装过程是将 Debian 安装到本地驱动器,暂时不安装 QLogic 固件。

然后,一旦我使设备上线,我就会安装固件驱动程序。

这会将我的内部驱动器从 /dev/sda 翻转到 /dev/sdc,这有点烦人,但可以恢复。无论如何,可能应该通过 UUID 解决这些问题。

一旦我重新上线,我必须安装多路径工具(该框架是一个多路径框架)。

但是,一旦我再次重新启动机器,它在发现多路径目标后启动失败,提示我的本地驱动器正忙,无法挂载到/root。

有人能帮忙解决一下这里的问题吗?或者至少如何在设备启动后禁用多路径,然后忽略内部驱动器?

答案1

这似乎与 multipath-tools-boot 和 SCSI 控制器发生冲突。暂时的解决方法是使用软件 RAID。

答案2

听起来你还没有在 multipath.conf 中将你的内部驱动器列入黑名单,你可以按品牌和型号列入黑名单像这样的外卡

blacklist {
devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
devnode "^hd[a-z]"
device {
    vendor "Intel*"
    product "*"
}

进行相应修改以反映您的 Intel RAID 所呈现的驱动器。完成后,重建您的 initrd,因为 multipath.conf 已复制到那里。现在,当您启动时,应该会评估黑名单,这些驱动器将保持不变,并且您的根目录应该可以正常安装。

此外,正如您所评论的,您应该使用 UUID 或 FS 标签作为确定性挂载点,sdx 设备分配并非设计为确定性的。

相关内容