Am Montag habe ich meine Workstation auf openSUSE Leap 15.2 aktualisiert. Das hatte ein paar kleine Stolpersteine und auch Konsequenzen für meine Hardware.
WeiterlesenArchiv der Kategorie: Kernel
Also Ubuntu, so wird das nix
Bei meiner Arbeit darf ich oft und viel Linux installieren. Dafür habe ich einen eigenen Installationsserver mit ISO-Images die auch loopback-gemounted sind um ohne CDs oder DVDs installieren zu können. Das ist elegant weil man nicht dauern das Installationsmedium suchen muss und manchmal unvermeidlich weil manche Maschinen die ich testen darf gar nicht über ein optisches Laufwerk verfügen. Blöd ist es dann, wenn die Installation über Netzwerk nicht geht.
Besuch in der Dependency-Hell
Am Wochenende wurde endlich Debian 7.0 „Wheezy“ freigegeben und als alter Debianer habe ich natürlich am Montag abend dann gleich mal ein Update meines Rechners von Squeeze auf Wheezy angeworfen. Der Teil mit „apt-get upgrade“ ging relativ einfach, hat nur knap 1.5 GB an Daten gesaugt und lief problemlos.
Ich, der Kernel-Hacker
Diese Woche habe ich tatsächlich einen Patch im Linux-Kernel plaziert.
Wheezy auf dem Büro-PC
Gestern morgen fiel bei mir auf der Arbeit der Startschuß für Debian/Wheezy auf dem Büro-PC. Der Startschuß äußerte sich in Form eines leichten „Plopp“ verbunden mit elektrischem Geruch („Gleich-riecht-er“) und die schnelle Diagnose war, dass wohl im Netzteil der Kiste ein Elko sein Leben ausgehaucht hatte. Ersatznetzteil zu besorgen hätte lange gedauert, also habe ich mich entschlossen, einfach einen „alten“ Rechner aus dem Labor als Ersatz zu installieren.
Wenn Firmen die GPL nicht verstehen
Die GPL ist eine Open Software Lizenz die es Firmen erlaubt, Open Software in ihren Produkten einzusetzen. Die GPL fordert im Gegenzug dazu, dass Änderungen am Source „zurückgegeben“ werden. Viele Firmen versemmeln das und kriegen dann von Harald Welte und seinem GPL-Violations-Projekt eines auf die Mütze. Â Andere Firmen denken sie sind schlauer und legen den veränderten Source für ihr Produkt irgendwo auf ihre Webserver und rücken die URL nur auf Anfrage raus oder drucken sie in 4pt-Schrift in die Anleitung. Damit ist zwar theoretisch den Anforderungen der GPL Genüge getan, aber warum das trotzem nicht gut ist will ich an einen Praxisbeispiel erläutern.
Der Status von BIOS-RAID und Linux
In der Arbeit durfte ich in der letzten Zeit mich ein wenig mit den diversen Fake-RAID-Controllern beschäftigen und wie gut diese unter Linux unterstützt sind. Die Ergebnisse sind leider wenig begeisternd.
Sound-Desaster
Die Aufgabe war eigentlich ganz einfach: Schließe ein Mikrofon an die Soundkarte des Rechners an und nimm darüber was auf. Die Umsetzung war allerdings ein Drama in mehreren Akten.
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.
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.