Adaptec RAID 5405 后面的 SATA 磁盘驱动器无法被检测为块设备

Adaptec RAID 5405 后面的 SATA 磁盘驱动器无法被检测为块设备

由于我的主板 (Gigabyte 970A-DS3 rev.3) 上缺少免费的内置 SATA 3.0 插头(总共 6 个),我有一个 Adaptec RAID 5405 (3G SAS/SATA RAID) 来移动所有“慢速”SATA 1.0 /2.0 设备连接到此卡而不创建任何 RAID。 Adaptec RAID 5405 具有 1 个 SFF-8087 连接器,允许使用 SFF-8087 转 4 SATA 电缆连接最多 4 个设备。现在我有两个设备,使用这种类型的电缆连接到该控制器:DVD-RW (Plextor PX-891SA) 和 SATA 2.0 HDD (Hitachi HDP725050GLA360)。由于某种原因,连接的 HDD 作为块设备不可见,因此我无法通过使用非持久命名或使用 UUID 来安装现有分区(不仅在内部而且在所有内部都/dev/sdXX没有这样的设备/分区))。我正在运行旧稳定的 Debian Stretch 9.13。/dev/disk/by-uuiddev/disk/by-* subtree

uname -a:

Linux tekomspb 4.9.0-11-amd64 #1 SMP Debian 4.9.189-3+deb9u2 (2019-11-11) x86_64 GNU/Linux

lspci | grep -i adaptec向我展示:

06:00.0 RAID bus controller: Adaptec AAC-RAID (rev 09)

首先,我尝试从以下位置发现任何内容lsscsi -g

[0:1:1:0]    disk    Hitachi  HDP725050GLA360  GM4O  -          /dev/sg0 
[0:3:0:0]    cd/dvd  PLEXTOR  DVDR   PX-891SA  1.06  /dev/sr0   /dev/sg1 
[1:0:0:0]    disk    ATA      PLEXTOR PX-128M5 1.05  /dev/sda   /dev/sg2 
[2:0:0:0]    disk    ATA      Hitachi HDP72505 A50E  /dev/sdb   /dev/sg3 
<more disks, attached to the MB SATA connectors>

-尽管sg设备是在/dev/树中呈现的,但第一行第六列没有显示任何内容。我做了一些进一步的研究,发现尽管它被 HBA 检测到(通过启动时的初始 HBA BIOS 和使用 Adaptec 的 arcconf 实用程序从 shell 检测到),在/devas中可见/dev/sg0,由 smartctl 可见,使用smartctl -d sat -a /dev/sg0,但它不显示为块设备在/sys.另一方面,光驱在/sys和中都被很好地检测为块设备/dev(如/dev/sr0/dev/sg1)。

以下是 的输出tree -F -d -L 3 --noreport。很明显,光驱被检测为块设备,但 HDD 由于某种原因没有被检测到。

/sys/devices/pci0000:00/0000:00:15.0/0000:06:00.0/host0/
├── power
├── scsi_host
│   └── host0
│       ├── device -> ../../../host0
│       ├── power
│       └── subsystem -> ../../../../../../../class/scsi_host
├── subsystem -> ../../../../../bus/scsi
├── target0:1:1
│   ├── 0:1:1:0
│   │   ├── bsg
│   │   ├── generic -> scsi_generic/sg0
│   │   ├── power
│   │   ├── scsi_device
│   │   ├── scsi_generic
│   │   └── subsystem -> ../../../../../../../bus/scsi
│   ├── power
│   └── subsystem -> ../../../../../../bus/scsi
└── target0:3:0
    ├── 0:3:0:0
    │   ├── block
    │   ├── bsg
    │   ├── driver -> ../../../../../../../bus/scsi/drivers/sr
    │   ├── generic -> scsi_generic/sg1
    │   ├── power
    │   ├── scsi_device
    │   ├── scsi_generic
    │   └── subsystem -> ../../../../../../../bus/scsi
    ├── power
    └── subsystem -> ../../../../../../bus/scsi

输出来自arcconf getconfig 1

----------------------------------------------------------------------
Physical Device information
----------------------------------------------------------------------
      Device #0
         Device is a Hard drive
         State                              : Ready
         Supported                          : Yes
         Transfer Speed                     : SATA 3.0 Gb/s
         Reported Channel,Device(T:L)       : 0,1(1:0)
         Reported Location                  : Connector 0, Device 1
         Vendor                             : Hitachi
         Model                              : HDP725050GLA360
         Firmware                           : GM4OA52A
         Serial number                      : GEAXXXXXXXXXXX
         Size                               : 476940 MB
         Write Cache                        : Enabled (write-back)
         FRU                                : None
         S.M.A.R.T.                         : No
         S.M.A.R.T. warnings                : 0
         Power State                        : Full rpm
         Supported Power States             : Full rpm,Powered off,Reduced rpm
         SSD                                : No
         MaxCache Capable                   : No
         MaxCache Assigned                  : No
         NCQ status                         : Enabled
      Device #1
         Device is a CD ROM
         Supported                          : Yes
         Transfer Speed                     : SATA 1.5 Gb/s
         Reported Channel,Device(T:L)       : 2,0(0:0)
         Vendor                             : PLEXTOR
         Model                              : DVDR   PX-891SA
         Firmware                           : 1.06

如何解决此问题以允许 HDD 作为块设备呈现并安装?

答案1

无法通过 Adaptec RAID 控制器将磁盘驱动器直接公开为块设备。几乎所有来自 Adaptec 的控制器都不支持此功能 - 至少 5405、5805 以及更一般的整个 3 和 5 系列,但没有有关 6 系列 RAID 控制器的信息。控制器的 BIOS 不允许执行此操作 - 它根本不支持 HBA 功能。

几个人尝试这样做,但没有成功。

与上述类似的唯一一件事(解决方法)可以使用(创建)JBOD 卷来完成,该卷将由唯一的单个磁盘组成。

支持 HBA 的唯一例外是:Adaptec 系列 7 和 Adaptec 系列 8 控制器(请参阅手动的)。 Adaptec 的更多解释这里

您可以通过查看 BIOS 菜单来确定您的控制器是否支持此类功能。仅当有以下(或类似)选项时:控制器模式介绍后,您可以将 RAID 控制器变成简单的 HBA。 控制器模式菜单如果这些选项都不存在,那么您在这里什么也做不了。

答案2

由于某种原因,连接的 HDD [在 RAID 控制器下连接]作为块设备不可见,因此我无法挂载现有分区

如果您除了插入磁盘或将SATA/SAS 电缆从RAID 控制器连接到磁盘之外没有执行任何操作,这是正常的。

您必须进入 RAID 控制器设置屏幕(通常是 Ctrl-R),并以某种方式进行配置。默认情况下,新的(或使用过的)磁盘通常会显示 -Unconfigured Good这意味着它已准备好使用,但不会像您所观察到的那样显示在 Linux 中。

RAID 控制器有所不同,如果您的控制器允许您更改磁盘未配置好到 JBOD,这意味着它支持 JBOD 功能,但并非所有 raid 卡都支持,那么当该磁盘设置为 JBOD 时,它将在 Linux 中显示为块设备,例如,/dev/sdb然后您可以在其上创建分区和文件系统并挂载就像你习惯的那样。

否则,您需要Create a virtual disk在通电后立即进入 RAID 卡设置屏幕。即使它只是一个磁盘,您也可以创建一个虚拟磁盘它本质上是 RAID-0。然后它将在 Linux 中显示为块设备,/dev/sdb您可以对其进行分区/文件系统/挂载。

# this command will list all disks in the system, including those behind
# a raid controller but only if those disks behind the raid controller have
# been configured as JBOD or a virtual disk

# Thus "unconfigured good" means just that, unconfigured, so it won't be available past the raid card setup screen

smartctl --scan

答案3

smartctl -d aacraid,0,0,{Drive} -i /dev/sg0

答案4

我从未在 Adaptec 5405 上测试过它,但一种解决方法是使用 Adaptec raid BIOS 中的每个物理磁盘创建一个 raid0 阵列。您必须禁用虚拟 raid0 驱动器的警报 + 设置另一个选项以防止 raid 控制器将虚拟驱动器标记为离线/损坏(=强制虚拟 raid0 驱动器保持在线并呈现给主机操作系统)。它远非理想,也不推荐,但它对我来说在多个 raid 控制器上都有效(shure 的 LSI 芯片,我想我也在 Adaptec raid 控制器上做到了这一点)。希望这可以帮助。

相关内容