사람이 읽을 수 있는 strace 대안이 있습니까?

사람이 읽을 수 있는 strace 대안이 있습니까?

프로세스가 어떤 파일에 액세스하는지 알고 싶습니다. strace나에게 해당 정보를 제공할 수 있지만 의 출력은 strace"원시"입니다. 유사한 기능을 제공하지만 사람이 더 읽기 쉬운 방식으로 제공하는 것이 있습니까(예: 라이브러리 필터링, $HOME 디렉터리의 파일 강조 표시, 항목에 액세스하는 빈도에 대한 통계 제공 등)?

답변1

Ole Tange라는 사람이 당신이 설명하는 도구를 코딩했습니다. 여기를 보세요https://gitlab.com/ole.tange/tangetools/tree/master/tracefile. 추적 파일은 본질적으로 쉘 스크립트이므로 실행 가능하게 만들고 실행하십시오. .pod 파일은 사용 방법을 설명하는 매뉴얼입니다.

답변2

비만

설치하다비만패키지:

sudo apt install fatrace

이름 fatrace - 시스템 전체의 파일 액세스 이벤트를 보고합니다.

개요 파트레이스 [ 옵션 ]

설명 fatrace는 실행 중인 모든 프로세스의 파일 액세스 이벤트를 보고합니다.

출력을 파일에 기록하여 발생하는 이벤트 로깅을 방지하기 위해 fatrace 자체로 파일 액세스를 보고하지 않습니다. 또한 sysfs, proc 및 devtmpfs와 같은 가상 및 커널 파일 시스템의 이벤트도 무시합니다.

주요 목적은 불필요하게 디스크를 계속 깨워서 절전을 방지하는 프로세스를 찾는 것입니다.

기본적으로 이벤트는 stdout에 보고됩니다. 예를 들어 gnome-terminal에서 이 도구를 실행하면 일부 루프가 발생합니다. 이로 인해 모든 출력 라인에 대한 디스크 액세스가 발생하기 때문입니다. 이를 방지하려면 출력을 파일로 리디렉션하세요.

출력 형식
일반적인 이벤트는 다음과 같습니다.

   rsyslogd(875): W /var/log/auth.log  
   compiz(1971): O device 8:2 inode 658203

이 줄에는 다음 필드가 있습니다.

  • 프로세스 이름. 이는 /proc/pid/comm에서 읽혀지며 긴 프로세스 이름으로 축약될 수 있습니다.

  • 프로세스 ID

  • 이벤트 유형: 열기, 읽기, 쓰기 또는 닫기. 작성된 파일을 닫는 CW와 같은 조합이 가능합니다.

  • 영향을 받은 파일. 이미 삭제된 임시 파일이기 때문에 경로와 이름을 확인할 수 없는 경우도 있습니다. 이 경우 장치의 주 및 부 번호와 inode 번호를 인쇄합니다. 이러한 프로세스를 더 자세히 조사하려면 strace(1) 사용을 고려해야 합니다.

--timestamp 옵션을 지정하면 첫 번째 필드는 현재 시간이 됩니다.

관련 정보