Defekte Links finden mit Htmltest 0.13.0, SSH-Verbindungen verwalten mit Nccm, Cloud-Daten abgleichen mit Rclone 1.53.1, Standardausgabe als Menü aufbereiten mit Smenu 0.9.16.
Spürhund
Mit Htmltest 0.13.0 spürten Sie defekte Links auf Webseiten auf.
Ob Unternehmensauftritt oder Familien-Webseite: Nach einiger Zeit sammeln sich tote Links an, etwa weil Bilder ausgetauscht oder eingebundene Inhalte nicht mehr existieren. Wer nicht laufend jede URL einzeln prüfen möchte, braucht ein Tool wie Htmltest. Dessen Entwickler sehen das in Go geschriebene Tool als schnelle Alternative zum bekannten HTML-Proofer. Zwar fehlt die Software noch in den Repositories der gängigen Distributionen, doch sie finden Binärpakete für alle wichtigen Plattformen im Github-Repository des Projekts.
Für einen Test übergeben Sie Htmltest den Pfad zum HTML-Dokumentenverzeichnis als Parameter. Eine Konfigurationsdatei braucht es nicht zwingend, da es alle wichtigen Checks standardmäßig vornimmt. Htmltest prüft alle internen Links zu Bildern, Seiten oder Skripten auf ihre Gültigkeit. Es achtet darauf, ob die alternativen Angaben zu Bildern gesetzt sind und ob Seiten ein Favicon enthalten. Bei den Metadaten der jeweiligen HTML-Dateien prüft es den Dokumententyp und das Refresh-Tag. Die Syntax in den Dokumenten bleibt jedoch außen vor. Das Ergebnis gibt Htmltest in der Konsole aus.
Eine Konfigurationsdatei bietet die Möglichkeit, eine Log-Datei für die Ausgabe festzulegen. Die Konfiguration verwendet das YAML-Format. Ein Beispiel dafür findet sich in einfacher Form auf der Github-Seite, inklusive einer Beschreibung aller Parameter. Über die Konfiguration nehmen Sie bei Bedarf Webobjekte von der Prüfung aus oder deaktivieren den Test von SSL-Zertifikaten.
Verbindungsjongleur
Mit Nccm verwalten Sie SSH-Verbindungen komfortabel.
Spätestens seit dem IoT-Hype laufen in vielen Haushalten Geräte, die sich via Secure Shell administrieren lassen. Der in Python geschriebene Ncurses SSH Connection Manager, kurz Nccm, verwaltet alle Verbindungen samt wichtiger Parameter in seiner Konfiguration. In einer einfachen Ncurses-Oberfläche navigieren Sie mit den Pfeiltasten durch die Verbindungen; alternativ grenzen Sie über ein Filterfeld die Verbindungsliste ein. Mit [Eingabe] bauen Sie die aktuell gewählte Verbindung auf, wozu das Tool im Hintergrund OpenSSH aufruft. Steht die Verbindung, beendet sich Nccm im Hintergrund, sodass Sie nach Abschluss der Verbindung in einer Konsole landen.
Aufrufparameter gibt es nicht. Die Konfiguration erfolgt über eine YAML-Datei im Home-Verzeichnis, das Quellarchiv enthält ein Beispiel. In der Konfiguration legen Sie jede Verbindung unter einem eindeutigen Namen ab. Neben Benutzernamen und Server-Adresse dürfen Sie auch eine Beschreibung angeben sowie für jeden Server eine individuelle KeepAliveTime setzen. Aus Sicherheitsgründen lässt sich kein Passwort hinterlegen, die Angabe eines individuellen SSH-Schlüssels ist aber ebenfalls nicht möglich. An globalen Parametern dürfen Sie nur das Loglevel, den Standard-Timeout und den Control-Mode setzen. Nccm unterstützt die Kontrollmodi std und focus. Letzterer funktionierte auf dem Testsystem jedoch nicht wie beschrieben. An Abhängigkeiten setzt das Programm neben Python 3 nur das Python-YAML-Modul voraus.
Datenschaufel
Über Rclone 1.53.1 gleichen Sie Daten mit einem Cloud-Speicher ab.
Zum Übertragen und Abgleichen von Daten mit einem Cloud-Dienst ist das Go-basierte Rclone das Tool der Wahl: Es unterstützt über 45 Anbieter, von populären Größen wie Amazon S3, Backblaze B2, Dropbox, Google Drive oder Microsoft Azure bis zu Private-Cloud-Lösungen wie Nextcloud, Seafile oder Minio. Dabei unterstützt es Standardprotokolle wie HTTP, SFTP oder WebDAV. In den Repos der gängigen Distributionen finden sich nur ältere Rclone-Versionen. Bei Problemen oder Fehlern beim Cloud-Datenabgleich greifen Sie besser zum aktuellen Binärpaket aus dem Github-Repository.
Vor dem ersten Einsatz müssen Sie mindestens ein Ziel definieren. Mit dem Unterbefehl config aufgerufen, führt Rclone Sie durch die Konfiguration. Danach übertragen Sie die Daten mit dem Unterbefehl copy, mit sync halten Sie sie später aktuell. Eine Übersicht aller Dateien im Cloud-Speicher liefert ls, mit delete und rmdir löschen Sie dort Objekte. Über ncdu steht sogar ein rudimentärer Dateimanager bereit. Mit check prüfen Sie, ob Quelle und Ziel dieselben Daten enthalten; per dedupe entfernen Sie Duplikate.
Sofern der jeweilige Anbieter das unterstützt, verschlüsselt Rclone die Daten auf Wunsch vor dem Ablegen im Cloud-Speicher. Eine Anleitung zum Einrichten der Verschlüsselung entnehmen Sie der umfangreichen, allerdings nur englischsprachigen Dokumentation auf der Projektseite. Hier finden Sie außerdem detaillierte Anleitungen zu allen weiteren Einstellungen.
Serviervorschlag
Aus der Standardausgabe zaubert Smenu 0.9.16 ein mehrspaltiges Auswahlmenü.
Smenu liest die Standardausgabe eines Skripts oder Programms ein und erzeugt daraus ein übersichtliches Auswahlmenü. Im Hintergrund nutzt es dazu die Bibliothek Terminfo. Die Ausgabe erfolgt wieder in der Konsole, sodass sich Smenu auch via SSH nutzen lässt. Es generiert standardmäßig mehrspaltige Menüs, in denen Sie mit den Pfeiltasten navigieren. Mit -t begrenzen Sie die Anzahl der Spalten, mit -n die der Zeilen. Gegebenenfalls erzeugt Smenu dann einen Scroll-Balken am Fensterrand.
Über Filter limitieren Sie bei Bedarf die Anzahl der Menüpunkte. So legen Sie über -i fest, welche Daten die Ausgabe enthält, mit -e schließen Sie Daten explizit aus. Beide Parameter unterstützen reguläre Ausdrücke. Standardmäßig interpretiert Smenu Leerzeichen, Tabulatoren und Zeilenumbrüche als trennende Elemente. Ein Satz mit fünf Worten erzeugt also fünf einzelne Menüeinträge. Um das zu vermeiden, geben Sie den Trenner mit -W explizit vor. Enthalten die Eingabedaten nicht darstellbare Zeichen, ersetzen Sie diese über -b durch Leerzeichen.
Weitere Parameter ermöglichen das Zentrieren der Ausgabe, deaktivieren das Anpassen der Leerzeichen um die einzelnen Worte und erlauben das Sortieren der Eingabedaten vor dem Verarbeiten. Eine Übersicht aller Parameter liefern die Online-Hilfe (-h) und die Manpage. Beide bringt aber nur das Quellarchiv mit, nicht jedoch das Binärpaket von der Github-Seite. (jlu)








