/엔지니어/OS / 시스템/프로세스 관리 완전 가이드 — ps · kill ·
OS / 시스템초급UbuntuDebianCentOSpskillnice

프로세스 관리 완전 가이드 — ps · kill · nice · htop

ps로 프로세스 조회, kill로 신호 전송, nice/renice로 우선순위 조정, htop 실전 사용법까지 리눅스 프로세스 관리의 핵심을 정리합니다.

ps — 프로세스 조회

Bash
# 현재 세션 프로세스
ps

# 모든 프로세스 (BSD 스타일)
ps aux

# 모든 프로세스 (Unix 스타일)
ps -ef

# 특정 프로세스 검색
ps aux | grep nginx

# 트리 형태로 보기
ps axjf
pstree -p

# 특정 사용자 프로세스
ps -u deploy

# CPU / 메모리 기준 정렬
ps aux --sort=-%cpu | head -10
ps aux --sort=-%mem | head -10

주요 컬럼

컬럼의미
PID프로세스 ID
%CPUCPU 사용률
%MEM메모리 사용률
VSZ가상 메모리 크기 (KB)
RSS실제 메모리 사용량 (KB)
STAT상태 (S=슬립, R=실행, Z=좀비, D=I/O대기)

kill — 신호 전송

Bash
# 기본 종료 (SIGTERM, 15번 — 정상 종료 요청)
kill 1234

# 강제 종료 (SIGKILL, 9번 — 즉시 종료)
kill -9 1234
kill -KILL 1234

# 프로세스 이름으로 종료
pkill nginx
pkill -9 node

# 모든 일치 프로세스에 신호
killall nginx

# 신호 목록
kill -l

자주 쓰는 신호

신호번호의미
SIGTERM15정상 종료 요청
SIGKILL9강제 종료 (무시 불가)
SIGHUP1재시작 (설정 재로드)
SIGSTOP19일시 정지
SIGCONT18재개

nice · renice — 우선순위 조정

nice 값: -20(높은 우선순위) ~ +19(낮은 우선순위), 기본값 0

Bash
# 낮은 우선순위로 실행 (백그라운드 작업)
nice -n 10 tar czf backup.tar.gz /data

# 높은 우선순위 (root 필요)
sudo nice -n -10 ./critical-process

# 실행 중인 프로세스 우선순위 변경
renice -n 5 -p 1234        # PID 기준
renice -n 10 -u deploy     # 사용자 기준

# 현재 우선순위 확인
ps -o pid,ni,comm -p 1234

htop — 인터랙티브 모니터링

Bash
sudo apt install -y htop
htop

주요 단축키

동작
F2설정
F3 / /검색
F4필터
F5트리 뷰
F6정렬 기준 선택
F9신호 전송 (kill)
F10 / q종료
Space프로세스 태그
u사용자별 필터

백그라운드 프로세스 관리

Bash
# 백그라운드 실행
./long-task.sh &

# 작업 목록
jobs

# 포그라운드로 전환
fg %1

# 백그라운드로 전환 (Ctrl+Z 후)
bg %1

# 터미널 종료 후에도 유지
nohup ./script.sh > output.log 2>&1 &

# 실행 중인 프로세스 분리
disown %1
#ps#kill#nice#htop#프로세스#linux
편집 안내 · Editorial Note

이 가이드는 AI 도구를 활용해 초안을 구성하고 사람이 명령어·문맥을 검토해 발행했습니다. 운영체제와 도구 버전에 따라 결과가 달라질 수 있으므로 적용 전 공식 문서를 함께 확인하세요. 오류를 발견하시면 이메일로 제보해 주세요.

관련 공식 문서GNU/Linux man 페이지

질문 & 답변 (Q&A)

이 가이드에 대해 궁금한 점을 질문해보세요. 확인 후 답변드립니다.