Bei einem Linux unter VMware im laufenden Betrieb eine Festplatte einbinden

Oft ergibt sich die Notwendigkeit auf einem Server mit Linux im laufenden Betrieb eine neue Festplatte anzuschließen. Z.B. wenn der Server virtuell unter VMware läuft und man diesem eine neue Festplatte zuordnet hat und diese ohne Neustart des Servers einbinden möchte.

Um dies bei einem Server mit Linux zu machen benötigt man als erstes die Nummer des HBA (Host Bus Adapter). Diese findet man am besten über das sysfs raus.  Jeder HBA hat ein Verzeichnis unterhalb des Ordners /sys/class/scsi_host/.  Der HBA mit der Nummer 0 hat somit den Ordner /sys/class/scsi_host/host* usw.. In jedem dieser Ordner existiert eine Datei mit dem Namen proc_name. In dieser befindet sich der name des Treibers des jeweiligen HBA. Mit dem Wissen das der Treiber für den LSI Controller von VMware mptspi heißt, muss man jetzt nur noch den HBA, der einen Treiber mit diesem Namen hat. Um nicht in allen Dateien von Hand nachzusehen, kann man dies am besten den Befehl grep fürs ich erledigen lassen. Mit dem folgten Befehlt erhält man eine Ausgabe aller HBA, die die Buchstabenfolge mpt enthalten.

grep mpt /sys/class/scsi_host/host*/proc_name

Wenn die Ausgabe wie folgt aussieht, hat der HBA die Nummer 32.

/sys/class/scsi_host/host32/proc_name:mptspi

Nachdem man die Nummer des HBA rausgefunden hat, muss man den HBA seine Geräte neu scannen lassen. Mit dem folgenden Befehl bittet man den HBA mit der Nummer 32, seine Geräte im laufenden Betrieb neu zu scannen.

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

Danach sollte man mit dmesg sich die Kernelmeldungen ausgeben lassen. Ganz unten bei der Ausgabe sollte der Fund der neuen Festplatte gemeldet werden. Wenn die letzten Zeilen z.B. wie folgt aussehen, ist die Festplatte als Device /dev/sdb von Linux erkannt worden.

Mar  1 14:52:07 portal kernel: [ 1287.033631] scsi 32:0:1:0: Direct-Access     VMware   Virtual disk     2.0  PQ: 0 ANSI: 6
Mar  1 14:52:07 portal kernel: [ 1287.033641] scsi target32:0:1: Beginning Domain Validation
Mar  1 14:52:07 portal kernel: [ 1287.034017] scsi target32:0:1: Domain Validation skipping write tests
Mar  1 14:52:07 portal kernel: [ 1287.034020] scsi target32:0:1: Ending Domain Validation
Mar  1 14:52:07 portal kernel: [ 1287.034046] scsi target32:0:1: FAST-80 WIDE SCSI 160.0 MB/s DT (12.5 ns, offset 127)
Mar  1 14:52:07 portal kernel: [ 1287.034346] sd 32:0:1:0: [sdb] 104857600 512-byte logical blocks: (53.7 GB/50.0 GiB)
Mar  1 14:52:07 portal kernel: [ 1287.034422] sd 32:0:1:0: [sdb] Write Protect is off
Mar  1 14:52:07 portal kernel: [ 1287.034425] sd 32:0:1:0: [sdb] Mode Sense: 61 00 00 00
Mar  1 14:52:07 portal kernel: [ 1287.034444] sd 32:0:1:0: [sdb] Cache data unavailable
Mar  1 14:52:07 portal kernel: [ 1287.034447] sd 32:0:1:0: [sdb] Assuming drive cache: write through
Mar  1 14:52:07 portal kernel: [ 1287.034908] sd 32:0:1:0: Attached scsi generic sg2 type 0
Mar  1 14:52:07 portal systemd-udevd[1657]: Process '/bin/sh -c 'echo 180 >/sys$DEVPATH/device/timeout'' failed with exit code 2.
Mar  1 14:52:07 portal kernel: [ 1287.042034] sd 32:0:1:0: [sdb] Attached SCSI disk

Wenn die Festplatte als /dev/sdb erkannt wurde, können wir mit dem einrichten einer Partition weiter machen. Dazu muss zunächst eine Partitionstabelle auf der Festplatte angelegt und dann eine Partition erstellt werden. Dies kann man für die Festplatte /dev/sdb aus unserem Beispiel z.B. mit dem folgenden Befehlt erreichen.

cfdisk /dev/sdb

Nach eingäbe dieses Befehlt wird man zunächst gefragt welche Partitionstabelle man anlegen möchte. Ich empfehle die neuere und modere gpt anstelle der älteren dos zu wählen. Danach kann man in einem kleinen Menü eine neue Partition anlegen und speichern. Auf dieser Partition kann man dann mit mkfs ein Dateisystem anlegen und dieses kann man dann mit dem Befehlt mount in das laufende Linux einbinden. Und voilà, die neue Platte steht ohne Neustart zur verfügung.

Aus der Dell OMSA Live-CD einen Live-USB-Stick machen

Bei heutigen Server kommt es oft vor, dass man kein CD-ROM oder DVD Laufwerk mehr hat. In diesem Fall kann es sehr nützlich sein, anstelle einer Live-CD einen Live-USB-Stick zu haben. Dazu benötigt man nur das Image der OMSA Live-CD von dem Webserver von Dell (die aktuelle Version ist die OMSA Lice-CD 6.4) und den liveusb-creator. Und schon kann man sich innerhalb von wenigen Minuten einen Dell OMSA Live-USB-Stick erstellen.

Dell OMSA 6.3 Live CD

Wie gewohnt hat Dell mal wieder eine aktualisierte Live CD mit dem OMSA (Open Manage Server Agent) 6.3 auf Basis von CentOS bereit gestellt. Man findet diese auf einem FTP-Server von Dell unter der folgenden URL: http://linux.dell.com/files/openmanage-contributions/omsa-63-live/

In der Vergangenheit hatte Dell bereit regelmäßig solche Live CDs veröffentlicht. darüber habe ich bereit in dem Post OMSA 5.5 LiveCD mit vielen Dell-Treibern und Diagnose-Tools berichtet.

OMSA 5.4 LiveCD mit vielen Dell-Treibern und Diagnose-Tools

Für die Reparatur oder Migration eines Servers kann es mitunter sehr wichtig sein eine LiveCD zu haben. Von dieser kann man dann booten, ohne dass man etwas auf die Festplatte kopieren muss. Wenn man dazu Knoppix nimmt, hat man allerdings oft nicht die notwendigen Treiber und Diagnose-Tools des jeweiligen Herstellers.
Bei Dell gibt es deshalb regelmäßig eine kostenlose LiveCD auf Basis von CentOS, die fast alle notwendigen Dell-Treiber und Diagnose-Tools mitbringt. Leider ist auf der Linux-Webseite von Dell nur eine LiveCD erwähnt, die auf CentOS 4.4 basiert und einen OMSA 5.1 mitbringt. Wenn man etwas such findet man aber auch aktuellere Versionen. In dem Blog Direct2Dell wurde z.B. am 20.07.2007 eine LiveCD angekündigt, die auf CentOS 5 basiert und einen OMSA 5.2 dabei hat. Nach einigem stöbern in den Verzeichnissen der Dell-Webseite habe ich sogar eine aktuelle LiveCD entdeckt, die einen OMSA 5.4 im Gepäck hat.
Ein kleines Problem habe ich jedoch bei allen diesen CentOS LiveCD’s entdeckt. Bei einem aktuellen Dell PowerEdge 2900 Server mit DVD-ROM und SATA Platten hingen die CentOS LiveCD’s beim booten. Die Initial RAM-Disk scheint das DVD-Laufwerk nicht zu finden. Ein Knoppix 5.1 bootete hingegen ohne Probleme und fand sowohl das Platten-Array als auch das DVD-Laufwerk.