Automatisches Backup der Konfiguration eines EMC DS300 Fibrechannel Switches

Wie bei vielen Dingen hilft auch hierfür der Einsatz eines Expect- Scriptes. Die Zeilen 10 und 12 enthalten den Anmeldenamen und das Passwort für das Login. Die Zeile 14 legt das Übertragungsverfahren (hier SCP), den Anmeldenamen, sowie den Zielhost und das Zielverzeichnis fest.
Das Passwort für den SCP Zugriff enthält Zeile 16. Dass die obigen Anmeldedaten auf den jeweiligen Zielen so wenig Rechte als möglich und so viel als unbedingt nötig haben sollten, versteht sich von selbst.

Expect script

#!/usr/bin/expect
set host [lindex $argv 0]
set timeout 30

if ($argc!=1) {
  send_error "Usage: $argv0 Hostname\n"
  exit 1;
}

spawn ssh admin@$host
expect "password:"
send "GANZGEHEIM\r"
expect ":admin> "
send "configupload -all -p scp 172.19.3.492,brocadeup,/data/up/brocade/$host.txt\r"
expect "password:"
send "PASSWORD\r"
expect ":admin>"
send "exit\r"

Aufruf des Expect Scripts

Der Aufruf des oben gelisteten Expect- Scripts kann auf der Shell mit
fetch-brocade-config.bash host.na.me
erfolgen.
Diesen Befehl kann man selbstverständlich auch zeitgesteuert als CRON- Job ausführen.