Anonymisieren von IP-Adressen in einer Apache Log Datei mithilfe von sed

Ziel: Man möchte die IP-Adressen in einer Apache Logdatei anonymisieren, indem man das letzte Byte oder die zwei letzten Byte der IP-Adresse durch 0 ersetzt. Lösungsmöglichkeit: Zeilenweises Durchsuchen der Logdatei mit dem Unix Werkzeug sed. Suchen der IP-Adressen und Ersetzen der Fundstellen mit der anonymiserten IP-Adresse. Z. B. soll die IP-Adresse 123.123.123.123 durch die Adresse 123.123.0.0 …

E-Mail versenden per Bash Shell Script

Ich war gerade mal wieder auf der Suche nach dem Syntax, um per Linux Bash Shell eine Mail zu versenden: Direkte Eingabe des Mailtextes: echo "MAILTEXT" | mail -s "BETREFF" EMPFÄNGERADRESSE z.B. echo "Das ist der Text der Testemail" | mail -s "Das ist der Betreff der Testemail" user@example.com Mailtext aus einer Datei: mail -s …

RSYNC Fehlermeldung: protocol version mismatch — is your shell clean? (rsync error: protocol incompatibility (code 2) at compat.c(171) [receiver=3.0.4])

Als ich ein Script testen wollte, das ein Verzeichnis mit rsync und ssh von Server1 auf Server2 spiegeln sollte, verweigerte rsync seinen Dienst mit folgender Fehlermeldung: protocol version mismatch — is your shell clean? rsync error: protocol incompatibility (code 2) at compat.c(171) [receiver=3.0.4] Eine Webrecherche brachte die Lösung des Problems. Eigentlich hätte man mit der …

Unter Linux eine Liste der größten Dateien ausgeben

Folgende Problemstellung: Es soll unter Linux eine nach Dateigröße sortierte Liste von Dateien ermittelt werden, die eine bestimmte Größe überschreiten. find /srv -type f -size +50000k Mit dem Find-Befehl wird eine Liste aller Dateien im Verzeichnis /srv und den darin enthaltenen Unterverzeichnissen ermittelt, die größer als 50000 Kb sind. Das Ergebnis ist noch nicht ganz …

Minimal CPU Benchmark für Linux

Nachdem ich heute zwei unterschiedliche virtuelle Server von Strato geordert hatte, suchte ich nach einer Möglichkeit, mit wenig Aufwand die CPU-Leistung der virtuellen Server zu vergleichen. Im Forum www.linux-club.de fand ich einen Einzeiler, mit dem die Zeit ermittelt wird, die Zahl Pi auf 1000 Stellen zu berechnen. time echo “scale=1000; 4*a(1)” | bc -l Hier …

Variablen bei sed-Ausdrücken

Problem: Beim Suchen und Ersetzen eines Strings in einer Textdatei mit dem Linux-Programm sed (Stream Editor) trat das Problem auf, dass bei der Verwendung von Shellvariablen als Suchmuster der gewünschte Text, also der Wert der Variablen, nicht durch den Zieltext ersetzt wurde. Ein Test ohne Variablen funktionierte aber ohne Probleme. sed ‘s/suchmuster/zieltext/g’ Eingabedatei > Ausgabedatei …

Bash: Löschen von Zeilen aus einer Datei, die ein bestimmtes Suchmuster enthalten

Das Löschen von bestimmten Zeilen aus einer Datei kann mithilfe einer temporären Datei und dem Kommandozeilentool grep geschehen. Grep gibt alle Zeilen einer Textdatei aus, die einem bestimmten Suchmuster entsprechen. Die Option -v von grep negiert die Ausgabe von grep. Es werden dann nur Zeilen einer Datei ausgegeben, die ein bestimmtes Suchmuster nicht enthalten. Die …

Packen und Entpacken mit tar

Weil ich als Windowsadmin immer wieder den Syntax von tar nachschlagen muss: Packen tar cfvz archiv.tar.gz verzeichnis/ Sichert das Verzeichnis “verzeichnis” in die Datei archiv.tar.gz – dabei wird die GZip Komprimierung verwendet. Das Verzeichnis ‘verzeichnis’ wird mit relativem Pfad im Archiv gespeichert. Symbolischen Links wird nicht gefolgt, sondern der Link wird gesichert. Owner und Group …

Windowsfreigaben unter Linux mounten

Ich habe heute ein wenig herumsuchen müssen, um eine Windowsfreigabe unter Linux zu mounten. Bisher hatte ich immer den umgekehrten Fall – ein Linuxverzeichnis sollte mittels Samba unter Windows eingebunden werden. Um eine Windowsfreigabe unter Linux zu mounten, habe im Netz viele Treffer mit dem Befehl smbmount gefunden. Dieser funktionierte in meiner OpenSuse 10.3 Installation …