학습 가이드
#20주 실습 커리큘럼

ps로 프로세스 보기와 우선순위 nice·renice

_리눅스 실습 커리큘럼 17/40 · 프로세스와 예약 작업 (9주차)_

3단계 프로세스입니다. 파일과 사용자를 다뤘으니 이제 "지금 서버에서 무엇이 돌고 있는가"를 봅니다. 서버가 느리다는 연락이 오면 첫 번째로 보는 것이 프로세스 목록입니다.

ps·nice·renice 프로세스 우선순위, 왜 필요한가

  • CPU 를 잡고 있는 프로세스를 찾아야 원인을 좁힐 수 있습니다.
  • 급하지 않은 배치 작업은 우선순위를 낮춰 띄우면 서비스에 영향을 주지 않습니다.
  • 리눅스마스터 2급 실기에서 nice/renice 는 프로세스 단원의 대표 문제입니다.

이번 편에서 익힐 것

  1. 원하는 열만 보기 — ps -eo pid,ni,%cpu,comm
  2. 정렬 — --sort=-%cpu
  3. 낮은 우선순위로 시작 — nice -n 10
  4. 실행 중 조정 — renice -n 10 -p PID
  5. PID 찾기 — pgrep -f

ps·nice·renice 프로세스 우선순위 핵심 명령어

ps -eo pid,user,ni,%cpu,comm --sort=-%cpu | head    # CPU 많이 쓰는 순
ps -u john -o pid,ni,args                           # 특정 사용자만
ps -o ni= -p 1234                                   # 한 PID 의 NI 값만

nice -n 10 ./heavy_batch.sh &      # NI 10 으로 백그라운드 실행
nice                               # 현재 셸의 NI 값(보통 0)

renice -n 10 -p 1234               # 실행 중 프로세스 조정
pgrep -f heavy_batch               # 이름(명령줄)으로 PID
  • NI 는 -20(급함)부터 19(양보)까지. 값이 클수록 CPU 를 양보합니다.
  • 방금 시작한 프로세스는 %cpu 가 아직 0 으로 보일 수 있습니다. 몇 초 뒤 다시 보세요.

ps·nice·renice 프로세스 우선순위 자주 하는 실수

  • 방향 착각 — "우선순위를 낮춘다" = NI 를 높인다.
  • & 누락 — 셸이 멈춰 다음 명령을 칠 수 없습니다.
  • ps -ef | grep 이름 에 grep 자신이 잡힘 — pgrep 을 쓰거나 grep [이]름.

ps·nice·renice 프로세스 우선순위 실습 문제

  • nice 값 지정해 백그라운드 프로세스 실행하기
  • 프로세스의 우선순위 변경하기
  • 프로세스 우선순위 확인 및 변경 - nice, renice

다음 편

다음 편은 프로세스 종료: kill·pkill·pgrep 제대로 쓰기 입니다. 화·금요일에 이어집니다.

<!-- publish_key:linux-path-20w-p17-post -->

댓글 0

아직 댓글이 없습니다. 궁금한 점이나 풀이 경험을 남겨 보세요.