Solaris yardımcı programının -T
ve -U
seçeneğinin truss
Linux'ta yaptıklarına eşdeğer bir şey var mı ?
Bunlar , izlenen uygulama tarafından çağrıldığında durmasına neden olacak bir sistem çağrısı ( -T
) veya kütüphane işlevi ( -U
) belirtmelidir .
Ya da, aksi takdirde, izlenen bir uygulama tarafından başlatılan herhangi bir işlemin (SIGSTOP tarafından öldürülmüş gibi) belirli bir sistem çağrısı veya belirli bir paylaşılan kütüphane işlev çağrısı yapar yapmaz durdurulmasını istiyorum.
strace
ve ltrace
Linux'ta Solaris'in özelliklerinin çoğunu sağlar truss
, ancak bunu yapmıyorlar.
Örneğin:
truss -f -T open cmd
Gibi olurdu strace -f cmd
dışında o süreci yürütme eğer cmd
ya onun soyundan birini yapan open
sistem çağrısı, hemen durdurulmalı olurdu (ve benim kolaylık daha sonra devam ettirebilirsiniz)
Bazı durumlarda, gdb
's kullanabilirdim catch syscall
, ama çatalları rahatça takip edebilen ve tüm çatallı süreçler için yapmaya devam edebilen ve execve
s sonra bile yapmaya devam edebilen bir çözüm arıyordum .
Bazı işlevselliğin bazı olayları arasında tek adımlık uygulamalara aynı işlevselliği, hatta bir (veya aynı yardımcı programa seçenekler) veren bazı yardımcı programları hatırlıyorum, ancak belleğim beni başarısız yapıyor, emin olamıyorum bile Linux'taydı.
follow-exec-mode
), ben bunu deniyorum. Soruyu kesinlikle cevaplamıyor, ancak ihtiyacım olan şey için yeterince iyi olabilir.
truss
kılavuzuna bir bağlantı ekledim .