У меня есть сервер с 2 внутренними дисками с аппаратным RAID Adaptec и внешний дисковый ящик, подключенный через SAS.
lsscsi
находит все устройства:
# lsscsi
[0:0:0:0] disk Adaptec System V1.0 /dev/sda
[0:1:0:0] disk WDC WD1003FBYX-0 01.0 -
[0:1:1:0] disk WDC WD1003FBYX-0 01.0 -
[1:0:0:0] disk Promise VessRAID 1840s 0304 -
Первые 3 - это 2 физических диска и аппаратный RAID поверх них.
Четвертый - это внешний дисковый ящик, подключенный через SAS.
Как видите, в каталоге / dev нет соответствующего устройства для внешнего VessRAID.
VessRAID - это внешний блок SAS-RAID, который представляет собой устройство SAS. Линукс четко видит устройство, но как-то не превращает его в устройство в / dev.
На VessRAID есть два логических диска.
У меня такое чувство, что мне нужно сказать Linux, что это дисковое устройство SAS, которое Linux следует использовать, и сканировать на предмет логических дисков и отображать их в / dev. Но мне не удалось найти волшебную команду, которая делает это.
Копаться /sys
дал это:
# cat /sys/class/bsg/1\:0\:0\:0/device/model
VessRAID 1840s
# cat /sys/class/bsg/1\:0\:0\:0/device/vendor
Promise
Это еще раз подтверждает, что Linux видит уже известное устройство.
/ dev / disk / * видит внутренние диски с RAID как одно устройство с двумя разделами. Не видит внешний диск:
# ls -al /dev/disk/by-path
total 0
drwxr-xr-x 2 root root 100 Jun 29 17:06 .
drwxr-xr-x 5 root root 100 Jun 29 17:06 ..
lrwxrwxrwx 1 root root 9 Jun 29 17:06 pci-0000:02:00.0-scsi-0:0:0:0 -> ../../sda
lrwxrwxrwx 1 root root 10 Jun 29 17:06 pci-0000:02:00.0-scsi-0:0:0:0-part1 -> ../../sda1
lrwxrwxrwx 1 root root 10 Jun 29 17:06 pci-0000:02:00.0-scsi-0:0:0:0-part2 -> ../../sda2
Проблема была не в Linux, а в хранилище. Что требовалось, так это назначить Linux в качестве инициатора на устройстве хранения и отключить маскирование LUN.
После этого я просто modprobe -r mptsas;sleep 1; modprobe mptsas
для принудительного повторного сканирования. Затем диски появились в lsscsi
:
[0:0:0:0] disk Adaptec System V1.0 /dev/sda
[0:1:0:0] disk WDC WD1003FBYX-0 01.0 -
[0:1:1:0] disk WDC WD1003FBYX-0 01.0 -
[4:0:0:0] disk Promise VessRAID 1840s 0304 /dev/sdb
[4:0:0:1] disk Promise VessRAID 1840s 0304 /dev/sdc