22.3. opensnoop을 사용하여 명령으로 열린 파일 추적


BCC(BPF Compiler Collection)의 opensnoop 툴을 사용하여 특정 명령으로 실시간으로 파일 액세스를 모니터링하고 기록할 수 있습니다. 이 기능은 애플리케이션의 런타임 동작을 디버깅, 감사 또는 이해하는 데 유용합니다.

프로세스

  1. 한 터미널에서 opensnoop 프로그램을 실행하여 uname 명령 프로세스에서만 열린 파일의 출력을 출력합니다.

    # /usr/share/bcc/tools/opensnoop -n uname
  2. 다른 터미널에서 명령을 입력하여 특정 파일을 엽니다.

    $ uname
    The terminal running opensnoop shows the output similar to the following:
    PID    COMM 	FD ERR PATH
    8596   uname 	3  0   /etc/ld.so.cache
    8596   uname 	3  0   /lib64/libc.so.6
    8596   uname 	3  0   /usr/lib/locale/locale-archive
    ...

    opensnoop 프로그램은 전체 시스템에서 open() 시스템 호출을 감시하고 uname 이 동시에 열려고 하는 각 파일의 출력을 출력합니다. opensnoop 출력에는 다음 필드가 표시됩니다.

    PID
    프로세스 ID입니다. (8596)
    COMM
    프로세스 이름입니다. (uname)
    FD
    파일 설명자 - open()이 열려 있는 파일을 참조하기 위해 반환하는 값입니다. (3)
    ERR
    모든 오류.
    경로

    open() 이 열려고 하는 파일의 위치입니다.

    명령이 존재하지 않는 파일을 읽으려고 하면 FD 열은 -1 을 반환하고 ERR 열은 관련 오류에 해당하는 값을 출력합니다. opensnoop 을 사용하면 제대로 작동하지 않는 애플리케이션을 식별할 수 있습니다. 자세한 내용은 시스템의 /usr/share/bcc/tools/doc/opensnoop_example.txt 파일 및 open(2) 매뉴얼 페이지를 참조하십시오.

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2026 Red Hat
맨 위로 이동