Fryboyter

Gehäuse diverser Geräte öffnen

Vor einigen Monaten habe ich mir ein neues Notebook gekauft. Ein Thinkpad E14 Gen 3 um genau zu sein. Unter Linux gibt es nur zwei Probleme. Der Fingerabdrucksensor, den ich nicht benötige, funktioniert aktuell gar nicht. Und es ist eine WLAN-Karte von RealTek verbaut. Was zwar immer noch besser als Broadcom ist, aber eine Karte von Intel wäre besser als alle beide.

Ich habe mir daher die Karte AX200 von Intel gekauft, die unter Linux “out of the box” unterstützt wird und die einfach funktioniert.

Als ich die Karte einbauen wollte, habe ich die Schrauben am Gehäuseboden den Notebooks entfernt. Danach hat sich dieser aber keinen Millimeter bewegt. Lenovo ist, zumindest bei diesem Modell, dazu übergegangen das Ganze noch zusätzlich mit Clips zu sichern. Das ist immer noch besser als das Gehäuse zu verkleben, aber was soll das? Mein altes Thinkpad X230 hatte keine Clips und es ist weder explodiert noch auseinander gefallen. Dafür ist die Hardware im E14 zugegeben besser zugänglich.

In solch einem Fall versuche ich die Clips zu lösen, indem ich beispielsweise mit einer alten Kreditkarte oder einer Telefonkarte (die älteren Leser werden wissen, was ich meine) im Schlitz zwischen dem oberen und unteren Teil des Gehäuses mit etwas Druck entlang fahre und dabei mantraartig den Satz “hoffentlich brechen die Clips nicht ab” wiederhole. Wartungs-Voodoo sozusagen.

Da diese Karten relativ instabil sind, ist diese Lösung keine gute. Auch wenn sie meist funktioniert. Ein Musiker, den ich kenne, hat mir einen verdammt guten Tipp gegeben. Ein Plektrum. Also diese dreieckigen Dinger mit denen man eine Saite einer Gitarre anschlägt. Diese gibt es in verschiedenen Steifigkeiten. Wenn man ein ziemlich hartes Plektrum nimmt, ist das eigentlich ideal um solche Gehäuse zu öffnen.

Aber es gibt doch Reparaturkits von beispielsweise iFixit mit speziellen Tools, um Gehäuse zu öffnen? Ja gibt es. Diese Dinger ähneln verblüffend Plektren. Kosten dafür aber mehr. Und in meinem Fall habe ich schon diverse Schraubendreher, Pinzetten und so weiter, sodass sich ein komplettes Set nicht lohnen würde. Wer also in der gleichen Lage ist wie ich, sollte sich daher eher ein Plektrum kaufen. Oder eines abstauben, wenn er einen Gitarrenspieler kennt.

Was vielleicht auch funktionieren könnte, wäre ein Reifenheber, den man beim Wechsel eines Fahrradreifens nutzt. Ausprobiert habe ich es aber noch nicht.

OSBN | Allgemein

Kommentarsystem Isso 0.12.6 veröffentlicht

Vor ein paar Stunden wurde Version 0.12.6 des Kommentarsystems Isso veröffentlicht welches ich für fryboyter.de verwende.

Das Changelog findet man unter https://github.com/posativ/isso/releases/tag/0.12.6.

Ein Update mittels pip hat bei mir problemlos funktioniert. Was mich positiv überrascht hat da ich mit Isso bei der Installation bzw. bei einem Update schon öfter Probleme hatte.

OSBN

I/O Scheduler automatisch einstellen

Mit einem I/O Scheduler wird die zeitliche Abfolge von Lese- und Schreibvorgänge bei Speichermedien koordiniert. Je nachdem ob es sich um eine normale HDD, eine SSD oder eine NVMe handelt, können unterschiedliche Scheduler sinnvoll sein. Oft nutzen Distributionen allerdings den gleichen Scheduler für alle Speichermedien.

Bei einem normalen Rechner eines durchschnittlichen Benutzers fällt dies meist nicht ins Gewicht. Optimal ist es trotzdem nicht. Also sollte man sein System entsprechend konfigurieren.

Nun ist es so, dass ich in meinem Hauptrechner sowohl HDD, SSD als auch NVMe verbaut habe und regelmäßig zusätzliche Speichermedien temporär anschließe. Somit möchte ich den Scheduler automatisch zuweisen lassen. Dies lässt sich mit einer udev Regel umsetzen. Hierfür erstellt man die Datei /etc/udev/rules.d/60-ioschedulers.rules und füllt diese mit folgendem Inhalt.

# Scheduler für HDD
ACTION=="add|change", KERNEL=="sd[a-z]*", ATTR{queue/rotational}=="1", ATTR{queue/scheduler}="bfq"
# Scheduler für SSD
ACTION=="add|change", KERNEL=="sd[a-z]*", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="mq-deadline"
# Scheduler für NVMe
ACTION=="add|change", KERNEL=="nvme[0-9]n[0-9]", ATTR{queue/scheduler}="none"

Hiermit wird normalen HDD der Scheduler bfq zugeordnet. Bei SSD kommt der Scheduler mq-deadline zum Einsatz. Und im Falle von NVMe wird meist none eingestellt, da bei diesen Speichermedien ein anderer Scheduler oft keinen Vorteil bringt. Wer will, kann natürlich etwas anderes einstellen.

Anschließend liest man mit Root-Rechten mittels udevadm trigger die angeschlossene Hardware neu ein damit die Regeln genutzt werden. Alternativ kann man auch einfach den Rechner neu starten.

Danach sollte je nach Speichermedium der entsprechende Scheduler aktiv sind. Überprüfen lässt sich dies mit dem Befehl grep "" /sys/block/*/queue/scheduler. Der jeweils verwendete Scheduler wird in eckigen Klammern angezeigt.

OSBN | Linux

PDFsam - Grafisches Tool zum Bearbeiten von PDF-Dateien

Ich musste heute diverse PDF-Dateien splitten und aus unterschiedlichen einzelnen Dateien wieder neue PDF-Dateien erstellen. Darauf, dies mit Befehlen im Terminal Emulator zu erledigen, hatte ich aber keine Lust. Also habe ich mir spontan PDFsam installiert.

Bei PDFsam handelt es sich um ein Tool mit grafischer Oberfläche, mit dem man PDF-Dateien bearbeiten kann. Die Basic-Version, die unter der AGPL-3.0 Lizenz veröffentlicht ist und die kostenlos nutzbar ist, unterstützt das Teilen (Seitenzahl, Lesezeichen und Größe), Zusammenführen, Extrahieren, Mischen und Drehen von PDF-Dateien. Die kostenpflichtigen Versionen wie PDFsam Enhanced oder PDFsam Visual bieten noch zusätzliche Funktionen. Allerdings werden diese nur im Abo-Modell angeboten und sind meiner Meinung nach ziemlich teuer. Was alle Versionen gemeinsam haben ist, dass es sich um Java-Programme handelt. Was in meinem Fall kein Problem ist, da ich bereits Java wegen eines anderen Tools installiert habe.

pdfsam

Der Screenshot zeigt die Oberfläche für das Zusammenführen von PDF-Dateien. Meiner Meinung nach ist diese, wie auch die der anderen Funktionen, aufgeräumt und selbsterklärend. Das Tool an sich arbeitet schnell und meiner bisherigen Erfahrung nach zuverlässig. Wer also mal keine Lust hat PDF-Dateien im Terminal Emulator zu bearbeiten, sollte sich das Programm zumindest einmal ansehen.

OSBN

JavaScript - If-Anweisung mit mehreren Bedingungen

Vor ein paar Tagen habe ich den Artikel Feedreader mit Filterfunktion veröffentlicht, bei dem es um einen Feedreader geht, der eine auf JavaScript basierende Filterfunktion nutzt. Zwischenzeitlich habe ich mehrere Anfragen erhalten wie man Beiträge mehrerer Autoren entfernen kann.

Mein ursprüngliches Beispiel war Folgendes und hat sich nur auf einen Autor bezogen.

function filterMessage() {
  if (msg.author == "soeren-hentzschel.at") {
    return MessageObject.Ignore;
  }
}

Da ich von JavaScript so gut wie keine Ahnung habe, wollte ich schon vorschlagen, dass man bei Bedarf einfach mehrere Filter anlegt. Wenn man nur wenige Filter insgesamt hat, mag das funktionieren. Mir wäre aber ein Filter lieber der alle Einträge bestimmter Autoren auf einmal ausblendet, damit die Filterliste übersichtlicher bleibt. Die Lösung hierfür ist der Logik-Operator ||.

Will man obiges Beispiel also erweitern würde dieser Code funktionieren:

function filterMessage() {
  if (msg.author == "soeren-hentzschel.at" || msg.author == "fryboyter.de") {
    return MessageObject.Ignore;
  }
}

Der Operator || steht in diesem Fall für “oder”. Somit wird abgefragt, ob der Autor soeren-hentzschel.at oder fryboyter.de ist. Und wenn ja, wird der Beitrag entfernt. Will man nun Beiträge eines weiteren Autoren löschen, dann fügt man einfach ein weiteres || msg.author == mit entsprechender Bedingung ein.

OSBN