ubuntuusers.de

🚧 Am Sonntag, 5. Mai, werden ab 16 Uhr die Server aktualisiert und eine neue Inyoka-Version veröffentlicht. Das Portal wird mehrmals nicht verfügbar sein.

14. August 2023

Das High Efficiency Image File Format (HEIF) ist ein relativ neues Dateiformat für Bilder und Bildsequenzen. Es ist durch die Moving Picture Experts Group (MPEG) standardisiert und wird seit 2017 vor allem von Apple eingesetzt. Die resultierenden *.heif– bzw. *.heic-Dateien ermöglichen bei gleicher Bildqualität kleinere Dateigrößen. Die Kennung *.heic weist auf die Kombination von HEIF mit dem Video-Codec Efficiency Video Coding (HEVC) hin.

Kürzlich wollte ich ein paar mit dem iPhone aufgenommene Bilder unter Linux mit Shotwell verarbeiten. Dabei bin ich, leider beinahe erwartungsgemäß, auf Probleme gestoßen. Einige ließen sich lösen, aber nicht alle.

Mit etwas Überredungskunst kann Shotwell auch mit HEIC-Dateien umgehen.

Ubuntu

Es beginnt damit, dass das weit verbreitete Foto-Management-Programm Shotwell erst seit April 2023 (Version 0.32) kompatibel mit dem HEIF-Format ist. Ubuntu bis einschließlich Version 23.04 liefert Shotwell aber in der Version 0.30 aus.

Um Version 0.32 zu installieren, müssen Sie zuerst ein Private Package Archive (PPA) aktivieren. Außerdem müssen
Sie die Bibliotheken libheif1 und heif-gdk-pixbuf installieren. (Diese Pakete gelten nicht als Abhängigkeiten und werden daher nicht automatisch installiert.)

sudo add-apt-repository ppa:ubuntuhandbook1/shotwell
sudo apt update
sudo apt install shotwell libheif1 heif-gdk-pixbuf

Sind diese Hürden einmal überwunden, funktioniert der Import von HEIC-Dateien in Shotwell problemlos, wenn auch sehr langsam.

Fedora

Unter Fedora 38 sieht die Lage nicht viel besser aus. Shotwell steht zwar in der aktuellen Version 0.32 wahlweise als Flatpak- oder als RPM-Paket zur Verfügung, scheitert aber in beiden Varianten beim Import von HEIC-Dateien. Schuld sind wiederum fehlende Bibliotheken.

Bei der Flatpak-Variante lässt sich dieses Problem aktuell nicht lösen, weil Shotwell die Bibliotheken aus Framework-Flatpaks liest, auf die Sie als Anwender keinen Einfluss haben. (Habe ich schon einmal erwähnt, dass ich weder von Snaps noch von Flatpaks viel halte?)

Die RPM-Version von Shotwell wird HEIF-kompatibel, wenn Sie die Paketquellen RPM Fusion Free und Nonfree aktivieren (siehe https://rpmfusion.org/Configuration) und das dort enthaltene Paket libheif-freeworld installieren:

sudo flatpak remove shotwell
sudo dnf install shotwell libheif-freeworld

Unter Fedora scheiterte Shotwell jetzt aber am Auslesen der EXIF-Daten. Damit fehlen Informationen, wann die Fotos aufgenommen wurden. Eine Lösung zu diesem Problem habe ich nicht gefunden. Die Sache ist ein wenig unbegreiflich, weil der Import unter Ubuntu mit EXIF-Daten funktioniert.

Nautilus und Gimp

Nicht nur Shotwell zickt, wenn es auf HEIC-Dateien stößt, ähnliche Probleme haben auch Gimp, Nautilus und Co. Bei Gimp besteht die Lösung darin, das Paket gimp-heif-plugin zu installieren.

Nautilus unter Debian/Ubuntu setzt den heif-thumbnailer voraus, der aber ebenfalls nicht automatisch installiert wird. Unter Fedora müssen Sie stattdessen die libheif-tools installieren.

heic-convert

Eine Notlösung besteht darin, HEIC-Dateien vorweg in das JPEG-Dateien umzuwandeln. Dabei hilft das Kommando heif-convert aus dem Paket libheif-tools (Fedora) bzw. libheif-examples (Ubuntu). Das folgende Kommando durchläuft alle *.HEIC-Dateien im aktuellen Verzeichnis und erzeugt JPEG-Dateien in hoher Qualität. Die resultierenden Dateien sind leider wesentlich größer als die HEIC-Originale.

for f in *.HEIC; do heif-convert -q 95 --with-exif $f $f.jpg; done

Fazit

Wenn sich immer wieder einmal jemand wundert, warum aus Linux am Desktop nichts wird — hier ist die Antwort: Aufgrund vieler Kleinigkeiten versagt Linux im praktischen Betrieb und treibt seine Anwender zur Verzweiflung. Und den schwarzen Peter jetzt Apple zuzuschieben, das partout HEIF/HEVC einsetzt, ist nicht ganz fair: Diese Dateiformate kommen nun seit sechs (!) Jahren zum Einsatz, nicht erst seit gestern.

Und tatsächlich sind unter Linux eigentlich alle Puzzle-Stücke schon da. Aber ohne stundenlange Internet-Recherche lassen sie sich nicht zusammenfügen. (Ein verblüffendes Gegenbeispiel ist übrigens KDE Neon, ansonsten eigentlich nicht meine Lieblingsdistribution: Dort werden HEIC-Dateien auf Anhieb im KDE-Dateimanager korrekt angezeigt. Auch Digikam kommt mit den Dateien sofort zurecht. Leider auch nur fast: Digikam scheitert, im Portrait-Modus aufgenommene Bilder richtig zu drehen, obwohl die EXIF-Daten eigentlich da wären.)

Quellen/Links

Open-Source-Software nachhaltig zu entwickeln, wird immer schwieriger. Willkommen im Zeitalter von "Nur schauen, nicht anfassen" für kommerzielle Rivalen.

Das in San Francisco ansässige Softwareunternehmen HashiCorp, bekannt für seine Cloud-Tools wie Terraform, Vagrant oder Vault, ändert seine Lizenzbedingungen. In einer Ankündigung wird der Wechsel von der Mozilla Public License 2.0 zur Business Source License mit der Gewährleistung kontinuerlicher Investitionen des Unternehmens in seine Community begründet.

HashiCorp hält weiterhin daran fest, seinen Quellcode frei verfügbar zu machen. Allerdings gibt die BSL dem Unternehmen mehr Kontrolle darüber, wer den Code kommerziell nutzen darf. Mit anderen Worten, wer Software von HashiCorp produktiv nutzt und sie für ein Konkurrenzprodukt einsetzen möchte, ist von nun an nicht nur bösen Blicken, sondern auch rechtlichen Hürden ausgesetzt.

In guter Gesellschaft

Einige Unternehmen haben diesen Schritt bereits vollzogen und sind auf unfreie Lizenzmodelle umgestiegen. Couchbase, Sentry und MariaDB MaxScale sind einige Beispiele dafür. Dies wirft natürlich die Frage auf, ob wir uns von der Idee freier Open-Source-Software verabschieden müssen. Die Omnipräsenz der Cloud-Industrie, die seit den 2010er-Jahren sich großer Beliebtheit erfreut, droht ernsthaft, die FOSS-Welt zu destabilisieren.

Stellt dir vor, du hast einen reichen Obstgarten erschaffen, in dem jeder sich frei der Früchte bedienen kann. Größzügig lädst du alle ein, sich nach Belieben zu bedienen und empfiehlst ihnen, selber Bäume zu pflanzen oder die Saaten weiterzuverbreiten. Eines Tages bemerkt ihr jedoch, dass einige Gäste die Früchte einsacken, sie auf eigenen Märkten verkaufen und die Profite einsacken, ohne selbst an die Ursprungscommunity etwas zurückzugegeben. Klingt unfair? Genau das passiert momentan in der Open-Source-Welt.

Damit wird Open Source zwar nicht von Tisch gewischt, sondern in eine Richtung gelenkt, die den freien ungehinderten Austausch unabhängig von gewerblichen Interessen einschränkt. Konkret wackelt dabei das 6. Kriterium der Open-Source-Definition (OSD), das eine Unterscheidung nach Einsatzfeldern ausschließt.

HashiCorp betont, dass es sich weiterhin seiner Community, seinen Partnern und Kunden verpflichtet sieht. Nur die Zeit wird zeigen, ob diese Lizenzänderungen die richtigen Schritte auf dem Weg dorthin sind. Einerseits werden Möglichkeiten von Forks eingeschränkt, andererseits ist niemandem geholfen, wenn die Weiterentwicklung durch HashiCorp auf dem Spiel steht, nur, weil externe Akteure bezogen auf die Einnahmen sinnbildlich das Wasser abgraben. Die Leute, die Software entwickeln, müssen auch von etwas bezahlt werden.

Edit (20:25 Uhr): MariaDB setzt die BSL für MaxScale ein, nicht jedoch für die Datenbank MariaDB Server. Danke für den Hinweis, Jens.

Update (20:30 Uhr): Ggfs. werde ich mich mit der BSL noch einmal in einem gesonderten Artikel beschäftigen, aber ein kleines Detail ist hierbei vllt. noch erwähnenswert, um den Blick auf die Sache zu ändern. Die von HashiCorp verwendete Form der BSL setzt auf eine Art Embargozeit. Nach 4 Jahren der Veröffentlichung eines nach BSL lizenzierten Werkes in einer spezifischen Version, greift folgender Passus:

Effective on the Change Date, or the fourth anniversary of the first publicly available distribution of a specific version of the Licensed Work under this License, whichever comes first, the Licensor hereby grants you rights under the terms of the Change License, and the rights granted in the paragraph above terminate.

Als Change License wurde die MPL 2.0 festgelegt.

13. August 2023

Firefox Relay ist ein kostenfreier Dienst von Mozilla, der die persönliche E-Mail-Adresse vor Spam und unerwünschter Offenlegung schützt. Die kostenpflichtige Premium-Version steht nun in 17 weiteren Ländern zur Verfügung.

Was ist Firefox Relay?

E-Mail-Adressen sind gleichzusetzen mit einer persönlichen Adresse. Sie sind einmalig und viele Nutzer besitzen nur eine einzige E-Mail-Adresse, die sie teilweise auf dutzenden, wenn nicht gar auf hunderten Websites verwenden. Findet auf einer Website, auf der man mit seiner E-Mail-Adresse registriert ist, ein Datendiebstahl statt, wird damit in vielen Fällen auch die persönliche E-Mail-Adresse offengelegt. Und haben Spammer erstmal eine E-Mail-Adresse in ihrem System, darf man sich auf viele unerwünschte E-Mails ohne realistische Hoffnung einstellen, dass der Spam abnehmen wird.

Mit Firefox Relay können sogenannte Masken als Alias-Adressen angelegt werden, die der Nutzer für Newsletter-Anmeldungen und Website-Registrierungen angeben kann. Firefox Relay leitet diese E-Mails dann an die persönliche E-Mail-Adresse weiter. Außerdem kann Firefox Relay bekannte Tracking-Scripts aus E-Mails entfernen.

Firefox Relay ist kostenlos. Es gibt aber auch eine kostenpflichtige Premium-Version, welche unendlich viele Masken anstelle von nur fünf sowie eine eigene E-Mail-Domain erlaubt. Außerdem können in Firefox Relay Premium auf weitergeleitete E-Mails geantwortet und Werbe-Mails automatisch blockiert werden. In den USA sowie Kanada können mittlerweile auch Telefonnummern maskiert werden.

Start in weiteren Ländern

Die kostenlose Version von Firefox Relay kann fast überall auf der Welt genutzt werden. Firefox Relay Premium steht neben Deutschland, Österreich und der Schweiz auch in Belgien, Finnland, Italien, Irland, Frankreich, Kanada, Malaysia, Neuseeland, den Niederlanden, Schweden, Singapur, Spanien, dem Vereinigten Königreich und den Vereinigten Staaten von Amerika zur Verfügung.

Zu diesen 17 Ländern kommen ab sofort 17 weitere Länder dazu: Bulgarien, Dänemark, Estland, Griechenland, Kroatien, Lettland, Litauen, Luxemburg, Malta, Polen, Portugal, Rumänien, Slowenien, Slowakei, Tschechien, Ungarn sowie Zypern.

Browser-Erweiterung für Firefox Relay

Die dazugehörige Browser-Erweiterung ist nicht zwingend erforderlich, erleichtert aber das Anlegen neuer Masken, da direkt in E-Mail-Feldern auf Websites ein entsprechendes Symbol erscheint, über welches eine neue Maske angelegt werden kann. Über die Schaltfläche im Erweiterungsmenü erscheinen diverse Statistiken wie die Anzahl verwendeter E-Mail-Masken, blockierter E-Mails, weitergeleiteter E-Mails sowie entfernten E-Mail-Trackern. Darüber hinaus kann die Erweiterung genutzt werden, um ein Problem mit Firefox Relay auf bestimmten Websites zu melden.

Das nun veröffentlichte Update der Browser-Erweiterung auf Firefox Relay 2.7.2 bringt eine entsprechende Premium-Ankündigung für Nutzer in einem der neu dazu gekommenen Länder.

Download der Browser-Erweiterung Firefox Relay für Firefox
Download der Browser-Erweiterung Firefox Relay für Google Chrome

Der Beitrag Firefox Relay Premium expandiert in 17 weitere Länder erschien zuerst auf soeren-hentzschel.at.

Ich habe das Skript roundcube-users.sh entwickelt, es  ermöglicht mir, die jüngsten erfolgreichen Anmeldungen im Roundcube-Webmail-Interface anzuzeigen. Dieses Tool dient dazu, die Erfolg oder Misserfolg von Anmeldeversuchen zu überprüfen.

#!/bin/bash
# roundcube-users.sh $Revision: 1.10 $
# Mit Zeilennummerierung
echo "SELECT (@row := @row + 1) as Nr, username,last_login,created,failed_login,failed_login_counter \
from roundcube.users r, (SELECT @row := 0) row \
where username like '%$1%' \
order by last_login DESC \
LIMIT 10;"|\
mysql -S /var/run/mysqld/mysqld.sock --table | egrep --color 'username|last_login|*'


if [ "$#" -ne "1" ]
then
    bold=$(tput bold)
    normal=$(tput sgr0)
    #gelb=$(tput setaf 3)
    gruen=$(tput setaf 2)
    black=$(tput setaf 0)

    echo "---------------------------------------------------------------"
    echo "$bold Tipp:$normal "
    echo "Die Anzeige zeigt nur die letzten 10 Logins."
    echo "Kann aber auch durch einen$gruen Teilstring$normal eingeschränkt werden. "
    echo "$bold Beispiel:$normal"
    echo "$0$gruen .eu$normal"
fi

 

12. August 2023

Zumindest, wenn man es richtig macht. Kürzlich gab es mal wieder eine Diskussion, bei der es um Backups ging. Ein Teilnehmer war felsenfest davon überzeugt, dass Backups nicht in der sogenannten Cloud gespeichert werden dürfen. Genannt wurden folgende Gründe.

Was, wenn der Cloud-Anbieter die Daten löscht bzw. seinen Dienst ohne Vorwarnung komplett einstellt?

Eine Datensicherung in der Cloud sollte nie die einzige Datensicherung sein. Die Regeln des sogenannten 3-2-1 Backups besagen, dass die Daten insgesamt 3 Mal vorhanden sein sollen. Also einmal die Daten die man normal nutzt. Dann einmal in Form eines lokalen Backups auf beispielsweise einer externen Festplatte. Und einmal außer Haus.

Die Daten sind bei einem Cloud-Anbieter nicht sicher.

Ich nutze für die Backups das Programm Borg. Das Programm verschlüsselt die Daten von Haus aus. Um die Daten wieder zu entschlüsseln, benötigt man in meinem Fall ein Passwort sowie eine Schlüsseldatei. Beides ist lokal gespeichert. Das also ein Cloud-Anbieter das Passwort kennt und Zugriff auf die Schlüsseldatei hat, ist relativ unwahrscheinlich. Auch halte ich es für relativ unwahrscheinlich, dass Anbieter wie rsync.net überhaupt auf die Daten zugreifen wollen. Der Chef von rsync.net hat beispielsweise schon mehrmals dazu geraten die Daten lokal zu verschlüsseln und erst dann hochzuladen.

Externe Datenträger sind ausreichend.

Nein sind sie nicht. Was bringt zum Beispiel eine externe Festplatte, die neben dem Computer liegen, wenn das Haus abbrennt? Vor einigen Jahren ist bei mir in Sichtweite ein Teil eines Bauernhofs abgebrannt. Bis alles so weit gelöscht war, dass nur noch die Brandwache vor Ort war, ist die ganze Nacht vergangen. Und selbst diese hat noch nach gelöscht. Das überlebt kein handelsüblicher Datenträger.

Es gibt bessere Alternativen wie ein Bankschließfach.

Bei der Bank, bei der ich mein Konto habe, ist kein Bankschließfach frei und die Warteliste ist laut einem Mitarbeiter sehr lang. Natürlich kann man alternativ auch eine externe Festplatte bei einem Verwandten oder einem guten Freund abgeben. Aber in beiden Fällen müsste ich regelmäßig den Datenträger austauschen, damit immer ein aktuelles Backup außer Haus vorhanden ist. Man hat also mehr Aufwand. Und auch in diesem Fall würde ich die Daten verschlüsseln. Zumal man bei Borg die Verschlüsselung nicht aktivieren, sondern bewusst deaktivieren muss.

Mein persönliches Fazit

Aus meiner Sicht spricht somit mehr für die Cloud, wenn es um Backups geht als dagegen. Sofern sie einen Teil der Backup-Strategie darstellt und die Daten lokal verschlüsselt und erst dann hochgeladen werden.

Zumindest, wenn man es richtig macht. Kürzlich gab es mal wieder eine Diskussion, bei der es um Backups ging. Ein Teilnehmer war felsenfest davon überzeugt, dass Backups nicht in der sogenannten Cloud gespeichert werden dürfen. Genannt wurden folgende Gründe.

Was, wenn der Cloud-Anbieter die Daten löscht bzw. seinen Dienst ohne Vorwarnung komplett einstellt?

Eine Datensicherung in der Cloud sollte nie die einzige Datensicherung sein. Die Regeln des sogenannten 3-2-1 Backups besagen, dass die Daten insgesamt 3 Mal vorhanden sein sollen. Also einmal die Daten die man normal nutzt. Dann einmal in Form eines lokalen Backups auf beispielsweise einer externen Festplatte. Und einmal außer Haus.

Die Daten sind bei einem Cloud-Anbieter nicht sicher.

Ich nutze für die Backups das Programm Borg. Das Programm verschlüsselt die Daten von Haus aus. Um die Daten wieder zu entschlüsseln, benötigt man in meinem Fall ein Passwort sowie eine Schlüsseldatei. Beides ist lokal gespeichert. Das also ein Cloud-Anbieter das Passwort kennt und Zugriff auf die Schlüsseldatei hat, ist relativ unwahrscheinlich. Auch halte ich es für relativ unwahrscheinlich, dass Anbieter wie rsync.net überhaupt auf die Daten zugreifen wollen. Der Chef von rsync.net hat beispielsweise schon mehrmals dazu geraten die Daten lokal zu verschlüsseln und erst dann hochzuladen.

Externe Datenträger sind ausreichend.

Nein sind sie nicht. Was bringt zum Beispiel eine externe Festplatte, die neben dem Computer liegen, wenn das Haus abbrennt? Vor einigen Jahren ist bei mir in Sichtweite ein Teil eines Bauernhofs abgebrannt. Bis alles so weit gelöscht war, dass nur noch die Brandwache vor Ort war, ist die ganze Nacht vergangen. Und selbst diese hat noch nach gelöscht. Das überlebt kein handelsüblicher Datenträger.

Es gibt bessere Alternativen wie ein Bankschließfach.

Bei der Bank, bei der ich mein Konto habe, ist kein Bankschließfach frei und die Warteliste ist laut einem Mitarbeiter sehr lang. Natürlich kann man alternativ auch eine externe Festplatte bei einem Verwandten oder einem guten Freund abgeben. Aber in beiden Fällen müsste ich regelmäßig den Datenträger austauschen, damit immer ein aktuelles Backup außer Haus vorhanden ist. Man hat also mehr Aufwand. Und auch in diesem Fall würde ich die Daten verschlüsseln. Zumal man bei Borg die Verschlüsselung nicht aktivieren, sondern bewusst deaktivieren muss.

Mein persönliches Fazit

Aus meiner Sicht spricht somit mehr für die Cloud, wenn es um Backups geht als dagegen. Sofern sie einen Teil der Backup-Strategie darstellt und die Daten lokal verschlüsselt und erst dann hochgeladen werden.

Wenn du in Linux die Konsole öffnest, dann öffnest du in den meisten Fällen eine Bash Shell. Eine Shell ist einfach nur ein Programm, mit dem du Befehle an deinen Computer senden kannst wie : Zeige mir alle Dateien und Verzeichnisse an, oder starte Programm XY. Eine Shell ist also eine Kommunikationsschnittstelle zu deinem Betriebssystem. Es gibt viele verschiedene Shells und eine davon ist eben Bash. Siehe auch Wikipedia https://de.wikipedia.org/wiki/Bash_(Shell)

So eine Shell (Mensch-Maschine-Schnittstelle) bietet sehr sehr sehr viele verschiedene Möglichkeiten. Darunter auch viele Shortcuts (Tastenkombinationen), die das Eingeben, Suchen, Editieren usw viel einfacher machen.

Hier habe ich einige und für mich sehr nützliche Shortcuts zusammengestellt

Die Buchstaben hier sind zwar alle groß geschrieben, aber das einfach nur wegen der besseren Lesbarkeit und Einheitlichkeit. Alle Buchstaben können ohne die Shift Taste eingegeben werden. Also ein L ist eigentlich ein l, das sonst schnell mit einem großen i verwechselt werden könnte. Ich schreibe extra Kommandozeile, weil die sich über mehrere Zeilen erstrecken kann und damit klar wird, dass nicht die Bildschirmränder gemeint sind.

Nützliches

  • TAB Tabulator Taste bei der Eingabe drücken, um die Autovervollständigung zu nutzen. Am Anfang der Zeile wird nach Befehlen aus dem System gesucht, wenn bereits ein Wort am Anfang steht, dann werden Datei- und Verzeichnisnamen vervollständigt
  • Strg + L Löscht den Bildschirm. Wie auch der Befehl clear
  • !! Den letzten Befehl nochmal wiederholen (NOCHMAL !! !! !! !!)

Suchen

  • Pfeil hoch / runter – Befehlshistorie hoch und runter (vor und zurück) blättern, um bereits ausgeführte Befehle nochmal zu wiederholen. Bash speichert eingegebene Befehle in einer Datei namens .bash_history in deinem Homeverzeichnis und diese wird dann durchsucht.
  • Strg + R Inkrementelle Rückwärtssuche der Bash Historie. Erneut Strg + R drücken, um das nächste Suchergebnis anzeigen zu lassen.
  • Strg + J die aktuelle Suche in der Bash Historie mit der Übernahme des aktuellen Befehls beenden (Jaaaaa)
  • Strg + G die aktuelle Suche in der History mit leerer Eingabe beenden (Geh weg!)

Cursor Navigation

  • Strg + A Springe ganz an den ANFANG der Kommandozeile
  • Strg + E Springe ganz an das ENDE der Kommandozeile
  • Alt + F schiebt den Cursor vorwärts (FORWARD) vor das nächste Wort
  • Alt + B schiebt Cursor zurück (BACK) auf den ersten Buchstaben des vorangegangen Wortes

Löschen & Tauschen

  • Strg + U Löscht alles links des Cursors bis zum Anfang der Kommandozeile (Uuuuund zurück)
  • Strg + K Löscht alles rechts des Cursors bis zum Ende der Kommandozeile (Kawumm)

  • Strg + W Löscht ab dem aktuellen Zeichen links den „Rest“ bis zum WORTanfang
  • Alt + D Löscht ab dem aktuellen Zeichen den „Rest“ DES Wortes rechts

  • Alt + T Das Wort an der aktuellen Cursorposition wird mit dem vorangehenden Wort vertauscht (Tausch)

Ausgabe Display

  • Strg + S Stoppt die Ausgabe von Meldungen auf dem Bildschirm – einfrieren/screenshot (das aktuell laufende Programm wird nicht gestoppt. Im „Hintergrund“ laufen die Meldungen weiter)
  • Strg + Q Beendet das Strg + S (screenshot/einfrieren)

Beenden

  • Strg + C Abbruch eines Programms
  • Strg + D Schliesst die Bash Shell und damit auch meist das Konsolen Terminal

The post Nützliche Bash Shortcuts first appeared on Dem hoergen Blog.

10. August 2023

Mozilla hat Version 2.16 seiner VPN-Clients für das Mozilla VPN veröffentlicht. Dieser Artikel beschreibt die Neuerungen vom Mozilla VPN 2.16.

Mit dem Mozilla VPN bietet Mozilla in Zusammenarbeit mit Mullvad sein eigenes Virtual Private Network an und verspricht neben einer sehr einfachen Bedienung eine durch das moderne und schlanke WireGuard-Protokoll schnelle Performance, Sicherheit sowie Privatsphäre: Weder werden Nutzungsdaten geloggt noch mit einer externen Analysefirma zusammengearbeitet, um Nutzungsprofile zu erstellen.

Jetzt Mozilla VPN nutzen

Die Neuerungen vom Mozilla VPN 2.16

Mit dem Update auf das Mozilla VPN 2.16 hat sich Mozilla auf Fehlerbehebungen sowie Verbesserungen unter der Haube konzentriert.

Tipp: Mozilla VPN aktuell mit 20 Prozent Rabatt

Ein Tipp für alle Interessierten: Mit dem Rabatt-Code VPN20 bekommt man das Mozilla VPN derzeit mit 20 Prozent Rabatt für das erste Jahr.

Der Beitrag Mozilla VPN 2.16 veröffentlicht erschien zuerst auf soeren-hentzschel.at.

8. August 2023

CentOS ist von Haus aus so konfiguriert, dass durch Updates bis zu 5 Kernel-Versionen installiert sein können. Für mich ist das viel zu viel. Wie kann man also ausmisten?

CentOS bietet beispielsweise den Befehl package-cleanup an, welcher Teil des Pakets yum-utils ist. Führt man package-cleanup ‐‐oldkernels ‐‐count=2 aus, werden alle installierten Kernel-Versionen bis auf die letzten zwei deinstalliert. Das ist somit etwas einfacher als die jeweiligen Versionen manuell mit yum zu deinstallieren.

Soweit so gut. Was aber, wenn man immer nur maximal 2 Kernel-Versionen installiert haben will? Muss man jedes Mal nach einem Kernel-Update package-cleanup ausführen? Nicht unbedingt. In der Datei /etc/yum.conf kann man auch fest einstellen wie viele Kernel-Versionen vorgehalten werden. Hierfür muss man die Zeile installonly_limit=5 einfach entsprechend ändern.

CentOS ist von Haus aus so konfiguriert, dass durch Updates bis zu 5 Kernel-Versionen installiert sein können. Für mich ist das viel zu viel. Wie kann man also ausmisten?

CentOS bietet beispielsweise den Befehl package-cleanup an, welcher Teil des Pakets yum-utils ist. Führt man package-cleanup ‐‐oldkernels ‐‐count=2 aus, werden alle installierten Kernel-Versionen bis auf die letzten zwei deinstalliert. Das ist somit etwas einfacher als die jeweiligen Versionen manuell mit yum zu deinstallieren.

Soweit so gut. Was aber, wenn man immer nur maximal 2 Kernel-Versionen installiert haben will? Muss man jedes Mal nach einem Kernel-Update package-cleanup ausführen? Nicht unbedingt. In der Datei /etc/yum.conf kann man auch fest einstellen wie viele Kernel-Versionen vorgehalten werden. Hierfür muss man die Zeile installonly_limit=5 einfach entsprechend ändern.

7. August 2023

Erneut muss Mozilla ein Firefox-Update nur auf Grund einer sich fehlerhaft verhaltenden Sicherheits-Software veröffentlichen. Anlass für die Veröffentlichung von Firefox 116.0.2 ist ZoneAlarm.

Download Mozilla Firefox 116.0.2

Mit dem Update auf Firefox 116 hatte Mozilla ursprünglich eine vom ZoneAlarm Anti-Keylogger injizierte DLL-Datei blockiert, um von ZoneAlarm verursachte Abstürze bei der Eingabe von Text zu beheben, wovon im Übrigen auch andere Browser als Firefox betroffen waren. Diese Blockade macht Mozilla mit Firefox 116.0.2 wieder rückgängig, nachdem Nutzer des Anti-Keyloggers keine korrekten Eingaben mehr mit ihrer Tastatur in Firefox ausführen konnten. Hiervon waren wohl noch mehr Nutzer betroffen, so dass Mozilla die Abstürze als das kleinere Übel bewertet hat. Die Konsequenz daraus ist, dass ZoneAlarm-Nutzer nun wieder vermehrt mit Firefox-Abstürzen rechnen müssen, wenn sie Text auf einer Website eingeben.

Nutzer, welche kein Produkt von ZoneAlarm nutzen, sind von den Problemen nicht betroffen.

Der Beitrag Firefox 116.0.2 behebt durch ZoneAlarm verursachtes Tastatur-Problem erschien zuerst auf soeren-hentzschel.at.

Hi, mein Name ist Jörg. Ich arbeite seit März 2023 als Senior Technical Account Manager für Red Hat und mir schwirren derzeit folgende Fragen im Kopf herum:

  • Wer sind die Menschen, die Open Source Software auf bzw. für CentOS Stream, Fedora und/oder RHEL entwickeln?
    • Sind es Menschen, die dies ausschließlich in ihrer Freizeit tun?
    • Arbeiten sie in Unternehmen, welche nach dem Open Source Entwicklungsmodell arbeiten?
  • Warum habt ihr euch für oder gegen die eine oder andere Distribution entschieden?
  • Was hindert euch daran, eine der genannten Distributionen zu verwenden?
  • Aus welchem Grund bevorzugt ihr andere Distributionen und welche sind dies?

Hinsichtlich dieser Fragen habe ich selbst offensichtlich einen Interessenskonflikt und bin darüber hinaus zu einem hohen Grad betriebsblind. Deshalb bin ich umso mehr daran interessiert, eure Antworten auf diese Fragen zu lesen.

Ich freue mich, wenn ihr euch die Zeit nehmt, um mir zu antworten und mir zu erläutern, wie ihr dazu steht. Eure Nachrichten nehme ich gern auf folgenden Kanälen entgegen:

  • Als Kommentar unter diesem Artikel
  • Als E-Mail an jkastning+distribution (at) my-it-brain (dot) de
  • Als Chat-Nachricht in #my-it-brain:matrix.org

Es freut mich, wenn daraus eine freundliche und konstruktive Diskussion entsteht. Sollte es dabei allerdings zu Trolling oder unangemessenen Äußerungen kommen, werde ich die Kommentare schließen und die Kommunikation einstellen. Bitte geht daher höflich miteinander um und behandelt einander so, wie ihr selbst auch behandelt werden möchtet.

6. August 2023

Awesome NetBox

NetBox ist ein praktisches Tool, um Netzwerke zu inventarisieren und abzubilden. Quasi ein Wiki für die Hardware und deren Einstellungen. Es unterstützt IPAM (IP Address Management) und kann als Data Center Infrastructure Management  (DCIM) verwendet werden. Daneben bietet es natürlich weitere Features, die der Dokumentation entnommen werden können.

netboxDas System lässt sich nicht nur mit Plug-ins erweitern, sondern auch mit Ansible automatisieren, zum Erzeugen von QR Labels nutzen oder dem Abbilden der Netzwerktopologie. 

Awesome NetBox hat diese und weitere Features gesammelt und stellt sie via Linkliste zur Verfügung. Das erspart das Suchen nach weiteren Funktionen und bietet einen guten Startpunkt. Eine praktische Sammlung.

4. August 2023

Auf vielfachen Wunsch hin, habe ich eine SpaceFun Rolling Variante mit dem GNOME Desktop entwickelt, welche für moderne Rechner gut geeignet ist.

Ursprünglich habe ich SpaceFun entwickelt um eine schlanke Distro für ältere Rechner anzubieten. Als Basis dient dazu Debian GNU/Linux wahlweise in der Stable oder Rolling (Sid) Variante. In der Zwischenzeit konnte sich bereits eine kleine nette Nutzergemeinde etablieren und dank SpaceFun konnten wir schon einer Vielzahl von Rechnern wieder ein neues Leben schenken.

Egal, ob 32 Bit EeePC oder ein älterer Core 2 Duo, SpaceFun läuft nahezu überall, und wenn es doch noch leichtgewichtiger sein soll, kommt die Moonlight Variante (oder TuxWiz für Linux Retro Gamer) mit dem IceWM Windowmanager zum Einsatz. Und selbst für die Kleinsten ist gesorgt.

Doch immer wieder wurde ich gefragt, ob es auch einen SpaceFun Spin für aktuelle Hardware geben wird, was mich dazu bewegt hat SpaceFun GNOME zu entwickeln.



Diese Version basiert auf Debian GNU/Linux Sid und steht ausschliesslich für x86_64 Prozessoren zur Verfügung. Wie üblich handelt es sich um ein Live-Image, welches sich mithilfe von Calamares auf die Festplatte bannen lässt.

SpaceFun GNOME startet im Live-Modus in englischer Sprache, nach der Installation wird allerdings die ausgewählte Sprache auf dem Zielsystem übernommen. Das Tastaturlayout lässt sich selbstverständlich auch im Live-Modus anpassen.

Die Softwareauswahl ist bewusst schlank gehalten, um eine gute Basis für ein System zu bieten, welches selbst nach den eigenen Wünschen erweitert werden kann.

Wer bereits eine Rolling-Release-Distribution nutzt, dem ist wahrscheinlich bekannt, dass täglich neue Updates bereitgestellt werden. Dies ist auch bei Debian GNU/Linux Sid der Fall. Standardmässig werden Updates über GNOME Software installiert. Beim Herunterfahren des Systems hat man die Möglichkeit zu wählen, vor dem Ausschalten die Aktualisierungen zu installieren. Dann startet der PC kurz neu, installiert die Updates und schaltet sich daraufhin aus.

Möchtest du hingegen lieber volle Kontrolle über Updates haben, kannst du die entsprechende Funktion in GNOME Software deaktivieren und das System auf der Kommandozeile mit Root-Rechten aktualisieren:

apt update && apt upgrade

Unter Sid kann es dabei vorkommen, das Pakete zurückgehalten werden. Diese Funktion ist sinnvoll und man könnte mittels apt full-upgrade auch diese Pakete installieren. Davon wird auf einem Rolling Sid allerdings explizit abgeraten.

Ich konnte selbst mit obigen Befehlen Sid-basierte Installationen über Jahre hinweg aktuell halten und auch wenn man längere Zeit keine Updates eingespielt hat, funktioniert es in der Regel problemlos.

Sollte es dennoch einmal zu Schwierigkeiten kommen, stehen wir über Telegram und neu auch über XMPP mit Rat und Tat zur Seite.

Wer auf der Suche nach einer modernen, schnellen Linux Distribution mit GNOME ist, sollte einen Blick auf SpaceFun GNOME werfen. Aktuelle Downloads findet man auf der SpaceFun Webseite, indem man auf den GNOME 64 Bit Button klickt.

https://spacefun.ch


GNU/Linux.ch ist ein Community-Projekt. Bei uns kannst du nicht nur mitlesen, sondern auch selbst aktiv werden. Wir freuen uns, wenn du mit uns über die Artikel in unseren Chat-Gruppen oder im Fediverse diskutierst. Auch du selbst kannst Autor werden. Reiche uns deinen Artikelvorschlag über das Formular auf unserer Webseite ein.

2. August 2023

Die MZLA Technologies Corporation hat mit Thunderbird 115.1 ein planmäßiges Update für seinen Open Source E-Mail-Client veröffentlicht.

Neuerungen von Thunderbird 115.1

Mit dem Update auf Thunderbird 115.1 hat die MZLA Technologies Corporation ein planmäßiges Update für seinen Open Source E-Mail-Client veröffentlicht. Das Update bringt diverse Fehlerbehebungen und Verbesserungen, welche sich in den Release Notes (engl.) nachlesen lassen. Auch wurden diverse Sicherheitslücken geschlossen.

Updates von Thunderbird 102 und älter sind zu diesem Zeitpunkt noch nicht aktiv. Nutzer älterer Versionen können sich Thunderbird 115.1 aber über die offizielle Website herunterladen und über die bestehende Version installieren.

Der Beitrag Thunderbird 115.1 veröffentlicht erschien zuerst auf soeren-hentzschel.at.

1. August 2023

Mozilla hat Firefox 116 für Windows, Apple macOS und Linux veröffentlicht. Dieser Artikel fasst die wichtigsten Neuerungen zusammen – wie immer auf diesem Blog weit ausführlicher als auf anderen Websites.

Download Mozilla Firefox für Microsoft Windows, Apple macOS und Linux

Lautstärke im Bild-im-Bild-Modus ändern

Der sogenannte Bild-im-Bild-Modus erlaubt es, Videos von der Website loszulösen und über andere Tabs und sogar Anwendungen zu legen. Innerhalb des losgelösten Video-Fensters kann die Wiedergabe pausiert und wieder gestartet werden, man sieht den Wiedergabe-Fortschritt und kann an eine andere Stelle des Videos springen, ein Wechsel in den Vollbildmodus ist möglich, der Ton kann aus- und wieder eingeschaltet werden und auch Untertitel werden auf vielen Plattformen unterstützt.

Firefox 116 bringt die nächste Funktion in den Bild-im-Bild-Modus. Ab sofort kann auch die Lautstärke direkt im losgelösten Fenster geändert werden, ohne dass man dazu zurück in den Tab muss, aus welchem das Video stammt.

Text-Anmerkungen in PDF-Dateien bearbeiten

Firefox erlaubt bereits seit einiger Zeit, Text-Anmerkungen auf PDF-Dateien zu hinterlassen. Bestehende Anmerkungen konnten aber, wenn eine PDF-Datei mit Text-Anmerkungen geöffnet wurde, nicht bearbeitet werden. Das ist ab Firefox 116 möglich.

Sonstige Endnutzer-Neuerungen von Firefox 116

Mittels Strg + Shift + T (Mac: Cmd + Shift + T) war es bereits möglich, einen oder mehrere zuletzt geschlossene Tabs zu öffnen. Geschlossene Fenster werden darüber jetzt ebenso geöffnet. Gibt es weder Tabs noch Fenster zum Wiederherstellen, wird die letzte Sitzung wiederhergestellt.

Sind sogenannte Tab-Umgebungen aktiv (beispielsweise über eine Erweiterung) wird die entsprechende Umgebungs-Farbe jetzt auch in dem Menü angezeigt, welches nach Klick auf das Pfeil-Symbol am Ende der Tableiste erscheint und alle geöffneten Tabs beinhaltet.

Für Nutzer mit vielen Tabs wurde die Performance des gleichzeitigen Schließens mehrerer Tabs verbessert.

Die Synchronisation der Zugangsdaten wurde verbessert und arbeitet jetzt intern mehr wie andere Sync-Engines (beispielsweise für die Lesezeichen), was die Zuverlässigkeit erhöhen soll. Außerdem wurde behoben, dass Zugangsdaten, die via CSV-Datei importiert worden sind, nicht synchronisiert worden sind. Der CSV-Import von Zugangsdaten musste bisher manuell via about:config aktiviert werden, ist jetzt aber standardmäßig möglich.

Beim Speichern eines Lesezeichens über den Stern in der Adressleiste erscheint im entsprechenden Dialog nicht länger ein Screenshot der Seite, welcher darüber hinaus ohnehin an keiner anderen Stelle in Firefox verwendet worden war.

Das Auswahlfeld, welches in einer geöffneten Sidebar den Wechsel zu einer anderen Sidebar oder die Änderung der Position erlaubt, kann jetzt auch über die Tastatur benutzt werden.

Die interne Seite about:performance wurde entfernt und leitet auf about:processes weiter.

Bei Nutzung einer englischsprachigen Version von Firefox beinhaltet der Dialog, der erscheint, wenn ein Update verfügbar ist, jetzt einen Link zu den Release Notes der neuen Version.

Seit Version 115 unterstützt Firefox einen neuen Mechanismus, über welchen die Ausführung von Erweiterungen auf bestimmten Websites durch Mozilla, beispielsweise aus Sicherheitsgründen, standardmäßig verhindert werden kann. Firefox 116 ergänzt in den Einstellungen des jeweiligen Add-ons eine Option, womit dieser Sicherheits-Mechanismus pro Erweiterung ein- oder ausgeschaltet werden kann.

Mehr Sicherheit für Firefox-Nutzer

Auch in Firefox 116 wurden wieder mehrere Sicherheitslücken geschlossen. Alleine aus Gründen der Sicherheit ist ein Update auf Firefox 116 daher für alle Nutzer dringend empfohlen.

Verbesserungen der Entwicklerwerkzeuge

Mit benutzerdefinierten Formatierern können Websites festlegen, wie bestimmte JavaScript-Objekte und -Funktionen in der Konsole angezeigt werden sollen. Diese Funktion ist standardmäßig deaktiviert und kann über die Einstellungen der Entwicklerwerkzeuge aktiviert werden.

Der Inspektor zeigt jetzt ein entsprechendes Badge an, wenn Container Queries für ein Element aktiv sind, und das Netzwerkanalyse-Werkzeug zeigt an, wenn eine Anfrage via DNS over HTTPS aufgelöst worden ist.

Weitere Neuerungen der Entwicklerwerkzeuge werden im DevTools-Newsletter für Firefox 116 beschrieben.

Verbesserungen der Webplattform

Firefox unterstützt nun wie andere Browser auch auf Websites das Einfügen von Dateien, welche vom Betriebssystem aus in die Zwischenablage kopiert worden sind.

Die Intl.NumberFormat API unterstützt diverse neue Parameter sowie die formatRange- und formatRangeToParts()-Methoden.

Die Audio Output Devices API ermöglicht es Websites, Audio von Medienelementen zu zugelassenen Ausgabegeräten umzuleiten, welche nicht Systemstandard sind. So könnte beispielsweise eine Anwendung für Webkonferenzen das Audio-Signal entweder an die Lautsprecher in einem Headset oder externe Lautsprecher umleiten.

Das dirname-Attribut wird in input- und textarea-Feldern unterstützt, ebenso externe Hashes in der Content Security Policy. In SVG-Grafiken wird die Längeneinheit q unterstützt.

Für Entwickler von Browser-Erweiterungen sei action.getUserSettings() erwähnt, worüber eine Erweiterung feststellen kann, ob ihre Schaltfläche an die Symbolleiste angeheftet oder im Erweiterungsmenü ist. Die tabs API wurde um die autoDiscardable-Eigenschaft erweitert.

Weitere Neuerungen für Entwickler von Websites und Browser-Erweiterungen lassen sich in den MDN Web Docs nachlesen.

Windows 7/8 sowie macOS 10.12/10.13/10.14 werden nicht länger unterstützt

Bereits am 14. Januar 2020 hatte Microsoft die Unterstützung seines Betriebssystems Windows 7 offiziell eingestellt, die Einstellung der Unterstützung von Windows 8.1 folgte am 10. Januar 2023. Seitens Apple gibt es keine offiziellen Daten für Support-Enden, das letzte Update für macOS 10.14 erschien allerdings im Juli 2021. Dies ist für Nutzer insofern relevant, als dass es für diese Betriebssysteme keine Sicherheits-Updates mehr gibt. Nutzer sollten daher unbedingt auf ein aktuelles Betriebssystem umsteigen, falls noch nicht geschehen.

Firefox 115 war das letzte große Update für diese veralteten Betriebssyssteme. Entsprechende Nutzer werden auf Firefox ESR 115 umgestellt und erhalten dann darüber noch bis September 2024 Sicherheits-Updates für Firefox. Neue Funktionen oder die Unterstützung für neue Webstandards gibt es allerdings keine mehr. Firefox 116 kann auf entsprechenden Systemen nicht mehr installiert werden.

Der Beitrag Mozilla veröffentlicht Firefox 116 erschien zuerst auf soeren-hentzschel.at.

31. Juli 2023

Genau wie Jörg von My-IT-Brain bin ich gerade dabei Dokumente einzuscannen um sie mit Paperless-ngx zu verwalten. Als Scanner nutze ich den Brother ADS-1700W. Dieser kann laut Datenblatt bis zu 20 Seiten automatisch am Stück einscannen. Und genau da fängt das Problem an.

Wenn ich beispielsweise 20 einseitige Rechnungen am Stück einscanne, speichert der Scanner diese in einer PDF-Datei. Für Paperless-ngx ist dies somit auch nur ein Dokument und verarbeitet die Datei entsprechend. Jede Rechnung in eine bestimmte Kategorie einzuordnen und unterschiedliche Tags zuordnen ist somit nicht möglich. Also alle Dokumente einzeln einscannen? Danke, aber nein danke. Da bleibe ich lieber bei der Totholz-Ablage.

Aber das Problem hatten glücklicherweise schon einige Nutzer vor mir. Daher gibt es bereits eine Lösung und sie lautet Patch T. Hierbei handelt es sich um besondere Trennseiten. Diese druckt man aus und fügt sie zwischen die einzelnen Dokumente ein. Diesen Stapel scannt man dann komplett ein. Der Scanner erzeugt zwar weiterhin eine einzelne PDF-Datei aber Paperless-ngx erkennt anhand des Strichcodes, der auf der Trennseite vorhanden ist, wann ein neues Dokument beginnt und splittet die PDF-Datei entsprechend in mehrere Dokumente auf.

Damit Paperless-ngx den Strichcode nutzen kann, muss man vorher aber erst die Umgebungsvariable PAPERLESS_CONSUMER_ENABLE_BARCODES auf true setzen (https://docs.paperless-ngx.com/configuration/#barcodes).

Weiterhin ist es nötig die Trennseite, welche man unter http://www.alliancegroup.co.uk/downloads/patch-code-t.pdf herunterladen kann, entsprechend der Hinweise in der PDF-Datei auszudrucken. Sonst funktioniert das Aufsplitten der PDF-Datei in mehrere Dokumente nicht. Die Ausdrucke kann man beliebig oft wiederverwenden, da der Code immer gleich ist.

Genau wie Jörg von My-IT-Brain bin ich gerade dabei Dokumente einzuscannen um sie mit Paperless-ngx zu verwalten. Als Scanner nutze ich den Brother ADS-1700W. Dieser kann laut Datenblatt bis zu 20 Seiten automatisch am Stück einscannen. Und genau da fängt das Problem an.

Wenn ich beispielsweise 20 einseitige Rechnungen am Stück einscanne, speichert der Scanner diese in einer PDF-Datei. Für Paperless-ngx ist dies somit auch nur ein Dokument und verarbeitet die Datei entsprechend. Jede Rechnung in eine bestimmte Kategorie einzuordnen und unterschiedliche Tags zuordnen ist somit nicht möglich. Also alle Dokumente einzeln einscannen? Danke, aber nein danke. Da bleibe ich lieber bei der Totholz-Ablage.

Aber das Problem hatten glücklicherweise schon einige Nutzer vor mir. Daher gibt es bereits eine Lösung und sie lautet Patch T. Hierbei handelt es sich um besondere Trennseiten. Diese druckt man aus und fügt sie zwischen die einzelnen Dokumente ein. Diesen Stapel scannt man dann komplett ein. Der Scanner erzeugt zwar weiterhin eine einzelne PDF-Datei aber Paperless-ngx erkennt anhand des Strichcodes, der auf der Trennseite vorhanden ist, wann ein neues Dokument beginnt und splittet die PDF-Datei entsprechend in mehrere Dokumente auf.

Damit Paperless-ngx den Strichcode nutzen kann, muss man vorher aber erst die Umgebungsvariable PAPERLESS_CONSUMER_ENABLE_BARCODES auf true setzen (https://docs.paperless-ngx.com/configuration/#barcodes).

Weiterhin ist es nötig die Trennseite, welche man unter http://www.alliancegroup.co.uk/downloads/patch-code-t.pdf herunterladen kann, entsprechend der Hinweise in der PDF-Datei auszudrucken. Sonst funktioniert das Aufsplitten der PDF-Datei in mehrere Dokumente nicht. Die Ausdrucke kann man beliebig oft wiederverwenden, da der Code immer gleich ist.

Paperless-NGX ist ein bekanntes und beliebtes Open Source Dokumenten-Management-System (DMS). Auch ich möchte zukünftig meinen „Papierkram“ darin verwalten.

In diesem Artikel halte ich meine Gedanken fest, wie ich plane, paperless-ngx in meiner Umgebung aufzusetzen und zu betreiben.

Dies hilft mir, zu prüfen, ob ich auch an alles Wichtige gedacht habe. Falls euch das Konzept gefällt, dürft ihr es selbstverständlich gerne nachahmen. Und wenn ihr schwerwiegende Fehler darin entdeckt, freue ich mich über einen Hinweis.

Es ist kein Tutorial und keine Schritt-für-Schritt-Anleitung. Zwar mag dieser Text dazu dienen, sich eine eigene Umgebung aufzubauen, Mitdenken ist dabei jedoch zwingend erforderlich.

Ziele

  • Betrieb von Paperless-NGX als rootless-Podman-Container
  • Consumption-Ordner als Samba-Share freigegeben, um via Netzwerk Dateien hineinkopieren zu können
  • Getrennte Benutzerkonten für meine Frau und mich
  • Freigabe gewisser Dokumente für weitere Benutzer(gruppen)
  • Erfolgreicher Restore-Test

Infrastruktur

In meinem Heimnetzwerk betreibe ich einen Desktop-/Server-PC. Auf diesem läuft aktuell RHEL 9 als KVM/QEMU-Hypervisor. Er dient mir ebenfalls als Ansible Control Node. Hierauf betreibe ich eine RHEL-9-VM mit einer rootless-Podman-Installation. Diese VM wird auch meine Paperless-NGX-Instanz hosten.

In der VM wird das EPEL-Repository aktiviert, um daraus die Pakete podman-compose und python3-pexpect installieren zu können.

Falls ich mal nicht mehr weiß, wie dieses Setup aufgebaut wird, finden sich dazu Hinweise in folgenden Links:

Installation mit Ansible

Für die Installation der Anwendung wird die Container Route verwendet. Die Installation wird dabei unter Nutzung der Ansible-Rolle tronde.paperless_ngx_with_rootless_podman automatisiert.

Das Playbook deploy_paperless_ngx.yml, welches auf meiner Synology Diskstation abgelegt ist, führt die Installation und Konfiguration der Anwendung durch. Es installiert und konfiguriert zudem Samba und die Datei-Freigabe des Consumption-Verzeichnisses.

In dem Playbook werden folgende Rollen verwendet:

Die Rollen sind mit dem Playbook in meinem Ansible-Projekt-Verzeichnis auf meiner Synology Diskstation installiert.

Alle Playbooks und Rollen werden mit Git versioniert. Die Repositories werden auf entfernte Rechner synchronisiert.

Vorbereitung

Die Dateien docker-compose.postgres-tika.yml, docker-compose.env und .env werden aus dem Projekt-Repository in das Rollen-Verzeichnis files meiner Ansible-Rolle heruntergeladen. Die Datei docker-compose.postgres-tika.yml wird dabei zu docker-compose.yml umbenannt und bearbeitet.

Um Datenverlust vorzubeugen, wird die Ansible-Rolle mit den angepassten Dateien in die regelmäßige Datensicherung aufgenommen.

Folgende Variablen werden in meinem Ansible-Vault hinterlegt:

# Paperless-ngx with podman-compose
pnwrp_podman_user: alice
pnwrp_podman_group: alice
pnwrp_compose_dir: /home/{{ pnwrp_podman_user }}/paperless-ngx
pnwrp_paperless_superuser: alice
pnwrp_paperless_superuser_email: alice@example.com
pnwrp_paperless_superuser_password: ImWunderland
## Username and password for document scanner
brother_scanner_user: scanner
brother_scanner_pass: ImWunderland

Die Werte der Variablen werden selbstverständlich angepasst.

Das Playbook

Folgender Code-Block zeigt das fertige Playbook mit Beispielwerten:

---
- hosts: host.example.com
  remote_user: alice
  debugger: never
  vars_files:
    - files/alice.vault
  tasks:
    - name: Setup Paperless-NGX with podman-compose in rootless Podman
      include_role:
        name: ansible_role_paperless-ngx_with_rootless_podman

    - name: Enable Port 8000/tcp in host firewall
      ansible.posix.firewalld:
        port: 8000/tcp
        immediate: true
        permanent: true
        state: enabled
      become: true

    - name: >-
        Create and add {{ brother_scanner_user }} to
        {{ pnwrp_podman_group }}
      ansible.builtin.user:
        name: "{{ brother_scanner_user }}"
        comment: "Brother Dokumenten-Scanner"
        create_home: false
        groups: "{{ pnwrp_podman_group }}"
        append: true
        shell: /usr/sbin/nologin
        state: present
        system: true
      become: true

    - name: Include role vladgh.samba.server
      include_role:
        name: vladgh.samba.server
      vars:
        ansible_become: true
        samba_users:
          - name: "{{ pnwrp_podman_user }}"
            password: "{{ alice_password }}"
          - name: "{{ brother_scanner_user }}"
            password: "{{ brother_scanner_pass }}"
        samba_shares:
          - name: consumption
            comment: 'paperless consumption directory'
            path: "{{ pnwrp_compose_dir }}/consume"
            read_only: false
            guest_ok: false
            browseable: true
            owner: "{{ pnwrp_podman_user }}"
            group: "{{ pnwrp_podman_group }}"
            write_list: +{{ pnwrp_podman_group }}

    - name: Enable samba in host firewall
      ansible.posix.firewalld:
        service: samba
        immediate: true
        permanent: true
        state: enabled
      become: true

Das Playbook gewinnt sicher keinen Schönheitswettbewerb, doch arbeitet es bisher robust und tut, was es soll. In Tests habe ich meine Wunschumgebung damit mehrmals provisioniert.

Backup & Restore

Wie es sich gehört, wird erst ein Backup erstellt, dann die Anwendung inkl. aller Daten gelöscht und wiederhergestellt.

Backup

Für das Backup verwende ich ein Ansible-Playbook, welches sich zum Podman-Host verbindet und dort folgende Aufgaben ausführt:

  1. Stelle sicher, dass das Backup-Verzeichnis auf dem Remote-Host existiert
  2. Stoppe alle Paperless-NGX-Container
  3. Exportiere Podman-Volumes in TAR-Archive; hänge das aktuelle Datum an die Dateinamen an
  4. Archiviere und komprimiere paperless-ngx-Verzeichnis auf Remote-Host; hänge das aktuelle Datum an die Dateinamen an
  5. Starte alle Paperless-NGX-Container
  6. Komprimiere die Exporte der Podman-Volumes
  7. Synchronisiere das Backup-Verzeichnis auf dem Remote-Host mit einem Verzeichnis auf meiner Diskstation
  8. Synchronisiere das Diskstation-Verzeichnis mit einem verschlüsselten S3-Bucket

Es fehlt die Aufgabe, alte Backups aufzuräumen. Darum werde ich mich kümmern, wenn 70% des verfügbaren Speicherplatzes belegt sind.

Der folgende Code-Block zeigt ein Muster des verwendeten Playbooks:

---
- name: Backup podman volumes
  hosts: host.example.com
  gather_facts: true
  vars:
    paperless_ngx_dir: /home/alice/paperless-ngx
    docker_compose_file: docker-compose.yml
    remote_backup_dir: /home/alice/backups
    diskstation_backup_dir: /home/alice/diskstation/home/backups/host.example.com

  tasks:
    - name: Ensure backup directory exists
      ansible.builtin.file:
        path: "{{ remote_backup_dir }}"
        state: directory
        owner: alice
        group: alice
        mode: 0777

    - name: Stop paperless-ngx containers
      ansible.builtin.command: >
        podman-compose -f {{ paperless_ngx_dir }}/{{ docker_compose_file }} stop

    - name: List podman volumes
      ansible.builtin.command: podman volume ls --quiet
      register: __podman_volumes
      tags:
        - volumes

    - name: Output __podman_volumes
      ansible.builtin.debug:
        msg: "{{ item }}"
      loop: "{{ __podman_volumes['stdout_lines'] }}"
      tags:
        - volumes

    - name: Export podman volumes
      ansible.builtin.command: >
        podman volume export {{ item }} --output {{ remote_backup_dir }}/{{ item }}_{{ ansible_facts['date_time']['date'] }}.tar
      loop: "{{ __podman_volumes['stdout_lines'] }}"

    - name: Compact {{ paperless_ngx_dir }}
      community.general.archive:
        path: "{{ paperless_ngx_dir }}"
        dest: "{{ remote_backup_dir }}/paperless-ngx_{{ ansible_facts['date_time']['date'] }}.tar.gz"
        format: gz

    - name: Start paperless-ngx containers
      ansible.builtin.command: >
        podman-compose -f {{ paperless_ngx_dir }}/{{ docker_compose_file }} start

    - name: Compress volume exports
      community.general.archive:
        path: "{{ remote_backup_dir }}/{{ item }}_{{ ansible_facts['date_time']['date'] }}.tar"
        format: gz
        remove: true
      loop: "{{ __podman_volumes['stdout_lines'] }}"
      tags:
        - compress

    - name: Sync backups to diskstation
      ansible.posix.synchronize:
        archive: true
        compress: false
        delete: false
        dest: "{{ diskstation_backup_dir }}"
        mode: pull
        private_key: /home/alice/.ssh/ansible_id_rsa
        src: "{{ remote_backup_dir }}/"
      delegate_to: localhost
      tags:
        - rsync

    - name: Sync backups from diskstation to contabo S3
      ansible.builtin.command: rclone sync -P ../backups/ secure:backups
      delegate_to: localhost
      tags:
        - rsync

Das Playbook wird einmal wöchentlich ausgeführt. Ob ich für die geplante Ausführung cron oder systemd timer units verwende, habe ich noch nicht entschieden. Ich tendiere aus Neugier zu letzterem.

Um ein Offsite-Backup zu haben, werden die Dateien von der Diskstation einmal wöchentlich verschlüsselt und in einen S3-Speicher synchronisiert. Ich nutze dafür das Programm rclone und S3-kompatiblen Speicher von Contabo. Die folgenden Links bieten weiterführende Informationen dazu:

Restore

Der Ablaufplan für die Wiederherstellung der Anwendung mit ihren Daten sieht wie folgt aus:

  1. Eine rootless-Podman-Umgebung bereitstellen
  2. podman-compose bereitstellen
  3. TAR-Archive auf Zielsystem übertragen
  4. Paperless-NGX mit Playbook installieren
  5. Alle Container stoppen
  6. Inhalt der TAR-Archive in die Podman-Volumes importieren (siehe podman-volume-import(1)): gunzip -c hello.tar.gz | podman volume import myvol -
  7. Alle Container starten

Fazit

Bereitstellung, Sicherung und Wiederherstellung funktionieren wie beschrieben. Damit kann ich nun beginnen und die Anwendung konfigurieren und mit meinem Papierkram füttern.

Die Samba-Freigabe habe ich ebenfalls getestet. Sie funktioniert wie erwartet. PDF-Dateien mit dem Befehl find Documents -type f -iname "*.pdf" -exec cp {} /consume \; hineinzukopieren ist übrigens besonders dann eine gute Idee, wenn man sehen möchte, welche Dateien so in den Tiefen des eigenen Dateisystems schlummern.

29. Juli 2023

Thunderbird hat mit dem letzten Update eine längst überfällige Frischzellenkur erhalten. Allerdings wird das neue Design aus Rücksicht auf die bestehenden Nutzer bei Updates nicht aktiviert. Daher sieht Thunderbird zunächst noch ziemlich alt aus. Um in den Genuss der neuen Oberfläche zu kommen, müssen folgende Einstellungen geändert werden

Vor einigen Tagen wurde das Update endlich auch für Flatpak-Benutzer freigegeben. Die Verzögerung kam zustande, weil im Hintergrund noch die offizielle Übernahme des Flatpak durch die Thunderbird-Entwickler erfolgen musste. Ab sofort wird Thunderbird genau wie Firefox direkt von Upstream auf Flathub angeboten. Nach dem Update war ich erst einmal enttäuscht. Wo war das neue Design? Außer der neuen Titelleiste war nichts zu sehen. Denn standardmäßig bleibt Thunderbird bei Updates im alten Design. Wer das neue Design haben möchte, muss es manuell aktivieren. Das geht nicht über einen einzigen Button, sondern erfordert mindestens drei separate Einstellungen.

Zunächst ist – sofern nicht schon früher geschehen – die dreispaltige Ansicht zu aktivieren. Das geht über das Hamburger-Menü Ansicht -> Fensterlayout -> 3-Spalten Ansicht.

Im Anschluss wechselt man für die Nachrichtenliste von der Tabellenansicht auf die Kartenansicht. Das geht über das unscheinbare Symbol rechts der Schaltfläche “Schnellfilter”.

Zum Schluss ist noch die allgemeine Ansicht aufzulockern, indem im Menü die Dichte auf das mittlere Symbol “Standard” gestellt wird.

Danach erstrahlt Thunderbird im neuen und deutlich moderneren Outfit.

Die neue Ansicht gefällt mir sehr gut und ich bin gespannt, was bei den nächsten Updates noch an Kleinigkeiten geändert wird. Thunderbird 115 war ja nicht nur eine optische Überarbeitung, sondern auch in der Basis hat man nun wieder den Anschluss an Firefox. Ich gehe daher davon aus, dass hier nun Entwicklungskapazitäten frei werden, um Ecken und Kanten abzuschleifen.

Der Artikel Thunderbrid 115 “Supernova” – Neues Design aktivieren erschien zuerst auf Curius

28. Juli 2023

VeraCrypt ist ein Programm mit dem man verschlüsselte Container-Dateien und Partitionen erstellen kann. Der Vorteil gegenüber beispielsweise dm-crypt ist, dass VeraCrypt direkt für Windows, Linux, macOS und FreeBSD angeboten wird. Daher lassen sich verschlüsselte Dateien relativ einfach von unterschiedlichen Betriebssystemen nutzen.

Mit VeraCrypt konnte man nun jahrelang Container-Dateien bzw. Partitionen verwenden die noch mit TrueCrypt erstellt wurden, da VeraCrypt der Nachfolger von TrueCrypt ist. Diese Unterstützung wird mit Version 1.26 (aktuell Beta-Status) eingestellt.

Wer also noch Container-Dateien bzw. Partitionen hat, die mit TrueCrypt erstellt wurden, sollte zeitnah komplett auf Format von VeraCrypt wechseln. Unter https://blog.doenselmann.com/veracrypt-teil-3-truecrypt-volumes-migrieren/ hat jemand anderes eine entsprechende Anleitung veröffentlicht. Der Wechsel von Systempartitionen ist nicht möglich (https://www.veracrypt.fr/en/Converting%20TrueCrypt%20volumes%20and%20partitions.html).

VeraCrypt ist ein Programm mit dem man verschlüsselte Container-Dateien und Partitionen erstellen kann. Der Vorteil gegenüber beispielsweise dm-crypt ist, dass VeraCrypt direkt für Windows, Linux, macOS und FreeBSD angeboten wird. Daher lassen sich verschlüsselte Dateien relativ einfach von unterschiedlichen Betriebssystemen nutzen.

Mit VeraCrypt konnte man nun jahrelang Container-Dateien bzw. Partitionen verwenden die noch mit TrueCrypt erstellt wurden, da VeraCrypt der Nachfolger von TrueCrypt ist. Diese Unterstützung wird mit Version 1.26 (aktuell Beta-Status) eingestellt.

Wer also noch Container-Dateien bzw. Partitionen hat, die mit TrueCrypt erstellt wurden, sollte zeitnah komplett auf Format von VeraCrypt wechseln. Unter https://blog.doenselmann.com/veracrypt-teil-3-truecrypt-volumes-migrieren/ hat jemand anderes eine entsprechende Anleitung veröffentlicht. Der Wechsel von Systempartitionen ist nicht möglich (https://www.veracrypt.fr/en/Converting%20TrueCrypt%20volumes%20and%20partitions.html).

27. Juli 2023

Mozilla hat Firefox 115.0.3 veröffentlicht. Dieses Update ist ausschließlich für Nutzer veralteter Betriebssysteme relevant.

Download Mozilla Firefox 115.0.3

Mozilla hat Firefox 115.0.3 veröffentlicht. Diese Version ist nicht mit der am 18. Juli 2023 veröffentlichten Version Firefox ESR 115.0.3 zu verwechseln, welche einen durch die Antiviren-Software Qihoo 360 verursachten Absturz behoben hat, der ausschließlich Firefox ESR betroffen hatte.

Die heute veröffentlichte Version Firefox 115.0.3 hingegen ist ausschließlich für Nutzer der veralteten Betriebssysteme Windows 7, Windows 8, macOS 10.12, macOS 10.13 sowie macOS 10.14 relevant und steht in Zusammenhang mit der bevorstehenden automatischen Migration dieser Nutzer auf Firefox ESR.

Der Beitrag Firefox 115.0.3 für Nutzer veralteter Betriebssysteme veröffentlicht erschien zuerst auf soeren-hentzschel.at.

26. Juli 2023

Im Jahre 2014 hatte ich bereits einen Artikel veröffentlicht, in dem ich beschrieben habe, wie man mittels syslinux bzw. extlinux den Rechner neu startet und automatisch ein bestimmtes Betriebssystem bootet. Die letzte Version von syslinux wurde allerdings ebenfalls 2014 veröffentlicht. Zudem hat syslinux einige Nachteile. Und die offizielle Internetseite ist im Moment auch nicht erreichbar.

Da ich nun seit einigen Jahren systemd-boot als Bootloader nutze, ist besagter Artikel auch nicht mehr nützlich für mich. Aber systemd-boot bietet eine vergleichbare Möglichkeit, um direkt aus einer laufenden Linux-Distribution heraus neu zu starten und automatisch ein anderes Betriebssystem zu booten.

Ich gehe davon aus, dass systemd-boot bereits so konfiguriert ist, dass man manuell im Bootmenü das gewünschte Betriebssystem auswählen kann. Wer sich noch nicht damit beschäftigt hat, kann sich https://wiki.archlinux.org/title/systemd-boot durchlesen.

Als Erstes führt man bootctl list aus. Dieser Befehl sollte alle vorhandenen Einträge von systemd-boot anzeigen. Diese Einträge könnten beispielsweise wie folgt aussehen.

title: Arch Linux
id: arch.conf
source: /boot/efi/loader/entries/arch.conf
linux: /EFI/arch/grubx64.efi
options: root=UUID=12345678-1234-1234-1234-123456789123 ro loglevel=0 splash

title: Windows Boot Manager
id: auto-windows
source: /sys/firmware/efi/efivars/LoaderEntries-87654321-4321-4321-4321-987654321987

Wichtig ist die hierbei die Zeile die mit “id” beginnt, da man mit dieser id systemd-boot mitteilt welches Betriebssystem gebootet werden soll. Hat man beispielsweise Arch Linux gestartet und will nun direkt Windows booten, reicht hierfür der Befehl systemctl reboot ‐‐boot-loader-entry=auto-windows aus und schon wird der Rechner neu gestartet und Windows gebootet. In meinem Fall wird allerdings 4 Sekunden lang das Bootmenü von systemd-boot angezeigt bis das Betriebssystem tatsächlich gebootet wird. Das liegt daran, dass der Befehl die allgemeine Konfiguration von systemd-boot berücksichtigt in der ich eine Wartezeit von 4 Sekunden definiert habe, damit ich beim manuellen Booten den gewünschten Eintrag des Bootloaders auswählen kann. Um diese Wartezeit zu verkürzen, kann man den genannten Befehl noch um ‐‐boot-loader-menu=1 erweitern, sodass nur eine Sekunde gewartet wird. Ein kleinerer Wert ist scheinbar nicht möglich. Setzt man den Wert auf 0, wird so lange gewartet bis man den Eintrag manuell bestätigt.

Umgekehrt funktioniert es allerdings nicht. Wenn man Windows gebootet hat, gibt es meines Wissens nach keine Möglichkeit systemd-boot anzuweisen direkt ein anderes Betriebssystem zu booten. Somit ist das eine reine Linux-Lösung für Installationen mit systemd-boot.

Dem einen oder anderen wird bereits aufgefallen sein, dass sich beim Eintrag von Arch Linux auf die Konfigurationsdatei arch.conf bezogen wird aber im Falle von Windows die id nur “auto-windows” lautet. Das liegt daran, dass systemd-boot normalerweise vorhandene Windows-Installationen automatisch erkennt. Somit gibt es auch keine extra Konfigurationsdatei, die man anlegen muss. Das ist nur in besonderen Fällen nötig, wenn man von der Standardkonfiguration abweichen will.

Im Jahre 2014 hatte ich bereits einen Artikel veröffentlicht, in dem ich beschrieben habe, wie man mittels syslinux bzw. extlinux den Rechner neu startet und automatisch ein bestimmtes Betriebssystem bootet. Die letzte Version von syslinux wurde allerdings ebenfalls 2014 veröffentlicht. Zudem hat syslinux einige Nachteile. Und die offizielle Internetseite ist im Moment auch nicht erreichbar.

Da ich nun seit einigen Jahren systemd-boot als Bootloader nutze, ist besagter Artikel auch nicht mehr nützlich für mich. Aber systemd-boot bietet eine vergleichbare Möglichkeit, um direkt aus einer laufenden Linux-Distribution heraus neu zu starten und automatisch ein anderes Betriebssystem zu booten.

Ich gehe davon aus, dass systemd-boot bereits so konfiguriert ist, dass man manuell im Bootmenü das gewünschte Betriebssystem auswählen kann. Wer sich noch nicht damit beschäftigt hat, kann sich https://wiki.archlinux.org/title/systemd-boot durchlesen.

Als Erstes führt man bootctl list aus. Dieser Befehl sollte alle vorhandenen Einträge von systemd-boot anzeigen. Diese Einträge könnten beispielsweise wie folgt aussehen.

title: Arch Linux
id: arch.conf
source: /boot/efi/loader/entries/arch.conf
linux: /EFI/arch/grubx64.efi
options: root=UUID=12345678-1234-1234-1234-123456789123 ro loglevel=0 splash

title: Windows Boot Manager
id: auto-windows
source: /sys/firmware/efi/efivars/LoaderEntries-87654321-4321-4321-4321-987654321987

Wichtig ist die hierbei die Zeile die mit “id” beginnt, da man mit dieser id systemd-boot mitteilt welches Betriebssystem gebootet werden soll. Hat man beispielsweise Arch Linux gestartet und will nun direkt Windows booten, reicht hierfür der Befehl systemctl reboot ‐‐boot-loader-entry=auto-windows aus und schon wird der Rechner neu gestartet und Windows gebootet. In meinem Fall wird allerdings 4 Sekunden lang das Bootmenü von systemd-boot angezeigt bis das Betriebssystem tatsächlich gebootet wird. Das liegt daran, dass der Befehl die allgemeine Konfiguration von systemd-boot berücksichtigt in der ich eine Wartezeit von 4 Sekunden definiert habe, damit ich beim manuellen Booten den gewünschten Eintrag des Bootloaders auswählen kann. Um diese Wartezeit zu verkürzen, kann man den genannten Befehl noch um ‐‐boot-loader-menu=1 erweitern, sodass nur eine Sekunde gewartet wird. Ein kleinerer Wert ist scheinbar nicht möglich. Setzt man den Wert auf 0, wird so lange gewartet bis man den Eintrag manuell bestätigt.

Umgekehrt funktioniert es allerdings nicht. Wenn man Windows gebootet hat, gibt es meines Wissens nach keine Möglichkeit systemd-boot anzuweisen direkt ein anderes Betriebssystem zu booten. Somit ist das eine reine Linux-Lösung für Installationen mit systemd-boot.

Dem einen oder anderen wird bereits aufgefallen sein, dass sich beim Eintrag von Arch Linux auf die Konfigurationsdatei arch.conf bezogen wird aber im Falle von Windows die id nur “auto-windows” lautet. Das liegt daran, dass systemd-boot normalerweise vorhandene Windows-Installationen automatisch erkennt. Somit gibt es auch keine extra Konfigurationsdatei, die man anlegen muss. Das ist nur in besonderen Fällen nötig, wenn man von der Standardkonfiguration abweichen will.