Search

Process

Date
2024/11/29
Category
Devops
Tag
Linux
๋ชฉ์ฐจ

Process

Process๋ž€ ํ˜„์žฌ ์‹คํ–‰์ค‘์ธ ํ”„๋กœ๊ทธ๋žจ์„ ์˜๋ฏธํ•œ๋‹ค. ๋ฉ”๋ชจ๋ฆฌ์— ์ ์žฌ๋˜์–ด OS์— ์˜ํ•ด ๊ด€๋ฆฌ๋˜๋Š” ์ƒํƒœ๋ฅผ ๋œปํ•˜๋ฉฐ, ์‹คํ–‰, ์‹คํ–‰๋Œ€๊ธฐ, ๋Œ€๊ธฐ, ์ข…๋ฃŒ ๋“ฑ์˜ ์ƒํƒœ๋ฅผ ๊ฐ€์ง„๋‹ค. ํ”„๋กœ์„ธ์Šค๋Š” ํ”„๋กœ์„ธ์Šค ํ…Œ์ด๋ธ”์„ ํ†ตํ•ด ํ”„๋กœ์„ธ์Šค์˜ ์ด๊ด„ ์ •๋ณด๋ฅผ ํ™œ์šฉํ•œ๋‹ค.

Foreground

โ€ข
๋™์ž‘ ์‹œ ํ„ฐ๋ฏธ๋„์— ๋‚˜ํƒ€๋‚˜๋Š” ํ”„๋กœ์„ธ์Šค๋กœ, ์‚ฌ์šฉ์ž๊ฐ€ ์ง์ ‘ ์ƒํ˜ธ์ž‘์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํ”„๋กœ์„ธ์Šค์ด๋‹ค.
โ€ข
ํ„ฐ๋ฏธ๋„์˜ ์ œ์–ด๋ฅผ ์ฐจ์ง€ํ•˜๋ฉฐ, ์‚ฌ์šฉ์ž๊ฐ€ ์ข…๋ฃŒํ•˜๊ฑฐ๋‚˜ ์ค‘๋‹จํ•  ๋•Œ๊นŒ์ง€ ๊ณ„์† ์‹คํ–‰๋œ๋‹ค.

Background

โ€ข
๋™์ž‘ ์‹œ ํ„ฐ๋ฏธ๋„์— ๋‚˜ํƒ€๋‚˜์ง€ ์•Š๊ณ  ์‹คํ–‰๋˜๋Š” ํ”„๋กœ์„ธ์Šค๋กœ, ์‚ฌ์šฉ์ž๊ฐ€ ์ง์ ‘ ์ƒํ˜ธ์ž‘์šฉํ•˜์ง€ ์•Š๋Š” ํ”„๋กœ์„ธ์Šค์ด๋‹ค.
โ€ข
ํ„ฐ๋ฏธ๋„์˜ ์ œ์–ด๋ฅผ ์ฐจ์ง€ํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ, ์‚ฌ์šฉ์ž๋Š” ๋‹ค๋ฅธ ๋ช…๋ น์„ ์ž…๋ ฅํ•  ์ˆ˜ ์žˆ๋‹ค.
fg ์ž‘์—… # foreground๋กœ ์ „ํ™˜ bg ์ž‘์—… # backgroud๋กœ ์ „ํ™˜ ์ž‘์—… & # background๋กœ ์‹คํ–‰ ## ex) vi process & -> ๋ฐฑ๊ทธ๋ผ์šด๋“œ๋กœ vi ์‹คํ–‰
Shell
๋ณต์‚ฌ

Commands

๋ช…๋ น์–ด
์˜๋ฏธ
ps
ํ˜„์žฌ ํ”„๋กœ์„ธ์Šค ์ƒํƒœ ํ™•์ธ
top
ํ˜„์žฌ ์‹คํ–‰ ์ค‘์ธ ํ”„๋กœ์„ธ์Šค ์ •๋ณด๋ฅผ ์ฃผ๊ธฐ์ ์œผ๋กœ ์ถœ๋ ฅ
kill
๊ฐ•์ œ๋กœ ํ”„๋กœ์„ธ์Šค ์ข…๋ฃŒํ•˜๋Š” ๋ช…๋ น์–ด
pstree
๋ถ€๋ชจ ํ”„๋กœ์„ธ์Šค์™€ ์ž์‹ ํ”„๋กœ์„ธ์Šค์˜ ๊ด€๊ณ„๋ฅผ tree ํ˜•ํƒœ๋กœ ๋ณด์—ฌ์ฃผ๋Š” ๋ช…๋ น์–ด
jobs
ํ˜„์žฌ ์‹คํ–‰์ค‘์ธ ๋ฐฑ๊ทธ๋ผ์šด๋“œ ์ž‘์—… ์ถœ๋ ฅ
nohup
๋ฐ๋ชฌ ํ˜•ํƒœ๋กœ ์‹คํ–‰
&
๋ฐฑ๊ทธ๋ผ์šด๋“œ๋กœ ์‹คํ–‰ (๋ช…๋ น์–ด ๋งˆ์ง€๋ง‰์— ์ž‘์„ฑ)

jobs

๋ช…๋ น์–ด
์˜๋ฏธ
-l
PID(ํ”„๋กœ์„ธ์Šค ์•„์ด๋””) ์ถœ๋ ฅ
-p
ํ”„๋กœ์„ธ์Šค ๊ทธ๋ฃน ๋ฆฌ๋” PID ์ถœ๋Ÿญ
%n
n๋ฒˆ์งธ ์ž‘์—… ์ฐธ์กฐ
%%
ํ˜„์žฌ ์ž‘์—… ์ฐธ์กฐ
+
๋งˆ์ง€๋ง‰ ์ž‘์—… ์ฐธ์กฐ
%string
string ๋ฌธ์ž์—ด๋กœ ์‹œ์ž‘ํ•˜๋Š” ์ž‘์—… ์ฐธ์กฐ

ps

โ€ข
PID: ํ”„๋กœ์„ธ์Šค ID
โ€ข
TTY: ํ”„๋กœ์„ธ์Šค ์‹คํ–‰ ํ„ฐ๋ฏธ๋„
โ€ข
TIME: CPU ์‹œ๊ฐ„
โ€ข
CMD: ์‹คํ–‰ ๋ช…๋ น์–ด
๋ช…๋ น์–ด
์˜๋ฏธ
-a
๋ชจ๋“  ์‚ฌ์šฉ์ž ํ”„๋กœ์„ธ์Šค๋ฅผ ํฌํ•จํ•˜์—ฌ, ์‹œ์ž‘ ์‹œ๊ฐ์„ ํ•จ๊ป˜ ์ถœ๋ ฅ
-u
์‚ฌ์šฉ์ž ๊ธฐ๋ฐ˜์œผ๋กœ ๋ชจ๋“  ํ”„๋กœ์„ธ์Šค๋ฅผ ์ถœ๋ ฅํ•˜๋ฉฐ, ์‚ฌ์šฉ์ž ์ •๋ณด์™€ CPU ์‚ฌ์šฉ๋Ÿ‰ ๋“ฑ ์ถœ๋ ฅ
-x
ํ„ฐ๋ฏธ๋„์— ์—ฐ๊ฒฐ๋˜์ง€ ์•Š์€ ๋ฐ๋ชฌ ํ”„๋กœ์„ธ์Šค๋ฅผ ํฌํ•จํ•˜์—ฌ ์ถœ๋ ฅ
-e
์‹œ์Šคํ…œ์˜ ๋ชจ๋“  ํ”„๋กœ์„ธ์Šค ์ถœ๋ ฅ (๋ชจ๋“  ์‚ฌ์šฉ์ž ํ”„๋กœ์„ธ์Šค ํฌํ•จ)
-f
ํ”„๋กœ์„ธ์Šค์— ๋Œ€ํ•œ full format ์ •๋ณด ์ถœ๋ ฅ. (UID, PID, PPID, C, STIME, TTY, TIME, CMD โ€ฆ)
โ€ข
์ผ๋ฐ˜์ ์œผ๋กœ ์‹œ์Šคํ…œ ๋ชจ๋‹ˆํ„ฐ๋ง ๋ฐ ํ”„๋กœ์„ธ์Šค ์ƒํƒœ๋ฅผ ํ™•์ธํ•  ๋•Œ ps -aux๋ฅผ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉํ•œ๋‹ค
โ€ข
ps -ef๋Š” ํ”„๋กœ์„ธ์Šค๊ฐ„ ๊ด€๊ณ„(๋ถ€๋ชจ-์ž์‹)๋ฅผ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ์ฃผ๋กœ ์‚ฌ์šฉ๋œ๋‹ค
โ—ฆ
๋ถ€๋ชจ ํ”„๋กœ์„ธ์Šค๋ฅผ kill ํ–ˆ์„ ๊ฒฝ์šฐ ๋ชจ๋“  ์ž์‹ ํ”„๋กœ์„ธ์Šค๊ฐ€ ํ•จ๊ป˜ kill๋˜๊ธฐ ๋•Œ๋ฌธ์— ๊ด€๊ณ„๋ฅผ ํ™•์ธํ•ด์•ผ ํ•œ๋‹ค

pstree

โ€ข
ps ๊ณ„์ธต๊ฐ„ ๊ตฌ์กฐ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค
โ€ข
ps -ef --forest๋ฅผ ์‚ฌ์šฉํ•ด์„œ๋„ ํ”„๋กœ์„ธ์Šค์˜ ํŠธ๋ฆฌ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค

kill

kill -[n|signal] [PID]
Shell
๋ณต์‚ฌ
n
signal
Description
1
HUP
ํ”„๋กœ์„ธ์Šค ์ข…๋ฃŒ ์—†์ด ๊ตฌ์„ฑํŒŒ์ผ ๋ฆฌ๋กœ๋“œ
2
INT
ํ‚ค๋ณด๋“œ ์ธํ„ฐ๋ŸฝํŠธ (Ctrl + C์— ํ•ด๋‹น)
3
QUIT
ํ‚ค๋ณด๋“œ ์ข…๋ฃŒ ์‹ ํ˜ธ๋กœ, ํ”„๋กœ์„ธ์Šค๋ฅผ ์ข…๋ฃŒํ•˜๊ณ  ๋ฉ”๋ชจ๋ฆฌ ๋คํ”„ ์ƒ์„ฑ
9
KILL
์ฆ‰๊ฐ์ ์ธ ๊ฐ•์ œ์  ์ข…๋ฃŒ
15
TERM
์ •์ƒ์ ์ธ ์ข…๋ฃŒ. kill ๋ช…๋ น์–ด์˜ ๊ธฐ๋ณธ ์‹ ํ˜ธ
18
CONT
์ค‘์ง€๋œ ํ”„๋กœ์„ธ์Šค ๋‹ค์‹œ ์‹œ์ž‘
19
STOP
ํ”„๋กœ์„ธ์Šค ๋™์ž‘ ์ค‘์ง€
20
TSTP
ํ”„๋กœ์„ธ์Šค ๋™์ž‘ ์ค‘์ง€์‹œํ‚ค๊ณ  ๋‚˜์ค‘์— ๋‹ค์‹œ ์‹œ์ž‘ (Ctrl + Z์— ํ•ด๋‹น)

top

โ€ข
Linux ๋ฐ Unix ๊ณ„์—ด ์šด์˜์ฒด์ œ์—์„œ ์‹œ์Šคํ…œ์˜ ํ˜„์žฌ ์ƒํƒœ๋ฅผ ์‹ค์‹œ๊ฐ„์œผ๋กœ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๋Š”๋ฐ ์‚ฌ์šฉ๋˜๋Š” ์œ ํ‹ธ๋ฆฌํ‹ฐ
์ •๋ณด ํ•„๋“œ
์„ค๋ช…
PID
ํ”„๋กœ์„ธ์Šค ID
USER
ํ”„๋กœ์„ธ์Šค๋ฅผ ์‹คํ–‰ํ•œ ์‚ฌ์šฉ์ž
PR
ํ”„๋กœ์„ธ์Šค์˜ ์šฐ์„ ์ˆœ์œ„
NI
Nice ๊ฐ’ (์šฐ์„ ์ˆœ์œ„ ์กฐ์ •)
VIRT
๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰
RES
์‹ค์ œ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰
SHR
๊ณต์œ  ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰
S
ํ”„๋กœ์„ธ์Šค ์ƒํƒœ (Running, Sleeping, Stopped, โ€ฆ)
%CPU
CPU ์‚ฌ์šฉ ๋น„์œจ
%MEM
๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ ๋น„์œจ
TIME+
CPU ์‹œ๊ฐ„
COMMAND
์‹คํ–‰๋œ ๋ช…๋ น์–ด