์ ๋ณด๋ณด์๊ธฐ์ฌ - ํ๋ก์ธ์ค(proc) ์คํ ๋ช ๋ น์ด, ์ ๋ฌ ์ธ์ ํ์ธ ๋ฐ ์คํ ํ์ผ ๋ณต์
๋ค์๊ณผ ๊ฐ์ด 922๋ผ๋ ํ๋ก์ธ์ค ์์ด๋(pid)๋ฅผ ๊ฐ์ง program.out์ด ๋์ํ๊ณ ์๋ค.
janger@desktop:~/ground$ ps -aux | grep program.out | grep -v grep
janger 922 0.0 0.0 2804 904 pts/0 T 18:52 0:00 ./program.out
ํ๋ก์ธ์ค ์ ๋ณด ํ์ธ
ํ๋ก์ธ์ค์ ์คํํ์ผ๋ช ๋ฐ ๊ฒฝ๋ก ํ์ธ
ls -l /proc/<pid>/exe
ํ๋ก์ธ์ค์ ๋ช ๋ น์ด ์ธ์ ํ์ธ
cat /proc/<pid>/cmdline
922์ exe ์ํ ํ์ผ์ ls ๋ช ๋ น์ด๋ก ํ์ธ์ ํ๋ฉด ํ๋ก๊ทธ๋จ๋ช ๋ฐ ๊ฒฝ๋ก๊ฐ ์ฌ๋ณผ๋ฆญ ๋งํฌ๋ก ํ์ธํ๋ ๊ฒ ๊ฐ๋ฅํ๋ค.
janger@desktop:~/ground$ ls -l /proc/922/exe
lrwxrwxrwx 1 janger janger 0 Oct 16 18:54 /proc/922/exe -> /home/janger/ground/program.out
๋ง์ฐฌ๊ฐ์ง๋ก 922์ cmdline ์ํํ์ผ์ cat ๋ช ๋ น์ด๋ก ์ถ๋ ฅํ๋ฉด ํ๋ก๊ทธ๋จ์ ์คํ ์์ผฐ์ ๋์ ๋ช ๋ น์ด์ ์ธ์ ๊ฐ(argument)์ ํ์ธ์ด ๊ฐ๋ฅ
janger@desktop:~/ground$ cat /proc/922/cmdline
./program.out
cwd๋ฅผ ํ์ธํ๋ฉด ํ๋ก๊ทธ๋จ์ด ํ์ฌ ์์ ์ค์ธ ๋๋ ํฐ๋ฆฌ ๊ฒฝ๋ก(working directory)๋ฅผ ํ์ธํ ์๋ ์๋ค.
janger@desktop:~/ground$ ls /proc/922/cwd -l
lrwxrwxrwx 1 janger janger 0 Oct 16 18:54 /proc/922/cwd -> /home/janger/ground
์คํ ์ค์ธ ํ๋ก๊ทธ๋จ(ํ๋ก์ธ์ค) ๋ณต์ํ๊ธฐ
๋ฉ๋ชจ๋ฆฌ์ ์์ฃผ์ค์ธ ํ๋ก๊ทธ๋จ์ ๋ณต์ํ๋ ค๋ฉด /proc/<pid>/exe๋ฅผ ํ์ผ ๋ณต์ฌ ๋ช ๋ น์ด์ธ cp๋ฅผ ํตํด ๋ณต์์ด ๊ฐ๋ฅํ๋ค.
janger@desktop:~/ground$ cp /proc/922/exe ./example.out
janger@desktop:~/ground$ ls -l
total 36
-rwxr-xr-x 1 janger janger 15044 Oct 16 19:01 example.out
-rw-r--r-- 1 janger janger 90 Oct 16 18:52 program.c
-rwxr-xr-x 1 janger janger 15044 Oct 16 18:52 program.out
ํ์ผ ๋ฌด๊ฒฐ์ฑ ํ์ธ์ ํด๋ณด๋ ์๋ณธ ํ๋ก๊ทธ๋จ๊ณผ ๋ณต์ฌํ ํ๋ก๊ทธ๋จ์ ํด์๊ฐ์ด ์ผ์นํ๋ ๊ฒ์ ์ ์ ์๋ค.
janger@desktop:~/ground$ md5sum program.out
8eb76ae4c4dd50346a7afacdc5d7d9c7 program.out
janger@desktop:~/ground$ md5sum example.out
8eb76ae4c4dd50346a7afacdc5d7d9c7 example.out
janger@desktop:~/ground$
์ฐธ๊ณ : ์๊ธฐ์ฌ ์ ๋ณด๋ณด์๊ธฐ์ฌ