현재 프로세스에서 연 파일을 알고 싶습니다.
글쓴이: litwind / 작성시간: 월, 2003/05/26 - 1:57오후
현재 제가 만든 프로세스에서...
이 놈이 나름대로 데몬 프로그램인데..
신나게 잘 돌다가 한 3시간 쯤 지나면..
세그멘테이션 폴트와 함께..
too many file opened..
라는 에라를 출려하네요~
디버그 할려고 해도~ 고치고 에러 나는 거 함 보려면..
3시간을 기다려야 되니.. -_-;
하핫~ fclose() 도 꽤나 열심히 해줬는데 저런
메세지가 뜨네요~
그래서 어떤 파일들이 현재 열려있어서 저런 메세지가 뜨는지
알고싶습니다.. 도움주세요~ ^^
Forums:
저도 그거 때문에 골치 아픈 적이 있었죠 ^^lsof 명령어를
저도 그거 때문에 골치 아픈 적이 있었죠 ^^
lsof 명령어를 사용하세요..
lsof -p <pid> : <pid> 는 원하시는 프로세스의 pid
와 같은 방식으로 사용하시면 됩니다. 단, 이 명령어는 수퍼유저 용입니다.
또는, proc 파일 시스템을 이용하셔도 됩니다.
/proc/<pid>/fd 디렉토리에 가셔서 "ls -l" 입력하시면 각 fd 가 어느
파일을 가리키고 있는지 확인할 수 있습니다.
댓글 달기