Ostatnio potrzebowałem zebrać logi tcpdump przez określoną jednostkę czasu, interesował mnie konkretny atak ddos, ale by nie zapychać dysku, w momecie wykrycia uruchamiałem tcpdumpa i logowałem wszystko.
Stanąłem przed problemem, jak taki proces uruchomić w bashu w określonej jednostce czasu. Już prawie zacząłem skrobać jednolinijkowca, ale Linux, a raczej coreutils pakiet przyszedł z pomocą. Jest narzędzie timeout, które uruchamia proces przez określoną jednostkę czasu
# timeout 5m tcpdump -w atak.cap
Więcej w manualu: http://man7.org/linux/man-pages/man1/timeout.1.html