Saya telah menulis layanan systemd berikut tcpdumpd.service
untuk memulai rekaman tcpdump yang persisten.
[Unit]
Description=TCPDumpd
After=multi-user.target network.target
[Service]
Type=simple
ExecStart=/usr/sbin/tcpdump -pni eth0 -s65535 -G 3600 -w '/var/log/tcpdump/trace_%Y-%m-%d_%H:%M:%S.pcap' -z gzip
Restart=on-abort
[Install]
WantedBy=multi-user.target
tcpdump memungkinkan strftime-placeholder seperti %H untuk jam, %M untuk menit, dan seterusnya untuk memungkinkan Anda membuat file yang diberi stempel waktu.
Namun, systemd memiliki penentu khusus yang dapat digunakan di dalamnya, seperti (%n, %N, %p, %i, %U, %u, %m, %H, %b, %v) Jadi penentu mana pun yang tumpang tindih, seperti %m dan %H meneruskan informasi dari systemd dan tidak mengizinkan placeholder diteruskan ke tcpdump untuk membuat stempel waktu.
Adakah yang tahu jika ada cara untuk keluar dari penentu di systemd sehingga saya bisa meneruskan %m dan %H ke tcpdump?