Linux und das leidige Problem mit Notebooks

Seit etwas über einem Jahr besitze ich ein „Acer Swift 3„-Notebook mit einer Ryzen 4500U-CPU. Die erste Handlung direkt nach der Anschaffung war das Löschen von Windows 10 und die Installation von Ubuntu 20.04.

Leider habe ich es bis heute nicht geschafft den S2RAM-Modus zuverlässig zum Laufen zu bringen. Zuverlässig heißt, dass das Notebook bei jedem Zuklappen des Deckels einschläft und bei jedem Aufklappen wieder aufwacht. Das liegt vor allem daran, dass die meisten Ryzen-Notebooks (Inkl. meinem) nur den sogenannten „Modern Standby“ (Kurz „s0ix“) unterstützen und nicht den „klassischen“ S3-Modus. Normalerweise half in der Vergangenheit (z.B. bei meinem alten Lenovo T460) ein Kernel-Update auf die neueste Version, nur hier eben leider nicht, da die Kernelentwickler hier noch massiv am Nacharbeiten sind. Ich warte also seit einem Jahr darauf, dass eine Grundfunktionalität eines modernen Notebooks endlich fehlerfrei funktioniert.

„Linux und das leidige Problem mit Notebooks“ weiterlesen

Case-Modding-Projekt: Wie packe ich einen modernen PC in ein SGI Indigo2-Gehäuse?

Vor ein paar Jahren war ich im Besitz zweier SGI Indigo2:

  • Einer „Teal“-Indigo2, welche ich von einer XZ-Grafik auf eine Impact-Grafik umgebaut hatte. Diese hatte eine MIPS 4400-250MHz CPU und 256MB RAM.
  • Eine „Purple“-Indigo2 mit einer MIPS R10000-175MHz CPU, 384MB RAM und einer High-Impact-Grafikkarte.

Aus Mangel an Zeit und Platz lagen die beiden Indigos gut verpackt im elterlichen Keller. Leider wurde dieser ein Opfer der Aufräumwut meiner Mutter und beide Indigos landeten ohne Rückfragen auf der Wertstoffdeponie.

Vor ein paar Monaten bin ich dann bei eBay-Kleinanzeigen auf eine „Purple“-Indigo2 gestoßen. Diese war laut Verkäufer seit 20 Jahren nicht mehr im Einsatz und er konnte keine Funktionsgarantie geben, aber 100€ war mir der Spaß und das Risiko wert.

Leider gab die Indigo2 beim Funktionstest keinen Laut von sich. Die Lüfter drehten sich nicht und die LEDs bleiben auch tot. Wahrscheinlich waren einige Elektrolytkondensatoren im Netzteil über die Jahre ausgetrocknet. Ich habe mich natürlich sofort auf die Suche nach einem Ersatznetzteil gemacht, aber alle Quellen schienen ausgetrocknet zu sein bzw. es wurden Preise für ein Ersatznetzteil verlangt, die jenseits von Gut und Böse sind (200€ aufwärts). Auch der Umbau eines modernen ATX-Netzteils war keine Option, da sich dieses massiv von dem Originalnetzteil unterscheidet und ich mir den Umbau ohne externe Hilfe nicht zugetraut habe. Da ich aber nicht sicher sein konnte, ob nur das Netzteil betroffen ist, habe ich mich gegen eine Instandsetzung des Rechners entschieden und für den Umbau des Gehäuses entschieden, so dass ein normales mATX-Mainboard und ein modernes Netzteil hineinpassen, (SGI-Fans mögen mir das Sakrileg entschuldigen).

„Case-Modding-Projekt: Wie packe ich einen modernen PC in ein SGI Indigo2-Gehäuse?“ weiterlesen

AusweisApp2 unter Debian 10

Heute hatte mich ein Benutzer angeschrieben und mich nach einer Fehlermeldung des Snap-Pakets von AusweisApp2 unter Debian 10 gefragt. Dabei poppt eine Dialogbox auf und sagt, dass Port scbon 24727 belegt sei.

Diese Meldung erscheint aus folgendem Grund:

Das Paket „snapd“ aus Debian 10 ist zu alt. Es ist noch auf dem Versionsstand 2.37 während unter Ubuntu die Version 2.44 aktuell ist. Leider gibt es keinen Backport von „snapd“ für Debian 10, aber man kann sich aber auf anderem Weg helfen:

Man installiert einfach die das Snap-Paket „snapd“:

snap install snapd

Falls es eine Fehlermeldung geben sollte, muss noch das Paket „core“ installiert werden:

snap install core

Danach loggt man seinen Benutzer kurz aus und wieder ein und die Fehlermeldung ist verschwunden.

AusweisApp2 als Snap #3

Ich habe eine neue Version des Snap-Pakets veröffentlicht. Dieses beinhaltet das Treiberpaket von „Reiner SCT“ für den PC/SC-lite Daemon.

Dadurch unterstützt der Daemon z.B. den „Reiner SCT cyberJack RFID standard. Dessen Treiber wurde im CCID-Treiber 1.4.30 auf Bitte von „Reiner SCT“ deaktiviert.

Das Update wird von „snap“ automatisch durchgeführt. Man kann es auch per „snap refresh ausweisapp2-ce“ anstoßen.

AusweisApp2 als Snap #2 (Update 06.04.19)

Nach Wochen der Bastelei habe ich es endlich geschafft ein Snap-Paket für die AusweisApp2 zu bauen, welches auch mit dem Confinement funktioniert. Die einzige Einschränkung, die aktuell noch existiert, ist das man nach der Installation einmalig die benötigten Interfaces des Snap-Pakets „connecten“ muss. Danach funktioniert die Anwendung ohne weitere Einschränkungen:

sudo snap install ausweisapp2-ce
sudo snap connect ausweisapp2-ce:raw-usb :raw-usb
sudo snap connect ausweisapp2-ce:hardware-observe :hardware-observe
sudo snap connect ausweisapp2-ce:network-manager :network-manager
sudo snap connect ausweisapp2-ce:network-observe :network-observe
sudo systemctl restart snap.ausweisapp2-ce.pcscd.service

Letzterer Befehl ist notwendig, damit der Card-Daemon noch vor dem ersten Start der Anwendung die passenden Rechte besitzt.

Ich habe im Snap-Store einen Request zum Auto-Connecten gestellt. Falls dieser genehmigt wird, kann man die Anwendung auch ohne explizites „connecten“ installieren.

Update

Ich habe gestern (05.04.19) die Freigabe des Stores für das automatische „connecten“ der benötigten Interfaces erhalten. Es reicht jetzt also aus das Snap zu installieren. Es sind keine weiteren Schritte notwendig.

AusweisApp2 als Snap (Update 25.01.19)

Da ich im Moment Urlaub und viel Zeit habe, habe ich mich mal daran gemacht ein Projekt zu vollenden, welches ich schon seit ein paar Monaten in die Augen gefasst habe:

Das Paketieren der AusweisApp2.

Falls jemand nicht weiß, wozu dieses Programm dient, hier mal der Link zum passenden Wikipedia-Artikel:

https://de.wikipedia.org/wiki/AusweisApp2

Offiziell unterstützen die Entwickler Linux nicht, dadurch dass der Quellcode aber unter Github und unter einer freien Lizenz verfügbar ist, kann man wenigstens den Versuch wagen das Programm unter Linux zum Laufen zu bekommen.

„AusweisApp2 als Snap (Update 25.01.19)“ weiterlesen

Eine Lanze für moderne Computer brechen

Retrocomputing ist in. Wer, wie ich, seine ersten Erfahrungen mit Computern in den 80er Jahren gemacht hat, ist für dieses Thema besonders empfänglich. Dabei ist der Blick zurück häufig ziemlich verklärt und die alte Zeit wird als die bessere angesehen. Dabei wird übersehen, dass früher nicht alles eitel Sonnenschein war.
Der folgende Artikel bezieht sich allein auf meine Erfahrungen, welche sehr stark von Heimcomputern und PCs mit MS-DOS geprägt wurden und weniger von Konsolen. Ich habe exemplarisch das Jahr 1992 als Grundlage des Artikels genommen, wobei ich auch spätere Jahre (bis ca. 1997) anspreche um bestimmte Sachverhalte zu verdeutlichen.

[alert type=“info“ icon-size=“normal“]
Kurze Biographie meinerseits:
Jahrgang 1977. Der erste C64 irgendwann im Jahr 1988. Im Oktober 1990 folgte ein Atari ST mit 1 MB RAM, im Mai 1992 dann ein PC (AMD 386SX25 CPU, 1 MB RAM und 40 MB HDD).[/alert]

Warum ausgerechnet 1992? Weil ich in diesem Jahr meinen ersten PC gekauft habe und zusätzlich weil zu diesem Zeitpunkt der Computermarkt noch sehr viel heterogener war als heute. Neben den PCs waren noch sehr häufig Heimcomputer (Amiga, Atari ST oder C64) im Einsatz und viele Spiele und Programme wurden noch für mehrere Plattformen entwickelt. Zudem war der Leistungsunterschied zwischen den PCs und den Heimcomputern noch nicht so groß, obwohl Letztere mit der breiten Verfügbarkeit von 386er CPUs und VGA-Grafikkarten ins Hintertreffen gerieten.

Hier mal einige Punkte, welche meine Sicht auf die damalige Hardware und Software aufzeigen soll:

„Eine Lanze für moderne Computer brechen“ weiterlesen

Kleines Downloadskript für Mainline-Kernel

Da ich wegen meines Notebooks immer eine aktuelle stabile Vanilla-Version von Linux einsetze, habe ich mir in der Vergangenheit angewöhnt regelmäßig bei „www.kernel.org“ nachzuschauen, welches gerade die aktuellste stabile Linux-Version ist. Danach führte der Weg immer zum Mainline-PPA“ um dort dann die die Debian-Pakete des Kernels herunterzuladen. Diese sind in der Regel kurz nach der Freigabe einer neuen Version verfügbar. Da ich ein bequemer Mensch bin und mir vor allem das händische Herunterladen irgendwann auf den Geist ging, habe ich ein kleines Skript geschrieben, welches diese Schritte automatisiert:

Das Skript schaut auf der Kernel-Webseite nach, welches die aktuellste stabile Version ist und lädt dann aus dem Mainline-PPA die passenden Dateien für den eingesetzten CPU-Typ herunter. Das Skript hat noch drei Parameter, welche für alle selbsterklärend sind, die schon einmal einen Kernel aus dem Mainline-PPA heruntergeladen haben. Das Skript prüft selbstständig ob die CPU und der Kerneltyp zusammenpassen (z.B. macht es keinen Sinn zu versuchen einen „i386“-Kernel vom Typ „snapdragon“ herunterzuladen. Letzteren gibt es nur für den CPU-Typ „arm64“) und lässt nur den Download einer verfügbaren Kombination zu.

Das Skript ist in Python3 geschrieben und benötigt ein zusätzliches Python-Modul, welches aber in allen noch unterstützten Ubuntu und Debian-Versionen vorhanden ist:

sudo apt install python3-lxml

Das Skript habe ich auf Github gehostet: https://github.com/glasen/download_kernel

Direkter Download des Skripts: download_kernel.py

Eine kleine Einführung in die Bioinformatik und warum Linux dort so weit verbreitet ist

Wie ich in meinem Blog irgendwann mal erwähnt habe, studiere ich im Moment Bioinformatik an der THM und JLU in Gießen. Da ich nebenbei auch  noch einen Job in einer der Arbeitsgruppen habe, bekomme ich einen Recht guten Eindruck davon, was aktuell Forschungsgebiet in der Bioinformatik ist und vor allem welche Software und Hardware dort eingesetzt wird. Einen Überblick über beispielsweise die Hardware des Bioinformatikfachbereichs an der THM liefert der z.B. folgende Link:

mni.thm.de: Bioinformatik erweitert Infrastruktur

Ubuntu ist im Bioinformatik-Umfeld sehr weit verbreitet. Ich würde sogar sagen, dass knapp 80% aller Bioinformatiker Ubuntu (Mit verschiedenen Desktops) einsetzen. Der Rest verteilt sich auf Debian und Arch-Linux. Es gibt auch Windows-Nutzer, aber diese sind deutlich in der Unterzahl. Ein sehr nettes Feature seitens Ubuntu und Debian ist die Tatsache, dass nahezu alle wichtigen Bioinformatik-Tools direkt in den Paketquellen vorhanden sind. Das ist auch einer der Hauptgründe für die weite Verbreitung.

Die Bioinformatik ist grundsätzlich sehr Unix-affin. Nahezu alle Server, die irgendwas mit Bioinformatik und verwandten Gebieten zu tun haben, laufen unter einem Unix-System (Heutzutage hauptsächlich eine Linux-Distribution). Und wer tagtäglich auf einem Unix-System unterwegs ist, arbeitet auch privat eher mit so einem System.

„Eine kleine Einführung in die Bioinformatik und warum Linux dort so weit verbreitet ist“ weiterlesen

Upgrade von Ubuntu 16.04 auf Debian 9

Heute habe ich mal ein kleines (größeres?) Experiment gewagt und meinen Root-Server von Ubuntu 16.04 auf Debian 9 aktualisiert. Und siehe da:

Experiment geglückt, das Upgrade lief nach ein wenig Handarbeit vollkommen problemlos:

  1. Ich musste vor dem Upgrade meine Installation von MySQL auf MariaDB umstellen, da Debian 9 nur noch MariaDB anbietet. Das war ein wenig Konsolenarbeit mit Hilfe von „mysqldump“ und der MySQL-Konsole angesagt. Da ich eh schon seit Ewigkeiten auf MariaDB wechseln wollte, war das grundsätzlich keine zusätzliche Arbeit.
  2. Ich musste händisch das Paket „debian-archive-keyring“ von Debian 9 installieren, damit das Paketmanagement mich überhaupt Debian-Pakete installieren lies.
  3. Während des Upgrade-Vorgangs gab es einen Fehler wegen eines Konflikts zwischen zwei verschiedenen Paketen (Unter Ubuntu liegt eine Datei in einem anderen Paket als unter Debian). Ein „apt install -f“ hat das aber sofort behoben. Ansonsten gab es keine Unterbrechungen außer dem üblichen Nachfragen wegen geänderter Konfigurationsdateien.
  4. Dovecot hat keine Unterstützung für SSLv2 mehr. Ich musste also die Konfigurationsdatei von Dovecot entsprechend anpassen.
  5. Es gab etwa ein Dutzend Pakete (z.B. „libfontconfig1“ ), welche eine höhere Versionsnummer unter Ubuntu 16.04 haben als unter Debian 9. Diese musste ich händisch downgraden.
  6. Ich musste ein paar Dateien bezüglich „motd“ und „issue“ entfernen, damit sich mein System auch als Debian 9 zu erkennen gibt (Im Grunde nur Kosmetik)

Wie schon geschrieben, das Experiment ist geglückt und auf meinem Root-Server läuft jetzt Debian 9.

Warum das ganze? Ich wollte es einfach mal ausprobieren ob sowas überhaupt möglich ist. Wenn es schief gegangen wäre, hätte ich einfach ein Backup eingespielt und ich hätte nur etwas Freizeit vergeudet.