Linux, 프로세스 확인(ps,pstree)
ps명령어란 현재 리눅스시템에서 사용중인 프로세스의 실행상태를 파악하고 점검하는 명령어이다.
간단하게ps라는 명령어만 사용할시에는 현재 사용자가 실행한 프로세스에 대해서만 출력한다.
[root@os1 ~]#ps PID TTYTIME CMD 2427 pts/000:00:00 bash 2594 pts/000:00:00 ps |
-. ps명령어의 주요 옵션
-e:모든프로세스 출력
-f:좀더 자세하게 출력
-u [계정명]:해당유저가 실행한 프로세스만 실행
-. ps명령어 사용하기(-ef | grep)
ps -ef명령어를 사용하면 현재 시스템에 동작중인 모든프로레스가 자세히 출력되는데
이때grep명령어와 함께 사용해서 내가 보고자 하는 서비스에 대해서만 출력할수 있음
>ssh관련 프로세스만 보기
[root@os1 ~]#ps -ef | grep sshd root225110 Jan16 ?00:00:00 /usr/sbin/sshd root242522510 Jan16 ?00:00:00 sshd: root@pts/0 root270522511 01:07 ?00:00:00 sshd: root@pts/1 root273424270 01:07 pts/000:00:00 grep --color=always sshd |
위의 내용을 보면PID 2734번은 내가 사용한ps명령어에 대한 프로세스이기때문에ssh관련 데몬을 출력해주고 다시 사라졌다.따라서 우리가 주목해야하는건 위에3가지 있다.
PID 2251번은 실제sshd데몬이다.이 데몬을 통해서ssh접속이 가능하므로 저 데몬이 죽어있다면ssh접속이 불가하다.
그외에pid 2425,2705번은 현재ssh를 이용하여 접속한 터미널의pid값이다.
kill명령어를 이용하여 해당 프로세스를 죽이면 해당 터미널로 접속한유저는 강제 로그아웃된다.
>>프로세스들이 가계도 확인(pstree) <<
pstree명령어는 현재 실행중인 프로세스들을 트리구조로 보여준다.
프로세스의 상호관계를 파악할수 있다.
간단하게pstree라고만 치면 현재 시스템의 프로세스의 간단한 가계도만 출력한다.
[root@os1 ~]#pstree init─┬─acpid ├─atd ├─auditd─┬─audispd───{audispd} │└─{auditd} ├─automount───4*[{automount}] ├─avahi-daemon───avahi-daemon ├─crond 생략... |
-. pstree의 주요옵션
-a:모든 프로레스의 인자나 옵션을 함께 출력
-h:현재프로세스의 조상프로세스와 부모프로세스를 강조하여 출력
-p: pid값과 함께 출력
-u [사용자]:특정사용자의 프로세스트리만 출력
-.모든프로레스의 인자나 옵션을 함께 출력(-a)
pstree로 프로세스가계도를 볼때 각각 프로세스들이 어떤 옵션을 사용했으며 어떤 인자를 받았는지를 함께 확인할수 있다.
[root@os1 ~]#pstree -a init ├─acpid ├─atd ├─auditd │├─audispd ││└─{audispd} │└─{auditd} ├─sshd │├─sshd ││└─bash ││└─pstree -a │├─sshd ││└─bash │└─sshd │└─sshd │└─bash |
내가 방금 사용한 명령어도 같이 나온것을 알수 있다.
-.현재사용중인 프로세스의 조상프로레스와 부모프로세스 강조하여 출력하기(-h)
-h옵션을 사용하여pstree를 사용하면 현재 내가 사용중인 프로세스의 조상프로세스와 부모프로세스는 강조하여 출력해준다.
[root@os1 ~]#pstree -h 생략... ├─sshd─┬─sshd───bash───pstree │└─sshd───bash───ssh 생략... |
현재 프로세스의 조상프로세스인,├─sshd─┬─sshd───bash───pstree가 강조되어 출력된걸 알수 있다.
-. pstree출력할때PID값 함께 출력(-p)
-p옵션을 사용하면 프로세스가계도를 출력할때 오른쪽에pid값을 함께 출력해준다.
[root@os1 ~]#pstree -p | head -5 init(1)-+-acpid(2134) |-atd(2343) |-auditd(1850)-+-audispd(1852)---{audispd}(1882) |`-{auditd}(1851) |-automount(2227)-+-{automount}(2228) |
-.특정사용자의 프로레스트리만 보기(-u)
특정사용자이름으로 실행된 프로세스트리만 확인하고자 할때 사용하는 옵션이-u옵션이다
[root@os1 ~]#pstree -u youngjae sshd───bash |
참조:리눅스 서버관리 실무 바이블3.0(박성수 저)
#리눅스관리