Linux - 프로세스의 실행 파일 경로 확인
보통, which를 이용해 실행 파일의 경로를 확인할 수 있는데요,
$ which sleep
/usr/bin/sleep
그런데 Symbolic Link를 건 경우에는,
$ ln -s /usr/bin/sleep tmpsleep 
$ ./tmpsleep 5000000 &
[2] 3179
$ ps aux | grep [.]/tmpsleep
kevin     3179  0.0  0.0   7240   520 pts/4    S    11:17   0:00 ./tmpsleep 5000000
$ which ./tmpsleep
./tmpsleep
원본 실행 파일이 아닌, 링크 자체의 경로가 사용됩니다. 이런 경우에는 
readlink 명령을 사용할 수 있고,
$ readlink tmpsleep
/usr/bin/sleep
기타 ls 명령을 이용하는 것도 가능합니다.
$ ls -l tmpsleep
lrwxrwxrwx 1 kevin kevin 14 Oct 17 11:15 tmpsleep -> /usr/bin/sleep
$ ls -l /proc/3179/exe
lrwxrwxrwx 1 kevin kevin 0 Oct 17 11:18 /proc/3179/exe -> /usr/bin/sleep
[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]