Korábban sohasem próbáltam strace-t futtatni úgy, hogy akár órákon, napokon át fusson a háttérben. Én kis naiv, azt képzeltem, hogy strace-t bedobom egy szkriptbe, majd a szkriptet nohup segítségével indítom, akkor az futni fog akkor is, ha kilépek:
nohup ./szkript.sh &
Jéééé, de fura... elindul, háttérben fut, de amint kilépek abból a login shellből, amiből indítottam, megszűnik a strace is, mi több, ha a szkriptből is backgroundként indítottam:
strace ... &
sleep 10000
kill $(pidof strace)echo "---- vege ----"
akkor a fölötte futó szkript is kihalt nyom nélkül. Hmmm... A megoldás: a strace rendelkezik egy -I kapcsolóval. Ha ez kap egy 4-es értéket, akkor már nyugton marad. :)
update: azért ennyire nem szép a helyzet, ugyanis a futtatásra használt szkript így is megszűnik, amint kilépek, holott ha valami semleges processzt, pl. sleep-t indítok nohup-pal, akkor megmarad. Érdekes... Persze lehet, hogy csak a routeremen futó szoftver hülyeségéről van szó, "normális" linuxon még nem próbáltam.