Der unbekannte Befehl – „touch“ der Berührer

Symbolisiertes Terminal

Der Befehl touch wird sicher dem einen oder anderen schon einmal unter gekommen sein. Auch dieser Befehl wird oft missbraucht um z.B. in Shellscripten eine leere Datei anzulegen.

$ touch lorem.txt
$ ls -l lorem.txt 
-rw-r--r-- 1 max max 83 Jun 5 20:35 lorem.txt

legt eine leere Datei lorem.txt an.

Weiterlesen

Der unbekannte Befehl – „tac“ und „rev“ die Umkehrer

Symbolisiertes Terminal

Den Befehl cat (catenate) lernen die meisten schnell kennen. Obwohl es zu den am meisten missbrauchten Befehle gehört (to caternate: verketten), cat ist eigentlich dazu da zwei Dateien aneinander zu hängen, wird er allgemein dazu benutzt um Dateiinhalte anzuzeigen oder per Pipe an ein anderes Programm zu übergeben. Dabei entstehen auch recht unschöne Konstrukte.

Weiterlesen

Der unbekannte Befehl – „watch“ der Wiederholer

Symbolisiertes Terminal

Der Befehl watch ist der erste Teil der Serie „Der unbekannte Befehl“. watch macht eigentlich etwas völlig einfaches was man auch per Shellscript recht einfach ersetzen könnte. Ohne Optionen wäre folgendes Script eine Simulation des Befehls:

#!/bin/bash
# Eine Simulation von watch
# Aufruf "watch-sim <Befehl> <Zeit in Sekunden>"
while true
do
        $1 
        sleep $2
        clear
done

Weiterlesen

Der unbekannte Befehl – die Idee dahinter

Symbolisiertes Terminal

Unter dieser Rubrik habe ich vor in nächster Zeit wenig bekannte Befehle zu erklären. Jeder Anfänger auf der Shell wird Befehle wie cd, ls, mkdir oder rm usw. schnell lernen. Für viele gibt es ein Equivalent zu MS-DOS und die Befehle sind ähnlich oft nur mit einem anderen Namen wie z.B. ls in der Shell entspricht grob dir in der DOS/Windows-Welt in seiner Funktionsweise. Sehr bekannt sind normalerweise Befehle die mit Dateioperationen zu tun haben. Weniger bekannte aber immer noch in guten Maße sind Befehle wie ping, ps, less, cat usw. Hierzu gibt es oft kein direktes Equivalent in der DOS/Windows-Welt aber jeder ambitionierte Anfänger wird irgendwann diese Befehle benutzen. Irgendwann wird die Lernkurve allerdings immer flacher da man scheinbar so das gängigste Repertoire an Befehlen zumindest vom Namen her kennt. Ich habe keine Idee wie viele Shellbefehle sich in den Suchpfaden von Benutzern und von root befinden die sinnvoll eingesetzt werden können.

Weiterlesen

Fehlendes ifconfig zu Buster ergänzen

Stilisierte Erde mit verschiedenen Verbindungen

Der Befehl ifconfig wurde in Debian Buster aus dem Standardbefehlssatz entfernt. Leider habe ich mich so sehr dran gewöhnt, dass ich diesen Befehl zum Auslesen und verändern der Netzwerkkonfiguration wirklich vermisst habe.

# ifconfig 
-bash: /sbin/ifconfig: Datei oder Verzeichnis nicht gefunden

Weiterlesen

Prüfsummen SHA1, SHA256, MD5 überprüfen

Die Grafik aus dem Film „The Matrix“

Prüfsummen oder auch Checksummen als Hash codiert dienen oft um die Authentizität einer Datei, die man aus dem Internet herunterladen kann, zu gewährleisten. Die Gebräuchlichsten sind hier md5, SHA1 und SHA256. Die Abkürzungen stehen für kryptographische Verfahren. Allen ist gemeinsam, dass eine kleine Abweichung in einer Datei zu großen Unterschieden in den Hashwerten führt. Das folgende Beispiel zeigt das Verhalten exemplarisch:

$ echo "123456789" > testfile
$ md5sum testfile && sha1sum testfile && sha256sum testfile 
b2cfa4183267af678ea06c7407d4d6d8 testfile
179c94cf45c6e383baf52621687305204cef16f9 testfile
6d78392a5886177fe5b86e585a0b695a2bcd01a05504b3c4e38bc8eeb21e8326 testfile
$ echo "023456789" > testfile
$ md5sum testfile && sha1sum testfile && sha256sum testfile 
c159e1a7fa9951401680d5e6aead65e8 testfile
d61c99de943fb8a1c707d54612961304a001a0b8 testfile
0accf17861b34d7b06477da622ff4506458593496cedf107e5403e65b10b58bd testfile

Weiterlesen

Webpage zur Anzeige der von fail2ban geblockten IP-Adressen

Irgendwie interessiert mich immer mal woher die IPs kommen die durch automatisierte Angriffscripts von fail2ban aussortiert werden. Was liegt hier nahe – ein Shellscript zu schreiben und dann mit crond regelmäßig zu erneuern. Geblockte IP-Adressen können mit:

fail2ban-client status | grep "Jail list:" | sed "s/ //g" | awk '{split($2,a,",");for(i in a) system("fail2ban-client status " a[i])}'

ausgelesen werden. Ist ein wenig unhandlich diese unformatierte Ausgabe.

Weiterlesen

copy und paste für vim

Logo von vim

Als Nutzer von vi war mir das neue Verhalten von vim Texte nicht mehr per C&P einfügen zu können lästig. Die Lösung war letztlich in der Datei:

/usr/share/vim/vim81/defaults.vim

zu finden. Wenn man hier den Wert von:

if has(‚mouse‘)
set mouse=a
endif

in

if has(‚mouse‘)
set mouse=r
endif

ändern funktioniert C&P im vim in üblicher Weise.

kais-universum.de