Aus Linux-Magazin 11/2020

Werkzeuge im Kurztest

©

LTSV-Analyzer 0.0.2

LTSV-Dateien auswerten

Quelle: https://github.com/heat1024/ltsv-analyzer

Lizenz: Freeware

Alternativen: LTSV Parser, Log-Analyzer

Das LTSV-Format (Labeled Tab-separated Values) ist eine Variante von TSV und nutzt wie dieses den Tabulator, um Felder voneinander zu trennen. Alle Datensätze einer LTSV-Datei stehen in einer eigenen Zeile, und jedes Feld hat eine Bezeichnung und einen Wert, die jeweils ein Doppelpunkt voneinander trennt. Inhalte von LTSV-Dateien lassen sich gut weiterverarbeiten und auch in Texteditoren betrachten. Zum Auswerten von LTSV-Dateien empfiehlt sich das in Go geschriebene Tool LTSV-Analyzer. Im Github-Repository stehen fertige Pakete für Linux und MacOS sowie die Quellen bereit.

Der Anwender steuert das Tool beim Aufruf über diverse Kommandozeilenparameter. So gibt er etwa hinter »-B« die Spalte an, die als primärer Schlüssel dienen soll. Ohne weitere Angaben zählt LTSV-Analyzer, wie oft der Schlüssel in der auszuwertenden Datei enthalten ist. Über den Schalter »-O« führt der Benutzer weitere Operationen aus. Zur Auswahl stehen Aufzählung (»cnt«), Summe (»sum«) und Durchschnittswert (»avg«) oder auch alle drei Operationen (»all«).

Um eine bestimmte Spalte für eine Operation auszuwählen, gibt der Anwender sie hinter »-T« an. Außerdem lässt sich die Ausgabe mit »-S« sortieren. Auch dieser Parameter erwartet eine der drei Optionen »sum«, »avg« oder »cnt«. »-R« kehrt die Reihenfolge um.

  LTSV-Analyzer überzeugt trotz des recht überschaubaren Funktionsumfangs. Die aktuelle Version ist das zweite stabile Release des noch jungen Projekts, an dem die Entwickler intensiv arbeiten.

Hl 0.7.4

Logs im JSON-Format lesbar machen

Quelle: https://github.com/pamburus/hl

Lizenz: MIT

Alternativen: Humanlog, Format-JSON-Log

JSON (Javascript Object Notation) ist ein schlankes Format zum Datenaustausch, das sich gut zum automatisierten Weiterverarbeiten eignet. Viele Dienste protokollieren ihren Status oder auftretende Fehler optional oder sogar ausschließlich in diesem Format. Für Anwender sind JSON-Dateien allerdings nicht besonders gut lesbar. Das Rust-Tool Hl hilft weiter und übersetzt die Ausgaben. Fertige Pakete für Linux, MacOS und Windows stehen auf Github bereit.

Der Schalter »-h« blendet eine Online-Hilfe ein, die alle verfügbaren Parameter beschreibt. Um einen schnellen Blick in eine JSON-Datei zu werfen, gibt der Benutzer diese beim Aufruf an; Hl kommt auch mit gezippten Logs zurecht. In der Voreinstellung hebt das Tool bekannte Strukturen farblich hervor und gibt die Datei seitenweise aus. Wer die bunte Ausgabe deaktivieren möchte, definiert »–color=never«; wer eine fortlaufende Ausgabe wünscht, setzt »–paging=never« ein.

Hl unterstützt das Filtern nach Suchbegriffen (»–filter«) und kann dank »–level« auch verschiedene Log-Level unterscheiden. Den Zeitstempel formatiert der Parameter »–time-format«. Das Tool speichert die Daten zur Verarbeitung im einem 2 MByte großen Puffer zwischen. Wer diesen vergrößern oder verkleinern möchte, definiert das über »–buffer-size«. Hl unterstützt mehrere Threads, und der Anwender gibt deren gewünschte Anzahl über »-C« beim Aufruf an.

  Hl ist ein praktischer Helfer für das Auswerten von JSON-Dateien. Die Filter und die farbliche Gestaltung überzeugen. Einen Punktabzug gibt es lediglich wegen der recht dürftigen Dokumentation.

Httpref 1.5.1

HTTP-Referenz für die Shell

Quelle: https://github.com/dnnrly/httpref

Lizenz: Apache License 2.0

Alternativen: keine

Die meisten wissen, was die HTTP-Status-Codes 200, 404 oder 502 bedeuten, und Webentwickler kennen meist noch deutlich mehr Antworten eines HTTP-Servers. Wer keine komplexe IDE zum Entwickeln nutzt oder ein schlechtes Gedächtnis hat, schlägt bei Wikipedia nach. Schneller geht es auf der Shell dank Httpref, denn das in Go implementierte Tool liefert die Informationen direkt auf die Konsole und erspart den Griff zum Browser. Im Github-Repository stehen Pakete für Linux und MacOS zur Verfügung, und das Kommando »help« blendet eine Übersicht aller Optionen ein.

Httpref kennt die Befehle »headers«, »methods«. »ports« und »status«. »headers« liefert eine Übersicht mit relevanten Links der Mozilla-Entwicklerseiten zurück. Kombiniert der Nutzer das Kommando mit einem Filterbegriff, erscheint eine kurze Zusammenfassung zum Thema sowie ein Link zu weiterführenden Informationen. Ähnlich verhält sich der Befehl »ports«, der mit einer Nummer aufgerufen eine kurze Beschreibung des Ports und der dazugehörigen Dienste liefert.

Wer mehr zu HTTP-Status-Codes wissen möchte, der übergibt beim Start einfach eine Ziffer. Das Tool listet dann alle Codes auf, die mit dieser Nummer beginnen. Wer einen vollständigen Status-Code angibt, erhält eine ausführliche Erklärung. Damit die Programmausgabe in die Konsole passt, legt der Anwender die Ausgabebreite über »-w« fest; in der Voreinstellung geht Hl von 100 Zeichen aus.

  Das schlanke und informative Httpref eignet sich auch zum Einsatz auf entfernten Systemen. Eine Integration eines Konsolen-Browsers wäre ein echter Gewinn, um den Links in den Ausgaben folgen zu können.

Bashtop 0.9.25

Prozessmonitor für die Shell

Quelle: https://github.com/aristocratos/bashtop

Lizenz: Apache License 2.0

Alternativen: Top, Htop

Als Alternative zu den bewährten Tools Top und Htop empfiehlt sich Bashtop. Das Shell-Skript setzt im Hintergrund auf Werkzeuge wie Coreutils, Sed, Awk, Grep und Procps und greift optional auf Iostat, Curl und die LM-Sensoren zurück, sofern vorhanden. Auf Linux-Systemen bezieht Bashtop seine Informationen aus dem Verzeichnis »/proc«, unter MacOS und FreeBSD über das Python-Modul »psutil«. Beim Start prüft Bashtop, ob die benötigten Helfer verfügbar sind.

Das Tool präsentiert eine übersichtliche Oberfläche, die sich in die Bereiche CPU, Memory, Disks, Net und Processes untergliedert. Bashtop aktualisiert die angezeigten Werte alle 2500 ms. Um das Intervall im laufenden Betrieb anzupassen, genügt ein Druck auf [M]: Dann öffnet sich ein einfaches Ausklappmenü, das Zugriff auf die Konfiguration und eine einfache Hilfe bietet. Das Look & Feel passt der Nutzer auf Wunsch mit Themes an.

Bei der Anzeige von Speicher- und Festplattenauslastung hat der Anwender keine Interaktionsmöglichkeit. In der Prozessübersicht kann er dagegen mit den Pfeiltasten navigieren. Ein Druck auf die Eingabetaste zeigt weitere Informationen zu einem Prozess an, eine Baumansicht aller Prozesse liefert [E]+. Bashtop schickt auch Signale an Prozesse, wie »SIGTERM« ([T]+), »SIGKILL« ([K]+) und »SIGINT« ([I]+). Verfügt der Rechner über mehrere Netzwerkschnittstellen, wechseln [B]+ und [N] zwischen den Interfaces.

  Dank weniger Abhängigkeiten und des geringen Ressourcenbedarfs macht Bashtop auch auf entfernten Systemen eine gute Figur.

Pincers 0.2.0

Mehr Sicherheit für Skripte aus dem Netz

Quelle: https://github.com/lutostag/pincers

Lizenz: MIT

Alternativen: Curl, Wget

Um Anwendern die Installation von Software zu erleichtern, liefern viele Projekte kleine Skripte mit, die den Download und die Einrichtung übernehmen. Oft lautet die Empfehlung, die Skripte mit Curl oder Wget herunterzuladen und direkt zur Ausführung in die Shell umzuleiten. Weil das potenziell unsicher ist, bietet Pincers eine automatische Prüfung der Hash-Werte an und bricht den Vorgang ab, falls diese nicht übereinstimmen. Das Rust-Tool nutzt standardmäßig SHA3, unterstützt aber auch MD5, SHA1 und SHA2. Da sich der Release-Kandidat der aktuellen Version wegen nicht auflösbarer Abhängigkeiten nicht kompilieren ließ, sahen sich die Tester das letzte stabile Release an.

Pincers steht für Linux und Windows zur Verfügung; die Projektseite enthält außerdem ein paar Beispiele und eine rudimentäre Online-Hilfe (»-h«). Benutzer steuern Pincers über die drei Kommandos »hash«, »run« und »verify«, die sie beim Aufruf angeben. »hash« erzeugt den Hash-Wert einer angegebenen Datei, daher schreiben Anwender hinter den Befehl die vollständige URL zum Installationsskript sowie den zu verwendenden Algorithmus.

Um eine Datei nach dem Download auszuführen, gibt der Nutzer »run« an. Auch hier folgen die URL und der gewünschte Hashing-Algorithmus sowie der erwartete Hash-Wert. Nur wenn alles passt, führt Pincers das Skript aus. Einen einfachen Testlauf startet »verify«, mit denselben Optionen wie bei »run«.

  Das recht junge Projekt Pincers wartet mit wenigen Features auf, die aber alle ihren Dienst verrichten. Wer beim automatischen Ausführen von Skripten beim Download auf Nummer sicher gehen möchte, sollte das Tool ausprobieren.

Tunneller 1.1.0

SSH-Tunnel verwalten

Quelle: https://github.com/Silwing/tunneller

Lizenz: MIT

Alternativen: SSH, SSH-Tunnel-Manager

SSH-Tunnel sind gesicherte Kanäle, die andere Netzwerkprotokolle einbetten und verschlüsselt übertragen. Zum Einrichten und Verwalten mehrerer SSH-Tunnel steht das Shell-Skript Tunneller bereit. Das auf Github angebotene Archiv enthält neben dem ausführbaren Skript eine Bibliothek sowie eine Installationsroutine, die die Dateien nach »/usr/local/« kopiert. Die vom Anwender eingerichteten Weiterleitungen liegen im Verzeichnis »~/.tunneller/servers/«. Jede Datei enthält in der ersten Zeile den Benutzernamen sowie die Adresse des entfernten Rechners. Die weiteren Zeilen beschreiben jeweils eine Weiterleitung. Alle aktiven Tunnel verwaltet »~/.tunneller/running«; hier stehen unter anderem die Prozess-IDs aller laufenden Verbindungen.

Eine neue Verbindung zu einem Server konfiguriert der Aufruf des Skripts mit den Schaltern »–define«, »–user«, »–host« und einem eindeutigen Namen. Anschließend fügen Benutzer über »–add-tunnel« neue Port-Weiterleitungen hinzu. Je nach Server sind weitere Angaben wie »–local-host« oder »–remote-port« nötig. Die Online-Hilfe zeigt ein Beispiel. Eine Liste aller eingerichteten Verbindungen liefert »–ld«, die aktiven Weiterleitungen »–lr«. Alle für einen Server konfigurierten Tunnel zeigt »–show-tunnels« an.

Um alle Weiterleitungen für einen Server zu aktivieren, ruft der Anwender »tunneller –open« auf, gefolgt vom Server-Namen. Der Schalter »–close« schließt die offenen Verbindungen wieder. Nicht mehr benötigte Tunnel entfernt der Benutzer mit »–remove-tunnel«, überflüssige Server-Definitionen mit »–undefine«.

  Trotz des etwas knappen Handbuchs hat Tunneller Potenzial und erweist sich als Arbeitserleichterung für alle, die häufig mit SSH-Tunneln arbeiten. (Uwe Vollbracht/hej)

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 2 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
LINUX-MAGAZIN KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Readly Logo
E-Mail Benachrichtigung
Benachrichtige mich zu:
0 Kommentare
Älteste
Neuste Beste Bewertung
Nach oben