CentOS7でプログラムの優先度を変更するやり方メモ

サーバー運用において、あるプログラムの優先度を下げて(上げて)実行させたいという時があります。そんな時に使うコマンドのメモ書きです。

もくじ

  • プログラムの優先度について
  • プログラム起動時に優先度を予めセットして実行
  • すでに起動済みのプログラムの優先度を後から変える

プログラムの優先度について

CentOSで実行されているプログラム(プロセス)には優先度があります。優先度が高ければ高いほど沢山のCPU時間を割り当てられます。優先度を設定するときは「nice値」を変更します。nice値は -20 ~ 19 までの整数を取ります。実行中のプログラムのnice値は以下の様なコマンドで確認できます。

いずれのコマンドでも「NI」のところに表示されている値がnice値になります(この例ではbitcoindのnice値が10になっています)。プロセスIDは「PID」のところに表示されます。

nice値は小さければ小さいほど優先度が高く(つまりnice値が-20のプロセスが一番優先度が高い)、大きければ大きいほど優先度が低くなります(同じくnice値が19のプロセスが一番優先度が低い)。デフォルトのnice値は基本的に0です。なお、nice値を増やす(優先度を下げる)ことは一般ユーザーの権限でもできますが、nice値を減らす(優先度を上げる)場合はroot権限が必要になるので注意です。

プログラム起動時に優先度を予めセットして実行

プログラム起動時に優先度をセットする場合にはniceコマンドを使います。

すでに起動済みのプログラムの優先度を後から変える

起動済みのプログラムの優先度を変えたい場合はreniceコマンドを使います。

ユーザーの優先度を変更することで、該当ユーザーが実行しているプログラム全ての優先度を一斉に変更することもできます。

参考リンク

このブログを応援する・寄付する

当ブログでは暗号通貨による寄付を募っております。

Bitcoin:

Monacoin:

Litecoin: