Linux - jak przeskanować szynę SCSI?

W zastosowaniach produkcyjnych z reguły nie ma możliwości zbyt częstego restartu serwera, czasami więc zachodzi potrzeba przeskanowania szyny SCSI w celu wykrycia nowych urządzeń, w opisywanym przypadku był to zasób dyskowy na kontrolerze FC.

Na początek szukamy na szynie PCI kontrolera:

lspci | grep -i qlogic

08:01.0 Fibre Channel: QLogic Corp. ISP2422-based 4Gb Fibre Channel to PCI-X HBA (rev 02)
08:01.1 Fibre Channel: QLogic Corp. ISP2422-based 4Gb Fibre Channel to PCI-X HBA (rev 02)

Wiadomo już dla jakiego jakiego urządzenia wymuszamy skanowanie, w tym przypadku urządzenie PCI 08:01:0, upewniamy się że istnieje dowiązanie symboliczne:

ls -l /sys/class/scsi_host/|grep 08:01
total 0
lrwxrwxrwx 1 root root 0 Oct 10 14:52 host0 -> ../../devices/pci0000:00/0000:00:02.0/0000:07:00.3/0000:08:01.0/host0/scsi_host/host0
lrwxrwxrwx 1 root root 0 Oct 10 14:52 host3 -> ../../devices/pci0000:00/0000:00:02.0/0000:07:00.3/0000:08:01.1/host3/scsi_host/host3

Następnie wymuszamy skanowanie poleceniem:

echo "- - -" > /sys/class/scsi_host/host0/scan    

Chwilę później powinny się pojawić nowe urządzenia, najłatwiej sprawdzić poleceniem dmesg:

dmesg |tail
[  631.237780] scsi 0:0:0:2: Direct-Access     IFT      A16F-G1A2        342H PQ: 0 ANSI: 3
[  631.238177] sd 0:0:0:2: Attached scsi generic sg5 type 0
[  631.238315] sd 0:0:0:2: [sdc] 1228800000 512-byte logical blocks: (629 GB/585 GiB)
[  631.238545] sd 0:0:0:2: [sdc] Write Protect is off
[  631.238548] sd 0:0:0:2: [sdc] Mode Sense: 8f 00 00 08
[  631.238829] sd 0:0:0:2: [sdc] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[  631.239611]  sdc: unknown partition table
[  631.261692] sd 0:0:0:2: [sdc] Attached SCSI disk
[  660.112901]  sdc: sdc1

Jak widać, pojawiło się nowe urządzenie blokowe: sdc.

Napisano dnia: r.