Linux / 명령어 / nice - 새 명령의 CPU 우선순위 조정
nice는 새 명령을 시작할 때 CPU 스케줄링에 사용되는 nice 값을 지정합니다. 기본값보다 큰 nice 값은 일반적으로 다른 작업에 CPU를 양보하기 쉬운 방향입니다.
nice 명령어란?
Linux의 일반적인 nice 값 범위는 -20부터 19까지이며 값이 낮을수록 더 높은 우선순위입니다. nice는 이미 실행 중인 프로세스를 바꾸지 않습니다. 실행 중인 작업에는 renice를 사용하세요.
기본 문법
nice -n 조정값 명령 [인수 ...]
설치된 구현과 옵션은 배포판에 따라 다를 수 있습니다. man nice으로 현재 시스템의 설명을 확인하세요.
사용 예제
낮은 우선순위로 시작
기본 nice 값보다 10 높여 읽기 작업을 시작합니다.
nice -n 10 sha256sum large.log
기본 증가값으로 시작
GNU 구현에서 조정값을 생략하면 기본 증가값을 사용합니다.
nice sha256sum large.log
실제 값 확인
실행 중인 작업의 NI 열을 확인합니다.
ps -p 1234 -o pid,ni,cmd
새 프로세스의 nice 값 확인하기
nice는 새로 시작하는 프로세스의 스케줄링 nice 값을 설정합니다. 다음은 시험용 sleep을 값 10으로 시작한 뒤 확인하는 예제입니다.
nice -n 10 sleep 60 & ps -o ni,comm -p $!
예시 출력:
NI COMMAND 10 sleep
$!는 가장 최근 백그라운드 프로세스의 PID입니다. 일반적으로 숫자가 클수록 CPU 스케줄링 우선순위가 낮아지지만, 이는 CPU 사용량 상한을 뜻하지 않습니다. 이미 실행 중인 프로세스의 값을 바꾸려면 renice를 사용하세요.
주요 옵션과 형식
| 옵션·형식 | 설명 |
|---|---|
-n 값 |
기존 nice 값을 기준으로 새 명령의 조정값을 지정합니다. |
--adjustment=값 |
GNU 구현의 긴 옵션 형식입니다. |
인수 없는 실행 |
GNU 구현에서 현재 nice 값을 출력합니다. |
사용할 때 주의할 점
nice 값은 CPU 스케줄링의 힌트이지 실행 시간을 보장하거나 메모리·디스크 I/O 우선순위를 함께 바꾸는 기능이 아닙니다. nice 값을 낮춰 우선순위를 높이는 작업은 일반 사용자에게 허용되지 않을 수 있습니다. 큰 부하 문제는 원인 프로세스와 자원 종류를 먼저 확인하세요.
자주 묻는 질문
nice -n 10은 10만큼 더 빨라지나요?
아니요. 값이 커지면 보통 CPU 우선순위가 낮아지는 방향이며, 처리 속도의 일정한 배수를 뜻하지 않습니다.
공식 문서
옵션의 정확한 동작과 구현별 차이는 nice 관련 공식 문서에서 확인할 수 있습니다.









