Linux 에서 Solaris 유틸리티 의 -T
및 -U
옵션 과 동일한 기능이 있습니까?truss
추적 된 애플리케이션이 호출 할 때 시스템 호출 ( -T
) 또는 라이브러리 함수 ( -U
) 를 지정해야합니다 .
또는 그렇지 않으면 추적 된 응용 프로그램으로 시작한 프로세스가 주어진 시스템 호출이나 지정된 공유 라이브러리 함수 호출을 수행하자마자 중지 (SIGSTOP에 의해 종료 된 것처럼)되고 싶습니다.
strace
와 ltrace
리눅스에서 솔라리스 된 형상의 많은으로 제공 truss
하지만, 그들은 그 일을 할 것 같지 않습니다.
예를 들어 :
truss -f -T open cmd
같은 것 strace -f cmd
제외하고 그 프로세스가 실행하는 경우 cmd
또는 그 자손 않는 open
시스템 호출이 즉시 중단시킬 것 (그리고 나는 내 편의에 나중에 그것을 다시 시작할 수 있습니다)
어떤 경우에는, 내가 사용할 수있는 gdb
'들 catch syscall
,하지만 난 편리하게 포크를 따라 모든 갈래의 프로세스에 대한 그 일을 계속 후에도 그 일을 계속 할 수있는 솔루션을 찾고있었습니다 execve
들.
syscall이 원격으로 발생하는 단일 단계 응용 프로그램에 동일한 기능을 제공하는 유틸리티 (또는 동일한 유틸리티에 대한 옵션)를 기억하는 것처럼 보입니다. 그러나 메모리가 부족하여 확실하지 않습니다. 그것은 리눅스에 있었다.
follow-exec-mode
), 나는 그것을 실험하고 있습니다. 질문에 엄격하게 대답하지는 않지만 필요한 것에 충분할 수 있습니다.
truss
맨 페이지 에 대한 링크를 추가했습니다 .