概要
実行中プロセスのナイス値を変更します。数値が大きいほど優先度は下がり、小さいほど優先度は上がります。
基本構文
renice 優先度 [-p|-g|-u] 識別子...詳細解説
reniceは、実行中のプロセス、プロセスグループ、ユーザー単位のナイス値を変更するコマンドです。niceが起動時の優先度指定なら、reniceは動いている処理の優先度調整です。
Linuxでは、一般にナイス値が大きいほど実行優先度は低くなります。つまり「数値を上げると遠慮する」「数値を下げると優先されやすくなる」と理解すると混乱しにくくなります。
優先度を上げる方向の変更は通常、管理者権限が必要です。まずはpsやtopで現在値を確認し、負荷状況とあわせて判断します。
このコマンドを使う場面
高負荷処理を少し遠慮させたい時、長時間バッチの優先度を下げたい時、調査中に一時的な優先度調整を行いたい時に使います。
まず安全に試す方法
1. sleep 300 &
2. ps -o pid,ni,cmd -p $!
3. renice +5 -p $!
4. ps -o pid,ni,cmd -p $!
3分ミッション
少しでも手を動かすと定着しやすくなります。終わった項目にチェックを入れてください。
-
sleepを起動し、reniceでナイス値を変更してpsで前後差を確認します。
資格試験との関連
-
LinuC レベル1
範囲: 103.6 プロセスの実行優先度の変更根拠: officialLinuCレベル1では、niceとreniceの使い分けが重要です。
-
LPIC-1
範囲: 103.6 プロセス実行優先度の変更根拠: officialLPIC-1では、実行優先度の変更と監視が問われます。
-
共通基礎
範囲: Linuxコマンド基礎根拠: editorial試験横断で、reniceは負荷調整の基礎として重要です。
実行結果サンプル
-
sleep 300 & ps -o pid,ni,cmd -p $!PID NI CMD 12345 0 sleep 300 -
renice +5 -p $! ps -o pid,ni,cmd -p $!PID NI CMD 12345 5 sleep 300
戻り値コード
- 0 正常終了。処理に成功しました。
- >0 対象不存在、権限不足、不正な引数などで処理できませんでした。
使用例
renice +5 -p 1234renice +10 -u appuserps -o pid,ni,cmd -p 1234
よくあるエラー
-
-5を指定したのに拒否された 原因: 優先度を上げる方向の変更には管理者権限が必要なことが多いです。対処: 必要ならsudoで実行します。
-
数値の向きが分からなくなる 原因: 大きいほど優先度が低い規則を逆に覚えています。対処: ナイス値は「大きいほど遠慮する」と覚えます。
導入・互換性情報
POSIX系で概念は共通ですが、許可される範囲や権限制御は環境差があります。優先度を上げる方向の変更は通常root権限が必要です。
注意点 / セキュリティリスク
危険度は中程度です。重要な処理の優先度を不用意に下げると遅延の原因になり、逆に上げると他の処理を圧迫します。
FAQ
-
Q. niceとの違いは何ですか。 A. niceは起動時、reniceは実行中プロセスの優先度変更に使います。
-
Q. 優先度を上げると必ず速くなりますか。 A. 必ずではありません。I/O待ちなどが主因なら効果は限定的です。
参照リンク
- カテゴリー: Process And Jobs
- レベル: Practical
- 対応試験: LinuC, LinuC レベル1, LPIC, LPIC-1, 共通基礎