1. 프로세스 목록 확인
1-1. PS 명령어
- 현재 실행 중인 프로세스에 대한 정보를 출력한다.
- 형식 : ps [옵션]
- 옵션
옵션 종류 | 옵션 | 설명 |
<유닉스 옵션> | -e | 시스템에서 실행 중인 모든 프로세스의 정보를 출력 |
-f | 프로세스에 대한 자세한 정보를 출력 | |
-u uid | 특정 사용자에 대한 모든 프로세스의 정보를 출력 | |
-p pid | pid로 지정한 특정 프로세스의 정보를 출력 | |
<BSD 옵션> | a | 터미널에서 실행시킨 프로세스의 정보를 출력 |
u | 프로세스 소유자 이름, CPU 사용량, 메모리 사용량 등 상세 정보를 출력 | |
x | 시스템에서 실행 중인 모든 프로세스의 정보를 출력 | |
<GNU 옵션> | -- pid PID 목록 | 목록으로 지정한 특정 PID 정보를 출력 |
- 사용 예
- ps -f의 출력 정보
항목 | 의미 |
UID | 프로세스를 실행한 사용자 ID |
PID | 프로세스 번호 |
PPID | 부모 프로세스 번호 |
C | CPU 사용량 (% 값) |
STIME | 프로세스의 시작 날짜나 시간 |
TTY | 프로세스가 실행된 터미널의 종류와 번호 |
TIME | 프로세스 실행 시간 |
CMD | 실행되고 있는 프로그램 이름(명령) |
- ps a옵션에서 나오는 STAT에 사용되는 문자의 의미
문자 | 의미 | 비고 |
R | 실행 중(running) | |
S | 인터럽트가 가능한 대기(sleep) 상태 | |
T | 작업 제어에 의해 정지된(stopped) 상태 | |
Z | 좀비 프로세스(defunct) | |
STIME | 프로세스의 시작 날짜나 시간 | |
s | 세션 리더 프로세스 | BSD 형식 |
+ | 포그라운드 프로세스 그룹 | |
l(소문자 L) | 멀티스레드 |
- ps au 출력 정보
항목 | 의미 |
USER | 사용자 계정 이름 |
%CPU | 퍼센트로 표시한 CPU 사용량 |
%MEM | 퍼센트로 표시한 물리적 메모리 사용량 |
VSZ | 사용 중인 가상 메모리의 크기(KB) |
RSS | 사용 중인 물리적 메모리의 크기(KB) |
START | 프로세스 시작 시간 |
2. 특정 프로세스 정보 검색
2-1. pgrep 명령어
- 지정한 패턴과 일치하는 프로세스의 정보를 출력한다.
- 형식 : pgrep [옵션] [패턴]
- 옵션
옵션 | 설명 |
-x | 패턴과 정확히 일치하는 프로세스의 정보를 출력한다. |
-n | 패턴을 포함하고 있는 가장 최근 프로세스의 정보를 출력한다. |
-u 사용자 이름 | 특정 사용자에 대한 모든 프로세스를 출력한다. |
-l | PID와 프로세스 이름을 출력한다. |
-t term | 특정 단말기와 관련된 프로세스의 정보를 출력한다. |
- 사용 예
3. 프로세스 종료
3-1. kill
- 지정한 시그널을 프로세스에게 보낸다
- 형식 : kill [-시그널] PID...
- 주요 시그널 옵션
시그널 | 번호 | 기본 처리 | 의미 |
SIGHUP | 1 | 종료 | 터미널과 연결이 끊겼을 때 발생한다. |
SIGINT | 2 | 종료 | 인터럽트로 사용자가 Ctrl + c 를 입력하면 발생한다. |
SIGQUIT | 3 | 종료, 코어덤프 | 종료 신호로 사용자가 Ctrl + \ 을 입력하면 발생한다. |
SIGKILL | 9 | 종료 | 이 시그널을 받은 프로세스는 무시할 수 없으며 강제로 종료된다. |
SIGALRM | 14 | 종료 | 알람에 의해 발생한다. |
SIGTERM | 15 | 종료 | kill 명령이 보내는 기본 시그널이다. |
- kill 명령어 사용 예시는 한쪽이 프로세스를 실행하고 다른 한쪽이 종료해야하기때문에 2개 이상의 터미널을 실행해야 한다.
- 터미널 1 - 프로세스 실행
- 터미널 2 - 프로세스 종료
3-2. pkill 명령어
- 동일하게 프로세스를 종료하지만 PID가 아닌 프로세스의 명령 이름으로 종료
- EX) pkill man
3-3. killall
- pkill 처럼 명령이름으로 종료하고 실행중인 모든 프로세스를 한 번에 종료 할 수 있다.
- EX) killall man
4. 프로세스 관리 도구
4-1 top 명령
- 현재 실행 중인 프로세스의 정보를 주기적으로 출력
- 프로세스의 자세한 요약 정보를 상단에 출력
- 형식 : top
- top 명령의 출력 정보
항목 | 의미 |
PID | 프로세스 ID |
USER | 사용자 계정 |
PR | 우선순위 |
NI | Nice 값 |
VIRT | 프로세스가 사용하는 가상 메모리의 크기 |
RES | 프로세스가 사용하는 메모리의 크기 |
SHR | 프로세스가 사용하는 공유 메모리의 크기 |
%CPU | 퍼센트로 표시한 CPU 사용량 |
%MEM | 퍼센트로 표시한 메모리 사용량 |
TIME+ | CPU 누적 이용 시간 |
COMMAND | 명령 이름 |
- top 명령어 사용
- top 명령의 내부 명령
내부 명령 | 기능 |
Enter, Space Bar | 화면을 즉시 다시 출력 |
h, ? | 도움말 화면을 출력 |
k | 프로세스를 종료한다. 종료 할 프로세스의 PID를 물어본다. |
n | 출력하는 프로세스의 개수를 바꾼다. |
u | 사용자에 따라 정렬하여 출력 |
M | 사용하는 메모리 크기에 따라 정렬하여 출력 |
p | CPU 사용량에 따라 정렬하여 출력 |
q | top 명령을 종료 |
'Linux' 카테고리의 다른 글
[Linux] 21. 작업 예약 (0) | 2023.02.15 |
---|---|
[Linux] 20. 포그라운드, 백그라운드 프로세스와 작업 제어 (0) | 2023.02.15 |
[Linux] 18. 프로세스의 개념 (0) | 2023.02.15 |
[linux] Linux에서 apt update 안될 때 팁 및 각종 설치 (0) | 2023.02.14 |
[Linux] 17. 기본 및 특수 접근 권한 설정 (0) | 2023.02.10 |
댓글