Так, це, мабуть, не працює, як йдеться у відповіді Маріуса Матутія .
tcpdump ...{other options}... -w httpdebug.pcap -W 48 -G 1800 -C 100
$ ls -l
-rw-r--r--. 1 tcpdump tcpdump 100007441 Mar 17 17:57 httpdebug.pcap00
-rw-r--r--. 1 tcpdump tcpdump 46895104 Mar 17 18:02 httpdebug.pcap01
-rw-r--r--. 1 tcpdump tcpdump 93091143 Mar 17 17:47 httpdebug.pcap02
-rw-r--r--. 1 tcpdump tcpdump 5372072 Mar 17 16:17 httpdebug.pcap03
Мені здається, що це могло б зафіксувати якомога більше -C 100
файлів МБ за 30 хвилин, оскільки httpdebug.pcap03
вона має найраніші часові позначки і набагато менша, ніж 100 Мб, тому здається, що її вирізали за 30 хвилин. Як тільки він потрапляє 30 хвилин, він, схоже, стрибає назад httpdebug.pcap00
і збільшує кількість, коли він досягає 100 Мб. Це означає, що якщо у вас протягом 30 хвилин багато запитів, ви отримуєте дуже високі цифри httpdebug.pcapXX. Якщо ви більше ніколи не звертаєтесь до такої кількості запитів, ці високі httpdebug.pcapXX цифри ніколи не будуть перезаписані.
Тому я думаю, що циклічні файли на часовий фрагмент означають, що часовий фрагмент є, -G 1800
і він буде циклічно кожен -G 1800
і збільшувати кожен -C 100
.
Я не впевнений, чи -W 48
вплине це, але, можливо, якщо ви дістанетесь httpdebug.pcap47
(кількість починається з 0 ", це перестане захоплювати пакети.
Дещо недавно з'явилася проблема GitHub про заплутане формулювання. Вони не змінили реалізацію, але намагалися зробити документацію трохи зрозумілішою.
У пропонованих змінах були об'єднані в на 28 січня 2019 року .
Станом на сьогодні, 17 березня 2019 року, ось поточна документація:
-C
:
.BI \-C " file_size"
Before writing a raw packet to a savefile, check whether the file is
currently larger than \fIfile_size\fP and, if so, close the current
savefile and open a new one. Savefiles after the first savefile will
have the name specified with the
.B \-w
flag, with a number after it, starting at 1 and continuing upward.
The units of \fIfile_size\fP are millions of bytes (1,000,000 bytes,
not 1,048,576 bytes).
-G
:
.BI \-G " rotate_seconds"
If specified, rotates the dump file specified with the
.B \-w
option every \fIrotate_seconds\fP seconds.
Savefiles will have the name specified by
.B \-w
which should include a time format as defined by
.BR strftime (3).
If no time format is specified, each new file will overwrite the previous.
Whenever a generated filename is not unique, tcpdump will overwrite the
preexisting data; providing a time specification that is coarser than the
capture period is therefore not advised.
.IP
If used in conjunction with the
.B \-C
option, filenames will take the form of `\fIfile\fP<count>'.
-W
:
.B \-W
Used in conjunction with the
.B \-C
option, this will limit the number
of files created to the specified number, and begin overwriting files
from the beginning, thus creating a 'rotating' buffer.
In addition, it will name
the files with enough leading 0s to support the maximum number of
files, allowing them to sort correctly.
.IP
Used in conjunction with the
.B \-G
option, this will limit the number of rotated dump files that get
created, exiting with status 0 when reaching the limit.
.IP
If used in conjunction with both
.B \-C
and
.B \-G,
the
.B \-W
option will currently be ignored, and will only affect the file name.
Я все ще думаю, що це трохи заплутано, але я здогадуюсь, що відмінність від мого висновку вище полягає в тому, що він говорить, -W
коли використовується з -C -G
, не впливає ні на що, окрім назви файлу.
Взагалі -W
використовується для обмеження кількості файлів. Тому не використовуйте його, якщо ви хочете захопити на невизначений час.