GNU/Linux >> LINUX-Kenntnisse >  >> Linux

tcpdump – Rotieren Sie Capture-Dateien mit -G, -W und -C

Das liegt daran, dass Sie -W 3 geschrieben haben statt -W 48 . Ihr Befehl enthält jedoch andere Fehler.

Die Option -G bedeutet:

-G rotate_seconds

      Falls angegeben, rotiert die mit -w angegebene Dump-Datei Option alle rotate_seconds Sekunden. Sicherungsdateien haben den durch -w angegebenen Namen die ein Zeitformat wie von strftime(3) definiert enthalten sollte. Wenn kein Zeitformat angegeben ist, überschreibt jede neue Datei die vorherige.

      Bei Verwendung in Verbindung mit -C Option haben Dateinamen die Form 'Datei '.

Da Sie -G 3 geschrieben haben , Sie werden dies alle 3 Sekunden drehen, während Sie angegeben haben

...die Daten im Wert von 30 Minuten erfasst

Außerdem ist das Namensschema falsch:von oben,

Bei Verwendung in Verbindung mit -C Option haben Dateinamen die Form 'Datei '.

Daher macht es keinen Sinn, das Zeitformat für den Namen anzugeben.

Außerdem die -C Die Option hat kein Argument, während sie laut der Manpage Folgendes tun sollte:

tcpdump [ -AdDefIKlLnNOpqRStuUvxX ] [ -B buffer_size ] [ -c zählen ]
[ -C Dateigröße ] [ -G rotate_seconds ] [ -F Datei ][ -I Schnittstelle ] [ -m Modul ] [ -M geheim ][ -r Datei ] [ -s Snaple ] [ -T tippen ] [ -w Datei ][ -W Dateianzahl ][ -E [email protected] algo:secret,... ][ -y Datenlinktyp ] [ -z postrotate-Befehl ] [ -Z Benutzer ] [ Ausdruck ]

In der Manpage heißt es:

-C

      Bevor Sie ein Raw-Paket in eine Sicherungsdatei schreiben, überprüfen Sie, ob die Datei derzeit größer als file_size ist und wenn ja, schließen Sie die aktuelle Sicherungsdatei und öffnen Sie eine neue. Speicherdateien nach der ersten Speicherdatei haben den mit -w angegebenen Namen Flagge, mit einer Zahl dahinter, beginnend bei 1 und weiter nach oben. Die Einheiten von file_size sind Millionen Bytes (1.000.000 Bytes, nicht 1.048.576 Bytes).

Sie sollten also -C 100 angeben um 100 MB Dateien zu erzeugen.

Am Ende sollte Ihr Befehl lauten:

tcpdump -i en0 -w /var/tmp/trace -W 48 -G 1800 -C 100 -K -n

Dadurch werden Dateien (mit den Namen trace1, trace2, ...) zyklisch rotiert, mit Periode 48, entweder alle 1800 Sekunden (=30 Minuten) oder alle 100 MB, je nachdem, was zuerst eintritt.


Erweiterung der Antwort von Flabdablet (Änderung von -G 1800 bis -G 300 –Rotation alle fünf Minuten –nur zu Testzwecken),

tcpdump -i en0 -w /var/tmp/trace-%m-%d-%H-%M-%S-%s -W 3 -G 300

gibt Ihnen %m=month , %d=day of month , %H=hour of day , %M=minute of day , %S=second of day , %s=millisecond of day , was zu

führt
/var/temp/trace-03-02-08-30-56-1520002568
/var/temp/trace-03-02-08-35-56-1520002568
/var/temp/trace-03-02-08-40-56-1520002568

Sehr nützlich zum Organisieren von Ablaufverfolgungen für diese lästigen intermittierenden Probleme. Wenn Sie kein Root sind, können Sie auch sudo eingeben und machen Sie es natürlich zu einem Nohup:

sudo bash -c "nohup tcpdump -i en0 -w /var/tmp/trace-%m-%d-%H-%M-%S-%s -W 3 -G 300 &"

Scheint mir, dass alles, was Sie brauchen, ist

tcpdump -i en0 -G 1800 -w /var/tmp/trace-%H-%M.pcap

Der Formatbezeichner strftime, den -G im Dateinamen -w erwartet, muss kein vollständiges Datum und keine vollständige Uhrzeit darstellen. Mit nur %H und %M darin und einer Rotationszeit von genau einer halben Stunde generiert jeder gegebene Aufruf von tcpdump immer nur zwei verschiedene %M-Werte im Abstand von einer halben Stunde, und die Trace-Dateien von gestern werden zur selben Stunde überschrieben und Minutenzahlen rollen wieder herum.


Linux
  1. So verschlüsseln und entschlüsseln Sie Dateien und Verzeichnisse mit Tar und OpenSSL

  2. Übertragen Sie Dateien und Ordner sicher zwischen Computern mit Croc

  3. Verwenden von Dateien und Geräten in Podman-Containern ohne Root

  4. So senden und laden Sie Dateien mit Rsync herunter

  5. wget vs curl:So laden Sie Dateien mit wget und curl herunter

So synchronisieren Sie Dateien und Verzeichnisse mit Zaloha.sh

So ordnen und ändern Sie PDF-Dateien mit PDF Arranger

So sichern und wiederherstellen Sie Dateien mit BorgBackup unter Linux

So sichern Sie Dateien und Verzeichnisse mit Rsync unter Linux

Verwenden von Dateien und Ordnern auf dem Desktop-Bildschirm in Ubuntu

So löschen Sie Dateien und Verzeichnisse mit der Linux-Befehlszeile