Nagy dilemmát okozott az a probléma, hogy ha van egy olyan hardware a birtokunkban, ami által hot swap cserélhetünk diskeket, akkor a rendszerünk is tudja kezelni újraindítás nélkül. Több kollégát is kérdezgettem ez ügyben, és általában azt a választ kaptam, hogy ez többnyire HBA-SAN témakörben használatos, ott meg akkor a HBA driverét töltjük újra és hasonlók. Kézzelfogható választ, teszem azt sima SCSI diskek esetében sosem kaptam.
Szerintem a most kitesztelt módszer a legtöbb újabb típusú Linux esetében működni fog, ahol van már sys kezelés. A bemutatott dolgok egy Ubuntu 10.04-n prezentálom.
Alap helyzet
Egy CDROM és egy DISK van a virtuális rendszernek adva:
Adjunk hozzá hot-swap egy új disket
Persze OS oldalról semmit nem fogunk még látni ebből. Legalábbis még.
Pásztázzuk újra a scsi csatolót
A következő paranccsal tehetjük ezt meg. Egy speciális stringet kell küldenönk a megfelelő sys devide-nek.
# echo „- – -” > /sys/class/scsi_host/host2/scan
# fdisk -l
# cat /proc/scsi/scsi
!! Fontos, hogy az scsi_host-on belül ha több host[SZÁM] device van, akkor a jóra alkalmazzuk.
A syslogban a következő nyoma lesz az új disk felismerésének.
Disk Eltávolítása a rendszerből
Természetesen alap az, hogy ha volt rajta filerendszer, akkor azt umountoljuk. Majd a következő paranccsal eltávolítjuk:
Egy disk explicit hozzáadása
Ha nem scannelni akarunk, hanem tudatosan egy bizonyos disket hozzáadni, akkor arra is van lehetőség:
# echo „scsi add-single-device [h] [b] [t] [l]” > /proc/scsi/scsi
-
* [h] : Host
* [b] : Bus (Channel)
* [t] : Target (Id)
* [l] : LUN numbers
A mostani konkrét esetben:
# echo „scsi add-single-device 2 0 1 0” > /proc/scsi/scsi