ltrace

ltrace를 사용하여 시스템 호출 시간 측정: `syscall` + `clock_gettime`을 추가하시겠습니까?
ltrace

ltrace를 사용하여 시스템 호출 시간 측정: `syscall` + `clock_gettime`을 추가하시겠습니까?

시스템 호출에 대한 명확성을 찾고 있습니다. 나는 시스템 호출을 직접 호출하여 vDSO를 피하려고 했습니다 clock_gettime. 이것은 이라는 프로그램의 일부입니다 sys_clock_gettime. int clock = CLOCK_MONOTONIC; struct timespec ts; if (syscall(__NR_clock_gettime, clock, &ts) == -1){ exit(-1); } 프로그램은 시계 이름( CLOCK_BOOTTIME, CLOCK_MONOTONIC등)과...

Admin

ltrace가 glibc __nss_configure_lookup()에 대한 호출을 표시하지 않는 이유는 무엇입니까?
ltrace

ltrace가 glibc __nss_configure_lookup()에 대한 호출을 표시하지 않는 이유는 무엇입니까?

ltrace명령이 어떻게 작동하는지 이해하려고 노력 중입니다 . 그래서 같이 놀고 있었어/etc/nsswitch.conf. 거기에 "hosts:resolve" 라인이 있습니다.glibc동적 로딩nss-resolve호스트 이름 조회를 위한 플러그인 모듈입니다. 플러그인이 로드된 것을 보고 싶습니다 ltrace. $ ltrace getent hosts google.com mtrace() = <vo...

Admin

동일한 작업을 수행할 수 있는 ltrace에 대한 대안이 있습니까?
ltrace

동일한 작업을 수행할 수 있는 ltrace에 대한 대안이 있습니까?

ltrace연결된 바이너리 -z now옵션과 연결된 바이너리에서는 작동하지 않습니다. - 확인하세요.이것질문 - 이것은 내 Ubuntu 19.10 시스템의 기본 설정입니다. 에서만 작동합니다 -z lazy. ltrace동일한 작업을 수행하지만 작동하는 대안이 있습니까?게으른 링크바이너리도요? ...

Admin

Systemtap으로 인해 segfault가 발생합니다. 이유는 무엇입니까?
ltrace

Systemtap으로 인해 segfault가 발생합니다. 이유는 무엇입니까?

시스템 전체의 라이브러리 호출을 모니터링하려고 합니다. 나는 라이브러리 호출을 추적하기 위해 다음 스크립트를 작성했습니다 libguestfs. probe begin { printf("ok\n") } probe process("/usr/lib64/libguestfs.so.0.471.0").function("*") { print_usyms(ubacktrace()) } 그런 다음 test.stp로 저장하고 "sudo stap test.stp"를 실행했습니다....

Admin

vfork()는 SYS_vfork를 호출하지만 fork()는 SYS_clone을 호출합니까?
ltrace

vfork()는 SYS_vfork를 호출하지만 fork()는 SYS_clone을 호출합니까?

ltrace -S(버전 5.4.0)로 컴파일된 두 개의 프로그램 gcc(하나는 vfork()다른 하나를 호출함) 을 실행한 후 호출이 동시에 호출되는 fork()것을 발견했습니다 . 어디에서나 이 특정 동작에 대한 정보를 찾을 수 없습니다(일부 소스에서는 각각 , 및 가 해당 이름의 호출로 구현된다고 말하고, 다른 소스에서는 세 호출 모두 를 사용하여 구현된다고 말합니다.vfork()SYS_vforkfork()SYS_clonefork()vfork()clone()sys_sys_clone 소스 코드: ...

Admin

라이브러리 함수 호출에 대한 시스템 전반의 모니터링
ltrace

라이브러리 함수 호출에 대한 시스템 전반의 모니터링

나는 많은 프로세스가 동시에 실행되는 최신 Linux 데스크탑을 가지고 있습니다. 프로세스 중 하나(어떤 프로세스인지는 모르겠습니다)가 some_func인기 있는 동적 라이브러리 some_lib( libc또는 libx11이라고 생각하세요)의 함수를 호출합니다.많은이를 사용하는 프로세스) 어떤 프로세스가 이 작업을 수행하는지 알고 싶습니다(이상적으로는 각 호출에 대한 스택 추적이 있어야 함). 어떤 프로세스가 호출되었는지 확인하는 방법은 무엇입니까 some_lib? 지금까지 고려한 옵션은 다음과 같...

Admin

프로세스에서 TracerPID를 숨기는 방법은 무엇입니까?
ltrace

프로세스에서 TracerPID를 숨기는 방법은 무엇입니까?

내 생각엔Linux의 SQL Server가 확인 /proc/self/status하고 TracerPID그렇지 않은 경우 중지합니다.0. 나는 그것을 테스트하고 싶다. 재미삼아, 이건 strace야. ... lots of stuff openat(AT_FDCWD, "/proc/self/status", O_RDONLY) = 5 fstat(5, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0 read(5, "Name:\tsqlservr\nUmask:\t0022\nState".....

Admin

ltrace에서 출력이 없는 이유는 무엇입니까?
ltrace

ltrace에서 출력이 없는 이유는 무엇입니까?

며칠 동안 나는 터미널 에뮬레이터에서 이 명령을 실행해 왔습니다. ltrace -p `pgrep xfwm4` 시스템을 정상적으로 사용할 때 어떤 출력도 보지 못했습니다 ltrace. 참고: xfwm4Xfce의 창 관리자입니다. 이것이 예상되는가? 바쁜 창 관리자가 라이브러리 호출을 하지 않습니까? ltracexfwm4에서 무작위로 발생하고 예측할 수 없는 오류가 발생했습니다. 원인이 무엇인지에 대한 단서를 제공할 수 있기를 바랍니다 . ...

Admin

공유 라이브러리를 추적하는 방법은 무엇입니까?
ltrace

공유 라이브러리를 추적하는 방법은 무엇입니까?

특정 라이브러리에 대한 함수 호출을 추적하고 싶습니다. libfoo라고 부르겠습니다. 불행하게도 이에 대한 문서를 거의 찾지 못했기 때문에 질문이 많습니다. libfoo 문서에는 foo_a, foo_b, foo_c.. 호출이 API 호출로 나열되어 있습니다. Windows DLL에서는 이러한 호출 목록을 생성하기가 쉽습니다. 모든 외부 호출은 dllexport(DLL) 또는 이와 유사한 것으로 선언되어야 하며 간단한 스크립트는 내보낸 모든 기호를 추출합니다. Linux 공유 객체에 대한 목록을 어떻...

Admin

인용하다
ltrace

인용하다

시스템 호출을 추적하는 데 사용 하면 ltracefork()가 sys_fork() 대신 sys_clone()을 사용하는 것을 볼 수 있습니다. 그러나 그것을 정의하는 Linux 소스 코드를 찾을 수 없습니다. 내 프로그램은 다음과 같습니다 #include<stdio.h> main() { int pid,i=0,j=0; pid=fork(); if(pid==0) printf("\nI am child\n"); ...

Admin

프로세스가 실행 중인 명령이 무엇인지 확인하는 방법은 무엇입니까?
ltrace

프로세스가 실행 중인 명령이 무엇인지 확인하는 방법은 무엇입니까?

나는 strace와 ltrace를 이해하지만 이는 프로세스가 실행 중인 시스템 호출과 라이브러리 호출만 알려줍니다. 프로세스가 실행 중인 명령이 무엇인지 정확히 알고 싶습니다. 어셈블리이거나 C와 어셈블리 사이의 중간 지점입니다(가능한 경우). 바이너리가 디버깅 기호로 컴파일되지 않았다고 가정하므로 첫 번째 옵션이 선호될 가능성이 더 높습니다. 사용 사례: 프로세스가 중단된 것 같고 strace 또는 ltrace에서 출력이 없습니다. 프로세스가 "무언가"를 수행하고 있는지 확인합니다. 나는 이것이 ...

Admin