Update von Lenny auf Squeeze

Gestern und heute habe ich meinen Arbeitsrechner daheim endlich auch von Lenny nach Squeeze hochgezogen. Vorher gab es erstmal ein Backup von /etc und /home und dann die Prozedur des „apt-get upgrade“ und „apt-get dist-upgrade“. Und nach dem ersten Reboot dann die Checkliste, was alles noch funktioniert und was nicht.

Weiterlesen

Total Eclipse

Nein, es ist nicht schon wieder Sonnenfinsternis oder Mondfinsternis und ich schwelge auch nicht in nostalgischen 80er Erinnerungen mit Bonnie Tylers Song „Total Eclipse of the Heart„.  Bei mir ist Eclipse ein Tool mit dem ich mich in der nächsten Zeit ein wenig auseinandersetzen muß, denn im Job wartet wohl irgendwann eine Programmieraufgabe auf mich und da ich das mit Qt und C++ machen will hat sich Eclipse als Entwicklungsframework angeboten.

Additiv zu Eclipse habe ich dann auch die CDT-Erweiterung für C/C++ installiert und das Trolltech-Tool um Qt-Apps zu entwickeln. Lesestoff für Qt-Entwicklung gibts zum Glück zuhauf im Web und als Fachbuch habe ich mir neulich schon den Schmöker „Eclipse für C/C++-Programmierer“ geleistet.

Jetzt muß ich sehen, dass ich meine angestaubten Programmierfähigkeiten wieder reaktiviere, denn zwischen Kernel-Source-Lesen und C++-Programmierung ist ein kleiner aber feiner Unterschied. Aber es macht Spaß mal wieder eine neue intellektuelle Herausforderung zu haben.

Von Lenny nach Squeeze

Letztes Wochenende wurde das lange erwartete Debian 6.0 (Squeeze) freigegeben. Da habe ich mir dann am Montag gesagt „no risk, no fun“ und auf meinem Bürorechner einfach mal das Upgrade gestartet.

Los gehts

Der Bürorechner ist eine kleine Workstation und tut seit Etch seinen Dienst. Als vor zwei Jahren Lenny rauskam habe ich ihn auf Lenny hochgezogen und nun war das Upgrade auf Squeeze fällig. Also erst mal die /etc/apt/sources.list umgestellt und statt Lenny überall Squeeze eingetragen. Das „aptitude safe-upgrade“ brauchte dann erst mal einige Minuten um zu entscheiden, welche Pakete alles hochgezogen werden müssen. Dann der Download der zahlreichen Pakete der sich über einige Zeit erstreckte. Zum Glück kann man ja auch bei einem solchen Upgrade problemlos weiterarbeiten, das ist was wovon die Kollegen mit Windows-Rechnern die beim Starten öfter mal eine Gedenkminute einlegen für Updates nur träumen können. Das „safe-upgrade“ hat natürlich etliche Pakete zurückgehalten die ich dann in einem zweiten Anlauf mit „aptitude dist-upgrade“ dann aktualisiert habe.

Dist-Upgrade

Hier kam dann auch gleich die erste Situation die mich ins Schwitzen brachte. Im Zuge des Updates wird der Bootloader Grub durch Grub2 ersetzt und das erfordert, dass die Einstellungen von Grub ins neue Grub2 übernommen werden. Man erhält einen Dialog der sagt, man möge nun überprüfen ob die importierte Kernel-Befehlszeile richtig ist und sie gegebenenfalls anpassen und als Zeile sieht man eine Leerzeile. Was bitteschön soll da stehen? Selbst ich als Profi komme da ins Grübeln was mir dieser Dialog mitteilen will, also Augen zu und durch, einfach mik „OK“ weiter und sehen was passieren wird. Diese Phase dauerte auch nochmal ein paar Stunden und nach dem Essen kam dann der erste Reboot mit dem neuen 2.6.32-Kernel.

Reboot

Der Reboot brachte dann erst mal wieder den alten Grub der danach dann den neuen Grub per Chainloader nachlud. Von da aus dann in den neuen Kernel, denn einen alten Kernel konnte ich in den Grub-Menüs dank nicht funktionierender Cursortasten gar nicht auswählen. Dieses Problem hatte seine Ursache in der USB-Tastatur die im BIOS nicht als „legacy“-enabled eingestellt war, setzt man das im BIOS richtig, dann funktionieren auch die Tasten im Bootloader.

Die erste Ernüchterung kam dann beim Start, denn der X-Server wollte nicht starten, obwohl das nvidia-Kernel-Modul und der glx-Treiber installiert waren. Den Grund fand ich dann im Syslog, denn Squeeze aktualisiert auf die 195er-Version des Treibers und der ist für meine alte Quadro-FX1300 zu neu, da braucht es die ebenfalls als Paket vorhandene Version 173xx, die ja auch bei Lenny eingesetzt war. Nachdem diese Version installiert war funktionierte der X-Server auch und das erste was ich bemerkte war, dass KDE4 mit „nur einem Gigabyte RAM“ nicht wirklich Spaß macht. Aber es war Zeit für den Feierabend und den Vorsatz, am nächsten Morgen erst mal den Speicher aufzurüsten.

KDE4 oder Gnome

Am nächsten Morgen bekam die Kiste dann erst mal 4 GB RAM verpasst und damit lässt es sich ganz gut arbeiten. Jetzt ging es an die Applikationen, geht noch alles was vorher ging. Der erste Kandidat war der Pdigin, das Instant Messaging Programm aus Gnome. Das hatte ich unter Lenny selbst gebaut weil ich da das damals nicht vorhandene SIPE-Plugin brauchte um den in der Firma verwendeten Office-Communicator von Microsoft als Server nutzen zu können. Nun liefert Squeeze das ja mit, nur wollte diese Version nicht richtig funktionieren weil er wohl beim Start eine veraltete Library (nämlich die selbstgebaute in /usr/local/lib)  nutzen wollte. Also mal kurz den Pfad raus und ldconfig aufgerufen und schon startete Pidgin wenigstens, behauptete aber, auf eine Verbindung zu warten. Die Ursache für dieses Verhalten liegt darin, dass meine Kiste mit festen IP-Adressen in /etc/network/interfaces versorgt wird, aber das Upgrade trotzdem irgendwie den NetworkManager angezogen hat. Und wenn NetworkManager läuft, dann will das neue Pidgin wohl offensichtlich unbedingt ein vom NetworkManager verwaltetes Netz nutzen und das gibt es natürlich nicht. Das habe ich dann unter Gnome probiert und nach der Deinstallation des NetworkManagers und der abhängigen Pakete funktionierte dann das neue Pidgin. Also zurück nach KDE.

KDE4 geht nicht mehr

Die Ernüchterung folgte auf dem Fusse. KDE4 startet kurz an wenn man sich in KDM einloggt und dann sieht man wieder den KDM-Screen. Ich habe dann mal spaßhalber erst mal alle KDE-Pakete weggeworfen und neu installiert, aber gebracht hat es gar nix. Also doch mal nach sachdienlichen Hinweisen suchen.  Diese findet man in der Datei „~./xsession-erors“, hier mosert der X-Server ein nicht gefundenes Symbol in der libGL.so.1 an. Hey, eine solche Library lungerte auf der Kiste auch in /usr/local/lib rum, kam irgendwann zu Etch-Zeiten mit der manuellen Installation des nvidia-Treibers da wohl hin. Und siehe da, wenn /usr/local/lib in ldconfig drin ist, dann funkionierte KDE wieder. Erst mal beiseite gelegt und weitergemacht. Was ich hin und wieder auch nutzen muss ist der ICAClient von Citrix um auf Windows-Terminalserver zuzugreifen. Das geschieht bei uns über eine Web-Applikation die die Sessiondaten bereitstellt welche dann vom Citrix-Receiver ausgewertet werden. Ausprobiert und Fehlanzeige. Erst mal dauerte der Aufbau dieser Webseite ewig und das npica.so-Plugin wollte nicht so recht. Ein ldd auf wfcmgr im Verzeichnis des ICAClient zeigte dann auch, dass er keine libXm.so.4 fand. Die kann man sich aus dem libmotif4-Paket für i386 von sid holen und dann nach /usr/lib32 kopieren. ldd mosert dann zwar nicht mehr, aber funktionieren tut das Plugin deswegen immer noch nicht. Um das zu beheben musste ich nochmals „nspluginwrapper -i /usr/lib/ICAClient/npica.so“ aufrufen, danach ging es wieder.

Direct Rendering: No

Der nächste Knackpunkt war die 3D-Hardwarbeschleunigung. glxinfo meldete permanent „Direct-Rendering: No“ und ich wusste nicht warum. Dann habe ich mal die verschiedenen libGL-Stände gesucht und gesehen, dass via /etc/alternatives die libGL auf die richtige 173er-Version verlinkt (unter /usr/lib/nvidia), die libGL.so.1 aber wohl auf die vorher von Lenny vorhandene Version zeigte die vom Installskript dann unter /usr/lib/nvidia/diversions abgelegt wurde. Also das totale Kuddelmuddel an GL-Bibliotheken. Als ich das ein wenig aufgeräumt hatte und alle Verlinkungen auf die „richtige“ 173er-Version gebogen habe war dann Direct Rendering auch wieder eingeschaltet und mit einem mal gingen die Desktopeffekte.

Bacula-Backup

Der nächste Knackpunkt ist Bacula. Unter Lenny habe ich eine Version 2.4.4 auf meinem Büro-PC und dem Server der die Backups macht installiert. Mit Squeeze ist ist nun bacula-fd auf dem Client in einer Version 5.x vorhanden und das gemeine ist, dass die sich nicht mehr mit dem Bacula-Director in der alten Version unterhalten will. Aber den Server will ich jetzt nicht auch noch updaten, denn der ist momentan „business critical“ und da will ich keine Downtime wegen ähnlicher Überraschungen. Also werde ich wohl die Bacula-Pakete auf dem Server hochziehen müssen, die sind in Lenny-Backports mittlerweile auch in der Version 5 drin.

Fazit

So ganz schmerzfrei ging das Upgrade nicht, aber trotzdem kann ich nach 2 Tagen sagen, alles ist wieder funktionsfähig und die Anwendungssoftware wie OpenOffice oder GIMP sind nun auf einem relativ aktuellen Stand. KDE4 ist noch etwas gewöhnungsbedürftig, funktioniert mit 4 GB aber relativ gut. Auf Maschinen mit weniger als 1 GB ist aber KDE4 definitiv der Overkill, hier sollte man dann vielleicht auf einen „leichteren“ Desktop wie z.B. LXDE umsteigen.

Und ehrlich gesagt, es hat Spaß gemacht. Die kleinen Widrigkeiten beim Upgrade sehe ich eher als Denksportaufgabe an die das Gehirn in Form hält und freue mich, für jedes Problem auch eine Ursache (root cause) und Behebung gefunden zu haben. Ohne so was wäre es ja wirklich langweilig. Danke an das Debian-Team für die neue Version.

Mein erstes Rendering mit Kino

Heute habe ich den Videofilm des Nachbarn in den PC gespielt und weil der ja eine 1:1-Kopie davon auf DVD haben wollte habe ich Kino nicht nur zum Einspielen sondern auch zum Rendern genommen. Hat auch ganz gut funktioniert, allerdings wird das in Kino eingestellte Seitenverhältnis von 16:9 nicht nach QDVDAuthor transportiert und so war die erste DVD im falschen Seitenverhältnis gebrannt. Muss ich mir fürs nächste Mal merken.

Wenn die Tools spinnen

Gestern habe ich auf der Abschlußfeier in Stefans Kindergarten gefilmt. Heute wollte ich das Material in der Kamera in eine DVD verwandeln, aber das war gar nicht so einfach wie ich das gerne gehabt hätte.

Das Einspielen mit Kino ging noch problemlos, ebenso das Zusammensetzen des Videos mit Cinelerra. Beim Ansehen des Endproduktes kam dann aber der Ärger, denn das Endergebnis war sozusagen nur Bildstörung. Reproduierbar mit dem Cinelerra-Paket von Debian-Multimedia.org.

Also habe ich mal wieder ein paar Alternativen versucht. Kino ist für jemanden unter Zeitdruck nicht wirklich intuitiv zu bedienen wenn man einen Film schneiden will. Kdenlive aus dem Debian-Multimedia-Repository ist mir sozusagen nach 2 Minuten um die Ohren geflogen, ebenso der Openmovieeditor den es da noch gibt. Auch ein Versuch Openshot über den Install-Wizard zu installieren scheiterte an einer sudo-Passworteingabe-Orgie. Und Openshot aus den Sourcen moniert fehlende Python-MLT-Bindings.

Also wieder zurück zu Cinelerra. Eine Version 4.1 die ich mal runtergeladen hatte ließ sich nicht compilieren. Anders die Version 2.1CV die ich vom Git-Repository runtergezogen habe, die compilierte nach einer langen Orgie mit dem Installieren der Dependencies (dev-Pakete) und damit war dann der Film auch wieder korrekt gerendert.

Fazit: Auch im Jahr 2010 ist Videoschnitt auf Linux leider nichts was „out-of-the-box“ funktioniert.Besonders schade ist dabei, dass die Binärpakete von Debian-Multimedia diese Fehler haben und man die gravierenden Fehler erst merkt, wenn man das Endresultat begutachtet.

Nach deutlich mehr Zeitaufwand als geplant ist jetzt aber trotzdem die“Master-DVD“ fertig und die scheint so zu laufen wie ich mir das vorstelle. Am Wochenende wartet die nächste Cassette auf mich, der Nachbar hat auch einen Film vom Kindergarten seiner Tochter. Da werde ich vielleicht mal gucken, wie der Schnitt mit Kino funktioniert.

Was macht eigentlich mein Blutdruck?

Nachdem der Beginn der täglichen Messerei jetzt gut 2 Monate her ist wird es Zeit, mal wieder zu gucken, wie sich der Blutdruck nach Einnahme von Amlodipin verändert hat. Die aktuelle Graphik sieht so aus:

Und schon sehen wir das Problem. Bei knapp 120 Messwerten wird so ein Graph schon sehr unübersichtlich. Klar, die Tendenz in die gesundheitlich richtige Richtung kann man daraus schon ablesen, aber je mehr Daten da im Plot landen umso unübersichtlicher wird er werden. Zeit also, die Daten ein wenig einzugrenzen. Dazu habe ich mir in R eine einfache Funktion definiert, die die Datenwerte auf die „letzten x Werte“ beschränkt. Also z.B. die letzten 60 Werte, dann deckt man bei zwei Blutdruckmessungen pro Tag ungefähr einen Monat ab.

Zudem stellt sich die Frage, was mich wirklich interessiert. Das ist z.B. die Frage, wie oft sich der Blutdruck in bestimmten Bereichen befunden hat. Also die klassische Aufgabe für einen Histogramm-Plot. Oder derer zwei weil wir ja zwei Werte kontrollieren wollen. In R ist das ganz einfach, das „schwierigste Problem“ war rauszufinden, wie ich zwei Graphen in ein Bild kriege (hier lautet die Lösung par(mfcol=c(rows,colums)) ). Das Histogramm der letzten 60 Messungen sieht momentan so aus:

Und hey, mit diesen Werten bin ich aktuell durchaus zufrieden. der hohe Dia-Wert ist weg und es bewegt sich in Bereichen die für mein Alter durchaus akzeptabel sind.