Kleine und große Linux AHAs
Beiträge getaggt mit kleinigkeiten
Monitoring: Hardware, die Software braucht, um zu wissen, wie es der Hardware geht
03. Jan
Ein neuer HP Server DL380 G7. Die aktuelle Baureihe – tolles Teil. Mit einem kleinen – wie ich finde total unnötigen Schönheitsfehler.
Hardware, die Software braucht, um zu wissen, wie es der Hardware geht?
Hört sich komisch an – ist aber so. Was wollten wir tun? Wir wollten auf diese Maschinen einen VMware Server installieren. Der neue VMware ESXi ist quasi eine freie Version des ESX Servers und wird direkt auf einem Server installiert, ohne dass ein Betriebssystem vorhanden sein muss (früher lief unter dem ESX ein RedHat, was heute darunter läuft weiß ich leider nicht).
Das ganze funktioniert auch mit der Hardware einwandfrei. Alles gut. Dann wollte ich die Maschine monitoren. Wie? Es gibt keine Agents für VMware. Also wollte ich das “Integrated Lights Out” (ILO) Board nutzen. Über diese Karte – mit separatem Netzwerkanschluss – kann man die Maschine remote administrieren (Konsole), bzw. auch direkt über die Hardware neu starten, Systeminfos einsehen (…). Unter anderem zeigt ILO auch das IML (Integrated Management Log) an. In diesem Log werden Systemmeldungen gespeichert wie z.B. Festplattenprobleme, ausgefallene Lüfter oder ähnliches.
Das ILO Interface kann über IPMI abgefragt werden (muss aktiviert werden). Damit lässt sich dann das Log auslesen, bzw. mit Hilfe des ipmievd das ganze auf Fehler beobachten. Der Befehl dazu lautet:
server01:~# ipmitool -I lanplus -U ilouser -H 10.10.200.98 -P <password> sel list 1 | 12/01/2011 | 15:10:13 | Power Supply #0x04 | Failure detected | Asserted 2 | 12/19/2011 | 07:16:21 | Power Supply #0x04 | Failure detected | Asserted
Das sah sehr gut aus. Nun sollte das mit einem Festplattenausfall getestet werden. Also eine Platte raus. Log abrufen …. nix. Keine Meldung. Hmmmm…. Bei den älteren Servern ging das.
Also alle Firmwarestände geprüft und am Ende mit HP in Kontakt getreten.
Extrawurst
Von HP haben wir dann erfahren, dass HP eine eigene Version (ich denke gepatcht mit Treibern/Modulen) des ESXi für ihre Hardware anbietet. Das ganze ist auch kostenfrei – nach Registrierung. Man benötigt diese Version, damit das ILO mitbekommt wenn eine Festplatte – oder möglicherweise auch andere Hardware – ausfällt, bzw. ein Problem hat. Verstehen muss ich das nicht, oder? Es muss auf dem System ein Agent/Modul/Treiber oder wie auch immer laufen, damit die eigene Hardware, in dem Fall eine Management Karte, den Status der Hardware mitbekommt.
Naja, wie dem auch sei. Nun funktioniert das ganze. Gut finde ich nicht, dass es eine solche Abhängigkeit gibt.
Jeder nur ein Kreuz – CPUs Prozessen zuteilen
02. Okt
Da sind sie nun – fast überall. Die SMP Systeme (Multicore Systeme). Und zu ihnen gesellen sich auch immer mehr Programme, die mehrere CPUs nutzen können … also Multithreaded sind. Und ein altbekanntes Problem.
Lang her
Wenn “damals” ein Prozess ein wenig “überschwenglich” war und durch ein Problem (z.B.) die ganze Leistung des Systems an sich gezogen hat, dann waren das so 100% und die Kiste war tot. Je nach dem.
nicht sooo lang her
Dann kamen die Multicore Systeme und unser Prozess konnte nicht mehr das ganze System lamlegen – Juhuuu. Man konnte sich also wenigstens noch anmelden und den Prozess killen.
Heute
Tja, heute sind wir wieder bei damals. Die Multicoresysteme werden von Multithreaded Prozessen an die Wand gefahren. Toll. Ein Prozess mit 400% CPU usage
Kann man da was tun?
Aber sicher doch. So viel man sich freut, dass das ein oder andere Programm nun mehrere Cores nutzt, so wenig brauchen viele der Programme das. Oder sagen wir mal so: Die meisten kommen auch mit 3 von 4 CPUs aus. Was mache ich also wenn ich einen Prozess habe, der so manches Mal die Kiste herunterzieht? Ich weise ihm einfach nur noch 3 der 4 CPUs zu und kann somit noch mit einer meine Anmeldung vollziehen.
Unser Freund zur Umsetzung dieses gewieften Planes heißt “taskset” (man taskset).
Grundsätzlich benötigt man lediglich 2 Informationen:
- Anzahl CPUs im System
- Anzahl CPUs die man zuweisen möchte
- ProzessID (PID) (bei einem vorhanden Prozess, ansonsten kann ein Prozess auch mit taskset gestartet werden)
CPUs
Die CPUs werden mit Hilfe einer Bitmask definiert.
CPU1 -> 0x00000001 CPU2 -> 0x00000002 CPU3 -> 0x00000004 CPU4 -> 0x00000008 ...
Möchte man eine CPU zuweisen (CPU MASK), so wird einfach die 2 für die CPU2 genommen.
xCPUs
Möchte man mehrere CPUs zuweisen, so werden diese einfach addiert (HEX!). Alle 4 CPUs wären somit “f”. CPU2 und CPU3 wäre “6″ und so weiter …
Nägel mit Köpfen
Um die CPU “Affinity” eines vorhandenen Prozesses zu setzen, nutzt man folgenden Befehl:
taskset -p <CPU MASK> <PID>
Bei Programmaufruf:
taskset <CPU MASK> <CMD>
Unleserliches debuggen, oder: Fehlersuche in verschlüsselten Protokollen
03. Mai
Immer mehr Datenverkehr wird verschlüsselt. Einerseits natürlich richtig und gut. Andererseits ein Problem. Früher konnte man mit Hilfe von Tools wie Wireshark (Ethereal) oder tcpdump relativ schnell Probleme (z.B.) in der Kommunikation zwischen Programm und Server herausfinden. Einfach den Netzwerkverkehr mitschneiden, ansehen / auswerten und es zeigten sich Fehler die man im Programm möglicherweise nicht zu Gesicht bekommen hat.
Mittlerweile sind die Pakete weitestgehend verschlüsselt und man kann nicht mehr einfach so “mit schreiben” – naja, man kann natürlich; aber lesen kann man es nicht. Also fällt ein mitschreiben – einfach mal so – flach.
Eine andere Möglichkeit die Kommunikation zwischen Programmen zu debuggen ist, sich einfach manuell zu verbinden und die Kommandos direkt einzugeben um zu prüfen ob der Server richtig reagiert. Dazu nahm man früher telnet … Auch telnet ist kein Kandidat mehr für verschlüsselte Protokolle.
Verbindung zu einem SSL geschützten Dienst
Eine Möglichkeit sich auf einen solchen Dienst zu verbinden bietet der Befehl
openssl s_client -connect <Zielrechner>:<Port>
Mit diesem Befehl kann man sich beispielsweise direkt auf einen per SSL geschützten IMAP Server (Port 993) verbinden und manuell Kommandos absetzen. Das ganze über eine SSL geschützte Verbindung – die nicht mitgeschnitten werden kann
Ganz wie früher mit telnet *freu*
Owned: Meine Gnome3 “Ausflüge”
02. Mai
Da steh ich nun, ich armer Tor,
und bin so klug als wie zuvor.
Naja, so oder so ähnlich. So wie auch viele meiner Kollegen bin ich jemand, der – gerade was meinen Desktop angeht – sehr gerne immer das neueste an Software hat. Gnome3 sollte da keine Ausnahme sein. Aber wie? Wie siehts denn aus mit Ubuntu? Oder muss ich was anderes nehmen?
Für maverick hatte ich schon öfter mal nach einen funktionierenden, aktuellen PPA gesucht und nichts richtiges gefunden. Was dann? LMDE (Linux Mint Debian Edition) habe ich mittlerweile zu Hause installiert, da mir Ubuntu mit Unity nicht so recht passt (strategisch möchte ich das nicht unterstützen). Aber auch dafür gibt es noch kein Gnome3
Naja, machen wir es rund. Was hab ich getan?
zu Hause
Zu Hause hab ich Fedora 15 (beta) installiert. Da ich über einige Jahre mit RedHat gearbeitet habe, konnte ich mich da recht schnell zurecht finden. Und ich muss sagen es funktioniert prima. Auch die Sache mit meinem ISCSI Laufwerk auf der NAS-Box (s. hier) habe ich ohne Probleme ans Laufen gebracht. Gnome3 funktioniert und bisher gab es keine Abstürze.
Ich muss auch einigen anderen Bloggern oder Berichten Recht geben, dass man sich sehr schnell daran gewöhnt und es dann auch mag. Persönlich finde ich die Oberfläche sehr modern und von der Bedienung her fortschrittlich. Einziges Manko sehe ich darin – wie auch viele andere – dass es zu wenig Tools gibt um den Desktop anzupassen. Selbst einen Menüeintrag kann man nur über Umwege realisieren.
Das Aussehen der Shell kann man anpassen – mit Hilfe des Tools Gnome-Tweak. Aber auch das ist noch ausbaufähig
Arbeitsplatz
Nachdem Natty dann letzte Woche das Licht der Welt erblickte wurde es Zeit auch in der Firma den Rechner in die neue Welt zu hieven. Also erst ein Update auf Natty und mit Natty sollte es ja – laut diversen Beschreibungen – möglich sein Gnome3 zu installieren. Nach dem Update auf Natty waren schon mal die Desktop Effekte nicht mehr nutzbar. Also Treiber deinstalliert und neu installiert, reboot und gut – ging wieder. Dann Gnome3? Ja.
Gedacht, getippt und es erschien ein Gnome3 Desktop. Sah soweit ganz gut aus, aber … Naja, das Theme passte alles nicht mehr. Diverse Menüeinträge funktionierten einfach nicht (Systemeinstellungen).
Naja, ging ja noch.
Dann hab ich Empathy eingerichtet. Wollte doch unbedingt die neue Benachrichtigungsleiste mit der man auch direkt auf Chats antworten kann ausprobieren. Sah soweit gut aus. Bis zur 5 Nachricht – mit der sich dann der komplett Desktop verabschiedete. Das passierte dann auch nach einen Neustart noch öfter.
Ok, das war am Freitag Nachmittag. Also erst mal übers Wochenende so stehen lassen.
Nach dem Wochenende gabs dann Updates aus dem Gnome3 PPA. Also voller Hoffnung installiert. Danach war dann alles futsch. Der GDM funktionierte gar nicht mehr. Das System fror ein bevor der Anmeldebildschirm erschien. Das wars dann.
Also Ubuntu 10.10 Stick genommen und das ganze neu installiert. Home zurückgesichert und mein guter Gnome 2 Desktop ist wieder da. Alles gut.
Fazit
Gnome3 gefällt – wenn auch noch einiges an Arbeit ist. Den Ubuntu Test kann ich nicht wirklich empfehlen – mit Fedora sieht das um einiges besser aus.
Generell fehlt dem neuen Desktop noch einiges an Tools, die den persönlichen Desktop konfigurieren lassen. Auch Dinge die eigentlich logisch erscheinen sind meiner Meinung nach erst Ansatzweise umgesetzt. So sucht die Suche in Gnome3 (das Suchfeld rechts oben) nur in den zuletzt geöffneten Dateien, bzw. in den Anwendungen. Warum bringt man dort nicht direkt die Funktionalität rein die Gnome-Do, Kupfer oder Synapse auf den Desktop bringen? Des Weiteren gibt es zu Zeit kein Tool um das Menü zu editieren, bzw. eigene Menüeinträge anzulegen (das geht manuell über .desktop Einträge in .local/share/apps/).
Ich hoffe Ubuntu wird auch eine Version mit vernünftig integriertem Gnome3 anbieten. Ansonsten muss ich mir eine Alternative suchen. Bis dahin wird auf meinem Heimrechner Fedora mit Gnome3 laufen und das Arbeitsgerät mit Ubuntu 10.10 mit Gnome2.
HDYUYD Teil V: Internet, Office & Editor
23. Mrz
Heute zeige ich nichts so wahnsinnig neues oder verwunderliches. Aber um das ganze möglichst vollständig zu halten muss eben auch so etwas in diese Serie.
Mit welchen Tools wird gesurft, womit die “normalen” Office Arbeiten erledigt? Ich denke da bin ich absolut standardmäßig unterwegs. Wobei das genere
ll so eine Sache ist, da nicht jeder auf der Arbeit mit Linux arbeiten darf(!).
Internet Browser
Browser Nummer 1 ist Firefox. Von ihm komme ich nicht so recht ab, da er die – hier beschriebene – Erweiterung AutoAuth als einziger anbietet, die innerhalb eines Corporate Network definitiv interessant ist. Ansonsten habe ich ProxySwitch (zwischen mehreren Proxies, bzw. keinem per Klick umschalten) und AdBlock Plus (sollte wohl jeder kennen) installiert. Also recht langweilig.
Naja, durch mein mittlerweile recht bekanntes Email-MIgrationsprojekt habe ich mittlerweile doch so einige zu Thunderbird bringen können. Natürlich arbeite ich auch selbst damit. Für die Migration ist Thunderbird als Fatclient eine der Hauptbestandteile.
Thunderbird kann sich recht gut in einen Gnome Desktop einbinden. Damit meine optisch als auch funktional. Beispielsweise funktioniert “senden an …” aus dem Kontextmenü wenn man Thunderbird bei den bevorzugten Programmen als Emailprogramm hinterlegt.
Mit dieser Einstellung kann man einfach eine Datei nehmen und per rechte Maustaste “senden an…” mit Thunderbird versenden. Aber Achtung! Das ganze funktioniert nicht mit Dateien von Netzwerklaufwerken (bspw. SFTP über Nautilus). Auch drag&drop funktioniert nicht aus solchen Laufwerken.
Addons
- Close Tab on ESC – Damit kann man ein TAB mit ESC schließen
- Lightning – Als Kalender / Aufgaben Addon (Migrationsprojekt)
- Provider für Google Kalender – Den privaten Google Kalender auch anzeigen
- XNote – Damit kann man nette Notizen an eine Mail “ankleben”
Office
Tja, als Officepaket kommt mittlerweile LibreOffice zum zug. Ich denke da braucht man auch nicht viel zu zu sagen. Da ich nicht viel mit Office Dokumenten mache komme ich gut damit klar. Anders mag es aussehen wenn man sehr viel damit macht oder machen muss, dann wird die Frage der kompatibilität zu MS Office eine große Rolle spielen. Bei mir nicht so
Editor
Zum editieren gibt es für mich zur Zeit zwei Programme. Zuerst einmal natürlich vi / vim. Der ist standard für Admintätigkeiten auf entfernten Maschinen oder auch auf meiner lokalen Workstation.
Danach kommt seit kürzerem Scribes.
Scribes wurde vor einiger Zeit auch auf dem Planeten beschrieben. Er ist wahnsinnig hilfreich bei sehr vielen Scriptsprachen. Normalerweise bin ich kein Freund von Tools die einem alles vorgeben und alles besser wissen, aber Scribes tut das wirklich intelligent. Einfach mal ausprobieren.
[Update] Und heute im Ü-Ei: Advanced Disclaimer für Postfix
10. Mrz
In meinem Artikel zum Advanced Disclaimer für Postfix mit Hilfe von altermime haben sich ein paar kleine Fehler eingeschlichen. Ich habe die Fehler nun korrigiert und den Artikel (den Script Teil) überarbeitet.
Fehler 1:
Die Empfängeraddresse wurde nicht richtig bestimmt
REC_DOMAIN=${2##*@}
muss heißen
REC_DOMAIN=${4##*@}
Fehler 2:
Durch diesen Fehler kann es passieren, dass Mails teilweise ganz abgeschnitten ankommen, bzw. auch teilweise “nur” der Anhang fehlt. Das ganze ist darauf zurückzuführen, dass sich in der Mail – wenigstens dann wenn sie von altermime bearbeitet wurde – eine Zeile mit lediglich einem Punkt befindet. Dies wird von Postfix bei der Rückgabe als “ende” interpretiert. Daher muss der sendmail Aufruf innerhalb des Scripts angepasst werden (3x).
Aus
$SENDMAIL "$@" <in.$$
wird also
$SENDMAIL -i "$@" <in.$$






