Skip to content

Heartbleed ...

Manchmal lohnt es sich, ein konservativer Administrator zu sein. Heartbleed ist die Sicherheitslücke in OpenSSL 1.0.1, die dazu führt, dass Angreifer zufällige Daten aus dem Speicher des Servers lesen können.

Ich habe natürlich brav im Rudelreflex ein neues Zertifikat erstellt und wollte auch den Hostnamen ändern bis ich mal - ausnahmsweise - so schlau war, mir die Versionsnummern genauer anzuschauen.

Der Server läuft mit Debian 6.0.9 oder Squeeze (Oldstable). Und in Squeeze ist die Version 0.9.8 von OpenSSL enthalten, die nicht vom der Sicherheitslücke betroffen ist.

Wer lesen kann ...

Solaris x86 ...

Neulich habe ich festgestellt, dass sich Solaris 10 und Solaris 11 mit einem freien Oracle Account herunterladen lassen. Da mich die beiden Betriebssysteme, insbesondere die x86-Vairante, interessieren (kann man unter Linux virtualisiert laufen lassen), habe ich mal jemanden gefragt, der sich auskennt, welche Literatur empfehlenswert ist.

Wolfgang hat daraufhin die folgende umfangreiche Liste zusammen gestellt.

Danke!

Bemerkung am Rande: Wie auch bei Red Hat oder SUSE üblich, muss man das Produkt kaufen und registrieren, um die Update-Channel eintragen zu können. Zum Ausprobieren reicht es aber.

Präsentationsformen ...

Von Zeit zu Zeit bekomme ich das Vergnügen, einen Vortrag zu halten und jedes Mal aufs Neue stellt sich die Frage nach der richtigen Präsentationsform.

Ich halte nichts von den Präsentationsprogrammen der Office-Programme, egal, ob es Powerpoint, Impress oder irgendetwas anderes "integriertes" ist. Ich mag nicht gebremst werden und ich mag es, ohne Mausbenutzung, nur mit der Tastatur zu schreiben.

Wenn das ganze dann noch Open Source ist und möglichst, in einer einzigen Datei daher kommt, bin ich froh. Zwischenzeitlich habe ich einfache Textdateien benutzt. Das Verfahren ist hier im Blog schon beschrieben worden (meine beiden Workshops zu praktischer Administration habe ich so gehalten: Teil 1 und Teil 2 inklusive Videos).

So konnte es nicht weitergehen, daher habe ich mir die folgenden Tools und Möglichkeiten angeschaut:

Alle Verfahren haben spezifische Vor- und Nachteile.

Derzeit arbeite ich PDF-Dateien, die LaTeX Beamer erzeugt, sie enthalten auch Links und sind in meinem Speakerdeck-Account zu finden.

Weitere Style Guides ...

Via Twitter habe ich das Mutterprojekt der Google Styleguides ("Style guides for Google-originated open-source projects") gefunden.

Da gibt es also nicht nur den Shell Style Guide, den ich hier erwähnt habe. Es hätte mich auch überrascht, wenn es anders wäre.

Shell Style Guide ...

Bei Google gibt es einen Shell Style Guide, den ich wirklich jedem nur ans Herz legen kann.

Die Regeln sind sinnvoll und helfen, dass Skripte auch eine Woche nachdem sie geschrieben wurden noch verstanden werden können. :-)

Einiges ist sicherlich diskussionswürdig und Geschmackssache, ich würde Perl statt Python für längere Skripte nehmen, aber in Summe ist das Dokument prima.

Einführung in Git ...

Bei Google+ wurde ich danach gefragt, ob ich die Kurzeinführung in Git, die ich auf der Arbeit gehalten habe, veröffentlichen könnte. Hier ist sie.

Die Beispiele lohnen sich nur, wenn man sie versucht, nachzuvollziehen.

Viel Spass.

Das PDF (rund 100 kB) kann man hier herunterladen: einfuehrung-git.pdf

Lizenz ist CC-BY, das liefere ich auch noch im PDF nach.

Kaputt ...

Das passiert ja "eigentlich" nur "den anderen". Kurz nach Ablauf der Garantie ist mein Hauptrechner zuhause ein halbes Jahr nach Ablauf der Garantie aus dem Tiefschlaf nicht wieder aufgewacht.

Daten habe ich glücklicherweise keine verloren. Trotzdem ärgerlich so etwas.

Ob ich mir noch einmal einen Rechner zusätzlich zum Notebook kaufen werde, weiss ich nicht. Momentan hängt das Notebook mit ordentlicher Tastatur am grossen Monitor und tut, was es soll. Mir fehlt nur eine Dockingstation zum Glück.

Wenn jemand von Euch weiss, wo man einen Portreplikator oder eine Dockingstation für ein Thinkpad X201i herbekommt, bin ich für jeden Tipp dankbar.

Das kann doch nicht so schwer sein ...

Nachdem ich jetzt fünf mal nacheinander den gleichen Fehler gemacht habe, muss ich das schnell weg dokumentieren.

16:06:27 [root@rico:/srv/www/myown-it.com] # git init .

Initialized empty Git repository in /srv/www/myown-it.com/.git/

16:06:59 [root@rico:/srv/www/myown-it.com] # git add .

16:07:08 [root@rico:/srv/www/myown-it.com] # git remote add origin gitosis@rico.yawnrz.net:www-myown-it.com.git

16:07:23 [root@rico:/srv/www/myown-it.com] # git commit -m "init"

[master (root-commit) 16540f0] init

3296 files changed, 340870 insertions(+)

...

16:07:38 [root@rico:/srv/www/myown-it.com] 1 # git push origin master

Counting objects: 3344, done.

Delta compression using up to 4 threads.

Compressing objects: 100% (3263/3263), done.

Writing objects: 100% (3344/3344), 5.47 MiB | 5.52 MiB/s, done.

Total 3344 (delta 794), reused 0 (delta 0)

To gitosis@rico.yawnrz.net:www-myown-it.com.git

* [new branch] master -> master

Ja, das ist Teil meines Backup-Konzeptes.

TeX Live 2013 ...

TeX Live 2013 ist in den vergangenen Tagen erschienen.

TeX Live ist eine der wenigen Softwaresammlungen, die ich manuell installiere und aktualisiere. Das liegt einfach daran, dass ich auf Rechnern mit verschiedenen Betriebssystemen "TeXe" und ich gerne das gleiche LaTeX auf allen Systemen einsetze, um Fehler auf allen Systemen gleich zu halten ;-)

Installation über das Internet für Linux (oder Unix) und Cygwin unter Windows geht über das gleiche Archiv (wieder einmal ein "hoch auf Perl"). Für "normales" Windows gibt es ein separates Paket und sogar eine deutschsprachige Installationsanleitung.

Aktuell hält man die Installation übrigens via:

tlmgr update --self
tlmgr update --all

Git-Repositories packen ...

So ein lebendes Git-Repository ist ziemlicher "Platzverschwender". Mein Hauptrepository, in dem alle meine Dokumente und Scans und Bewerbungen und Skripte und einfach alles liegen, wurde grösser und grösser. Zum Schluss war es bei 16 GB obwohl die "Nutzdaten" nur einen Bruchteil des Repositories ausmachten.

Zeit, einmal einen git repack anzustossen.

Wenn man das unbedarft auf ein grosses Repository loslässt, merkt man sehr schnell, wie langsam der Rechner werden kann, wenn er ins Swapping fällt. Um das einzugrenzen, sollte der Parameter --window-memory gesetzt werden. Meine Beobachtung ist, dass der pro Core gilt. Die Parameter --window und --depth geben die Tiefe und die Anzahl der Objekte für die Delta-Kompression an. -a sorgt dafür, dass alles in gross Packs gepackt wird und -d, dass obsolet gewordene Packs gelöscht werden.

Damit kann man eine Menge erreichen.

16G	ddeimeke.git
Counting objects: 19947, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (7173/7173), done.
Writing objects: 100% (19947/19947), done.
Total 19947 (delta 14053), reused 17947 (delta 12645)
6.4G	ddeimeke.git

Allerdings bremst das den Rechner so aus, dass kaum noch arbeiten möglich ist, was man aber mit nice und ionice in den Griff bekommt. Ersteres sorgt dafür, dass die CPU-Benutzung limitiert wird und zweiteres tut gleiches für I/O.

In Summe resultiert das in folgendes kleine Skript.

#!/bin/bash

for i in *.git
do
        du -hsx "${i}"
        cd "${i}"
        nice -n 19 ionice -c 2 -n 7 git repack -a -d --depth=250 --window=250 --window-memory=1g
        cd ..
        du -hsx "${i}"
        echo
done

Solarized ...

Dann werfe ich gleich noch einmal ein technisches Thema nach, das passt auch ein wenig zu Liquidprompt.

Es geht um Solarized von Ethan Schoonover. Solarized ist eine Farbpalette, die aus acht monchromen Farbunterschieden und acht "echten Farben" besteht, die darauf ausgelegt sind, besonders leicht und augenfreundlich lesbar zu sein. Die Kontraste zwischen den einzelnen Farben sind gut und schmerzen nicht. Eine Alternative dazu ist Zenburn, mir gefällt Solarized aber besser.

Für weitere Screenshots verweise ich einmal auf den entsprechenden Abschnitt auf der Homepage.

Solarized gibt es für eine Reihe an Programmen, beispielsweise für das Gnome-Terminal oder für MinTTY (Cygwin, darüber habe ich hier schon einmal berichtet), für Taskwarrior oder eingebaut im Texteditor Sublime Text. Vom Autoren selber gibt es verschiedene Repositories für unterschiedliche Programme, dieses hier bündelt die einzelnen Teile adobe-swatches-solarized, apple-colorpalette-solarized, emacs-colors-solarized, gimp-palette-solarized, intellij-colors-solarized, iterm2-colors-solarized, mutt-colors-solarized, netbeans-colors-solarized, osx-terminal.app-colors-solarized, putty-colors-solarized, seestyle-colors-solarized, textmate-colors-solarized, textwrangler-bbedit-colors-solarized, vim-colors-solarized, visualstudio-colors-solarized, solarized-gedit, solarized-qtcreator, xchat-colors-solarized, xfce4-terminal-colors-solarized und xresources.

Solarized gibt es mit einem hellen und einem dunklen Hintergrund und die Umstellung ist mir relativ schwer gefallen, weil die Farben nicht so kräftig sind, wie die, die ich normalerweise auf dem Bildschirm habe. Aber es ist deutlich ermüdungsfreier, mit einer reduzierten Farbpalette zu arbeiten.

Liquidprompt ...

Zur Abwechslung mal wieder etwas technisches.

"Drüben" in Google+ hat Christian das Repository liquidprompt empfohlen. Liquidprompt setzt sehr komfortabel den Shell-Prompt für die bash oder zsh. Dabei sammelt sie Informationen aus vielen verschiedenen Quellen, beispielsweise die Uhrzeit, den Batteriestatus (von grün nach rot), die Systemlast (load), Temperatur, den Status des Versionskontrollsystems, einen grünen Doppelpunkt für Schreibrechte im aktuellen Verzeichnis (sonst rot), und, und, und ...

Die "Installation" ist sehr einfach (bei mir sind alle Repositories unterhalb von workspace):

cd ~/workspace
git clone https://github.com/nojhan/liquidprompt.git liquidprompt.git

Ich folge damit auch einer Anregung von Federico, der alle Verzeichnisse, die git-Repositories enthalten auf .git enden lässt.

Aktiviert wird liquidprompt durch

source ~/workspace/liquidprompt.git/liquidprompt

Sollte man mit den Einstellungen einverstanden sein, ist nichts weiter zu tun.

Wenn man aber Änderungen vornehmen will, kopiert man die Datei mit den Voreinstellungen und nimmt dort Änderungen vor.

cp ~/workspace/liquidprompt.git/liquidpromptrc-dist ~/.liquidpromptrc
vim ~/.liquidpromptrc
source ~/workspace/liquidprompt.git/liquidprompt

So, habe ich beispielsweise, die Uhrzeit mittels LP_ENABLE_TIME=1 aktiviert und Versionskontrollsysteme, die ich nicht benutze deaktiviert. Es macht sich besonders unter Cygwin bemerkbar, wenn zu viele Optionen aktiv sind, unter Linux ist das meiner Beobachtung nach kein Problem.

Wenn alle Einstellungen zur Zufriedenheit getroffen sind, braucht nur die Zeile an die ~/.bashrc oder ~/.zshrc angehängt werden. Die Webseite enthält eine ausführliche Beschreibung aller Optionen und auch eine Beschreibung, wie man die Farben anpassen kann.

PDF-Titelseite in PNG konvertieren ...

Weil ich es gerade für diese Übersichtsseite gebraucht habe: Mit pdfdraw aus den mupdf-tools kann man PDF-Seiten in PNG-Dateien konvertieren.

pdfdraw -o gelberHund.png gelberHund.pdf 1
konvertiert die erste Seite des PDFs in eine PNG-Datei.

SmokePing ...

SmokePing ist ein kleines und feines Monitoring-Tool, was Netzwerklatenzen überwacht. Dazu sendet es 20 Pings nacheinander und schaut sich die Zeiten an, die die Pings brauchen, um zurück zu kommen. Die Zeiten werden via RRD gespeichert und grafisch dargestellt. Der Mittelwert zeigt sich in grün und die Abweichungen vom Mittelwert in verschiedenen Graustufen, dabei entsteht der Eindruck einer Wolke (oder Rauch).

Das obige Bild zeigt die Pings zu meinem root-Server über drei Stunden.

Mit SmokePing kann man Netzwerkschwierigkeiten feststellen, wofür ich es auch seit sehr langer Zeit nutze. Allerdings sollte man wenigstens zwei Ziele an verschiedenen Stellen im Netz überwachen, der Server, auf dem Smokeping läuft, könnte auch Schwierigkeiten haben.

Last not least möchte ich erwähnen, dass man damit - in Verbindung mit free.domain.name (vormals DynDNS) - auch wunderbar die Verfügbarkeit des eigenen Internetzugangs prüfen kann.

Silverlight? Echt jetzt?

Wir haben seit Ende letzten Jahres ein Pferd, es ist multiplattformfähig und heisst Java (ja, tatsächlich). Sie ist aus dem Tierschutz und bekommt gerade eine gute Kinderstube auf der Fohlenweide des Wauwilermoos. Bei Pferden macht "man" das so, ich habe davon keine Ahnung.

Als neugebackene Pferdebesitzer müssen wir das Tier auch bei Agate registrieren. Klar. Unsere Hunde mussten wir auch registrieren (hier heisst das ANIS) und das lief über den Tierarzt.

Ich halte von den Ämtern und Behörden in der Schweiz sehr viel. Ich bin noch nie unfreundlich behandelt worden, die auf den Ämtern arbeitenden Leuten waren immer sehr zuvorkommend. Was die sich aber hier erlaubt haben, schlägt dem Fass die Krone ins Gesicht.

Das Portal Agate basiert auf Microsoft Silverlight und lässt sich auch nur über den Internet Explorer benutzen, Versuche mit der Silverlight-Portierung auf Linux namens Moonlight sind fehlgeschlagen. Entschuldigt die harten Worte, aber wer hat denen ins Hirn geschissen, welcher Entscheider hat da Mist gebaut? Für ein öffentliche Seite auf eine proprietäre Lösung zu setzen, bei der man nicht weiss, wie lange sie leben wird und die nicht von allen Rechnern ausgeführt werden kann, ist sehr grosser Schwachsinn. Ihr habt das Web nicht verstanden.

In den Fragen und Antworten heisst es lapidar:

Ich habe keinen Internetzugang. Wie kann ich mein Pferd registrieren?

Die Registrierung ist nur elektronisch auf www.agate.ch möglich. Führen Sie die Registrierung zusammen mit einem Verwandten oder Bekannten durch, welcher Internetzugang hat. Sie können auch jemanden beauftragen, die Registrierung für Sie vorzunehmen – etwa den Besitzer des Pensionsstalles.

Es gibt also noch nicht einmal einen Fallback über Papier oder persönliche Vorstellung beim Amt.

Das ist echt grosser Mist.

Übrigens ist das auch der Grund, weshalb ich gerade auf der Suche nach einer Windows 7 ultimate Lizenz bin, die darf auch in bis zu vier virtuellen Maschinen eingesetzt werden.

Nachtrag wegen Fehlinformation: Um vier virtuelle Windows-Instanzen verwenden zu können, braucht es eine VECD-Lizensierung, Erklärung hier. Ich habe das mit Ultimate und den vier Instanzen irgendwo falsch aufgeschnappt und bekomme das seit dem nicht mehr aus dem Kopf.

tweetbackcheck