열린 파일의 파일 오프셋을 찾는 방법은 무엇입니까?

열린 파일의 파일 오프셋을 찾는 방법은 무엇입니까?

내 문제는 lsof -p pid 프로세스 ID가 pid인 프로세스에 대해 열린 파일 목록을 찾을 수 있다는 것입니다. 하지만 액세스된 각 파일의 파일 오프셋을 찾는 방법이 있습니까?

조언 좀 해주세요.

답변1

Linux에서는 에서 N프로세스의 파일 설명자의 위치를 ​​찾을 수 있습니다. 예:PID/proc/$PID/fdinfo/$N

$ cat /proc/687705/fdinfo/36
pos:    26088
flags:  0100001

여러 파일 설명자를 사용하면 동일한 파일을 다른 위치에서 여러 번 열 수 있으므로 파일 설명자가 여러 개인 경우 해당 파일 설명자를 선택해야 합니다. 사용:

$ readlink /proc/$PID/fd/$N

해당 파일 설명자가 어떤 파일에 첨부되어 있는지 확인합니다(심볼릭 링크가 매달려 있는 경우 파일이 아닐 수도 있음).

답변2

lsof이는 옵션을 통해 수행할 수 있습니다 -o.

Linux에서는 정보를 가져오므 /proc로 다음을 수행할 수 있습니다.거기로 가져가게다가.

관련 정보