Sim, parece não funcionar como a resposta de MariusMututiae diz.
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
Parece-me que pode estar capturando o máximo de -C 100
arquivos MB possível em um período de 30 minutos, porque httpdebug.pcap03
possui o timestamp mais antigo e é muito menor que 100 MB, então parece que foi cortado em uma marca de 30 minutos. Depois de atingir 30 minutos, parece voltar httpdebug.pcap00
e aumentar o número à medida que atinge 100 MB. Isso significa que, se você tiver muitas solicitações em um período de 30 minutos, poderá obter números httpdebug.pcapXX muito altos. Se você nunca mais atender a tantas solicitações em um período, esses altos números httpdebug.pcapXX nunca serão substituídos.
Então, eu estou pensando que arquivos cíclicos por timeslice significam que o timeslice é -G 1800
e irá alternar a cada -G 1800
e incrementar a cada -C 100
.
Não tenho certeza se -W 48
isso afeta, mas talvez se você chegar a httpdebug.pcap47
(contagem começa em 0`, ele irá parar de capturar pacotes.
Recentemente, houve um problema no GitHub aberto sobre a redação confusa. Eles não mudaram a implementação, mas tentaram tornar a documentação um pouco mais clara.
As alterações propostas foram mescladas em 28 de janeiro de 2019 .
A partir de hoje, 17 de março de 2019, aqui está a documentação atual:
-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.
Eu ainda acho um pouco confuso, mas acho que a diferença da minha conclusão acima é que -W
quando usado com -C -G
não afeta nada além do nome do arquivo.
Em geral, -W
é usado para limitar o número de arquivos. Portanto, não use se você deseja capturar indefinidamente.