23.2. 起動時のサービスの優先度の変更


systemd を使用すると、起動プロセス中に起動されるサービスのリアルタイム優先度を設定できます。

ユニット設定ディレクティブを使用して、起動プロセス時のサービスの優先度を変更します。ブートプロセスの優先順位の変更は、/etc/systemd/system/service.service.d/priority.conf の service セクションにある以下のディレクティブを使用して行います。

CPUSchedulingPolicy=
実行されるプロセスの CPU スケジューリングポリシーを設定します。Linux で利用可能なスケジューリングクラス (otherbatchidlefiforr) のいずれかを受け取ります。
CPUSchedulingPriority=
実行されるプロセスの CPU スケジューリングの優先度を設定します。設定可能な優先度の範囲は、選択した CPU スケジューリングポリシーにより異なります。リアルタイムスケジューリングポリシーでは、1 (最低優先度) から 99 (最高優先度) までの整数を使用できます。

前提条件

  • 管理者権限がある。
  • システムの起動時に実行するサービス。

手順

  1. 既存のサービスの場合、そのサービス用の補助的なサービス設定ディレクトリーファイルを作成します。

    # cat <<-EOF > /etc/systemd/system/mcelog.service.d/priority.conf
  2. ファイルの [Service] セクションに、スケジューリングポリシーと優先度を追加します。

    以下に例を示します。

    [Service]
    CPUSchedulingPolicy=fifo
    CPUSchedulingPriority=20
    EOF
  3. systemd スクリプトの設定を再読み込みします。

    # systemctl daemon-reload
  4. サービスを再起動します。

    # systemctl restart mcelog

検証

  • サービスの優先度を表示します。

    $ tuna -t mcelog -P

    この出力は、設定されているサービスの優先度を示します。

    以下に例を示します。

                        thread       ctxt_switches
      pid SCHED_ rtpri affinity voluntary nonvoluntary             cmd
    826     FIFO    20  0,1,2,3        13            0          mcelog
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る