ps명령어란 현재 리눅스시템에서 사용중인 프로세스의 실행상태를 파악하고 점검하는 명령어이다.
간단하게 ps라는 명령어만 사용할시에는 현재 사용자가 실행한 프로세스에 대해서만 출력한다.
[root@os1 ~]# ps PID TTY TIME CMD 2427 pts/0 00:00:00 bash 2594 pts/0 00:00:00 ps |
-. ps명령어의 주요 옵션
-e : 모든프로세스 출력
-f : 좀더 자세하게 출력
-u [계정명] : 해당유저가 실행한 프로세스만 실행
-. ps명령어 사용하기(-ef | grep)
ps -ef 명령어를 사용하면 현재 시스템에 동작중인 모든프로레스가 자세히 출력되는데
이때 grep명령어와 함께 사용해서 내가 보고자 하는 서비스에 대해서만 출력할수 있음
>ssh 관련 프로세스만 보기
[root@os1 ~]# ps -ef | grep sshd root 2251 1 0 Jan16 ? 00:00:00 /usr/sbin/sshd root 2425 2251 0 Jan16 ? 00:00:00 sshd: root@pts/0 root 2705 2251 1 01:07 ? 00:00:00 sshd: root@pts/1 root 2734 2427 0 01:07 pts/0 00: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 |
'IT > 리눅스마스터1급' 카테고리의 다른 글
/etc/profile.d/lang.sh: line 19: warning: setlocale: LC_CTYPE: cannot change locale (UTF-8): No such file or directory (0) | 2023.08.19 |
---|---|
[linux/Tip] Openssl 버전 및 openssh 버전 확인 (0) | 2023.08.17 |
unix , shell, 숫자, 문자 비교, -gt -lt -le -eq -ne (0) | 2023.08.17 |
리눅스 find, grep, awk 사용하기 (0) | 2023.08.17 |
리눅스 cat 명령어 사용법. (Linux cat command) - 리눅스 파일 내용 출력. (0) | 2023.08.17 |