Da hat man mal eine IBM xSeries 346 in den Fingern und ist enttäuscht, dass es die Platten nicht tun – denkt man! Wie kommt man da drauf? Man schaltet den Server ein und nur eine LED an den Bays bzw. den HDD-Rahmen gehen an. Nimmt man eine Platte raus und schiebt sie vorsichtig rein (vorsichtig = im Submilimeterbereich langsam) bleibt die LED an. Dreck im Bay? Wackler im SCSI-Stecker? Das BIOS verrät auch nix.
All das traf nicht zu. Das Tiny-RAID-Utility, das man als BIOS des RAID-Controllers bezeichnen kann, bietet so gut wie keine Infos und es lässt sich auch nichts konfigurieren. Man muss sich die ServeRAID Tool CD bei IBM runterladen.
Nach dem booten des Standard-Linux wird bei Ankunft in rc3 natürlich erstmal das wichtigste gemacht: Eine andere Konsolenschriftart geladen, welche Comic Sans nicht ganz unähnlich sieht. Und auch wichtig: Maus anschließen! Anderenfalls kotzt irgendein Maus-Programm die Konsole voll und man landet in einem Dialog, der sich via Tastatur nicht bedienen lässt. Tipp: USB-Mäuse funktionieren. In meinem Fall sollte ich erstmal den RAID-Controller updaten. Entgegen anderer Informationen im Internet _muss_ man nicht die exakte Version für seinen Controller laden.
Aber das Tool an sich funktioniert sehr gut. Hot Swap geht, Arrays definieren geht, HDDs identifizieren geht, Arrays identifizieren geht. Also alles was man braucht. Und da merkt man dann: Die LEDs der Platten sind komplett Software-Steuerbar. Ist die LED aus, beutetet das nur, dass die Platte nicht aktiv ist. So einfach ist das.
Will man mittels check_nrpe einen String welcher Leerzeichen enthält übergeben sollte dies auf Seite des Nagios Servers als auch beim NRPE Server passieren:
Nagios Check:
check_something!param1!”param with whitespace”
NRPE Server:
command[check_something]=/path/to/check.sh $ARG1$ “$ARG2$”
Die ” auf Seite des Nagios Servers sorgen dafür, dass check_nrpe die Leerzeichen nicht als einzelne Parameter interpretiert, die ” beim NRPE Server sorgen dafür das dieser diese nicht fehlinterpretiert.
Nicht schön, aber es geht.
Will man einen check in Nagios bauen welcher ein Script per NRPE aufruft und diesem mehrere “-” Parameter übergeben kann das zu problem führen wenn NRPE versucht die Parameter selbst zu interpetieren.
Als workaround kann man statt
check_blablub!-ARG1!-ARG2!-ARG3!-ARG4
folgendes konfigurieren:
check_blablub!"-ARG1 -ARG2 -ARG3 -ARG4"
Was nicht zu funktionieren scheint ist:
check_blablub!"-ARG1"!"-ARG2"!"-ARG3"!"-ARG4"
Damit werde ich mich in nächster Zukunft beschäftigen.
Ich hatte vor kurzem das Problem, dass ich ein Timeout bekam wenn ich eine VM per Livemigration von einem Host weg oder zu diesem Host hin verschieben wollte.
Problem war die MTU des physikalischen Interface die auf den Host auf 1500 gestellt war während die restlichen Hosts im Cluster eine MTU von 9000 hatten. Nachdem die MTU auf 9000 gestellt wurde (Neustart nicht erforderlich) ging alles wieder.
Die gante Zeit habe ich das Paket resolvconf verteufelt – dieses Mistding, das mir immer meine von Hand erstellte resolv.conf zerstört. Da dnsmasq darauf angewiesen ist, dass man seine IP 192.168.122.1 dort einträgt, kann man manchmal ganz schön das Suchen und Fluchen anfangen.
Lösung: Unter /etc/resolvconf/resolv.conf.d/ sind die Templates, die es benutzt. Wenn man da in die Datei head einfach seinen statischen DNS einträgt, läufts. Der Vorteil: Bei einem Testsystem mit dynamischer IP, evtl. sogar einem Laptop, bei dem sich der DHCP und die DNS-IPs ständig ändern, hat man seine schön dynamische resolv.conf.
echo "nameserver 192.168.122.1" >> /etc/resolvconf/resolv.conf.d/head
Ich hatte heute das Problem, dass grep mir bei der Suche in einem Testfile als Rückgabe
Binary file (standard input) matches
liefert. Interessanterweise passiert dies auch wenn ich mir den Inhalt mittels cat auf der Konsole ausgeben lasse und dies nach grep pipe. Die Datei wurde unter Windows erstellt, was auch das Problem zu sein scheint.
Der parameter “-a” bei grep kann das Problem lösen.
Wer sich über zu große PNG Dateien ärgert, für den habe ich ein paar Befehle.
Am meisten kann man durch das reduzieren der Farben auf z.B. 256 erreichen:
convert -quality 0 +dither -colors 256 bild.png bild.png
Um die letzten kb zu sparen können diese Tools verwendet werden.
optipng -zc1-9 -zm1-9 -zs0-2 -f0-5 bild.png
advpng -z4 bild.png
Das Tool advpng muss kompiliert werden. Der Sourcecode ist unter advancemame.sourceforge.net zu finden. Alle anderen Tools sind in Ubuntu 9.10 enthalten.
Mehr…
Eigentlich simpel aber trotzdem erwähnenswert:
Will man über NRPE einen vbs-Check aufrufen sollte man dieses wie folgt im NRPE-Client eintragen:
command[NRPE_COMMAND_NAME]=C:\WINDOWS\system32\cscript.exe -nologo c:\PATH\TO\vbs.vbs
Und weil der Fehler immer mal wieder auftaucht: vor und nach dem “=” keine Leerzeichen setzen!
Gruß
Bibliothekar
Array Inhalte zu sortieren in der Bash ist nicht weiter schwer.
Das folgende Beispiel würde ein Array “numberArray” mit Zahlen absteigend sortieren.
numberArray=($(echo ${numberArray[*]} | tr ' ' '\n' | sort -r))
Das Array wird nach tr umgeleitet, dort werden alle Leerzeichen durch Zeilenumbrüche ersetzt damit sort das ganze sortieren kann. Was und wie man sortieren will hängt hauptsächlich von sort ab.
Und wieder ein mal eine Problemlösung fürt ein Problem welches ich alle paar Monate aufs neue lösen muss / will.
Hat man die .bashrc geändert einfach den Befehl
. .bashrc
eingeben und schon ist die Änderung da. Auf das ich es nie wieder vergessen möge.