ユーザーのプロセス数のデフォルトで指定されたソフト制限またはハード制限を設定または変更する方法
Environment
- Red Hat Enterprise Linux 5
- Red Hat Enterprise Linux 6
- Red Hat Enterprise Linux 7
- Red Hat Enterprise Linux 8
- Red Hat Enterprise Linux 9
Issue
-
システム全体の設定ファイル
/etc/security/limits.d/90-nproc.conf
(RHEL5、RHEL6)、/etc/security/limits.d/20-nproc.conf
(RHEL7) は、デフォルトのnproc
制限を次のように指定します。* soft nproc 1024 root soft nproc unlimited
-
ただし、root でログインすると、
ulimit
には別の値が表示されます。$ ulimit -u 1024
-
この場合、これが
unlimited
ではないのはなぜですか? - ユーザーのプロセス数のデフォルトで指定された
soft limit
またはhard limit
を、設定または変更するにはどうすればよいですか?
Resolution
システム全体に nproc
制限を unlimited
に設定するには、/etc/security/limits.d/90-nproc.conf
(RHEL5、RHEL6) ファイル、/etc/security/limits. d/20-nproc.conf
(RHEL7 以降) ファイルは以下のようになります。
-
root
ユーザーの場合:root hard nproc unlimited
-
root ユーザーの場合 ('soft' と 'hard' の両方):
root - nproc unlimited
-
または、デフォルトのドメインの場合 ('soft' と 'hard' の両方)。以下に例を示します。
* - nproc unlimited
-
ドメインの
soft
値に適用されるunlimited
のオプションは、ドメインのhard
制限を超えることはできません。 詳細な説明と例については、What are the true user's ulimits? の記事を参照してください。 -
変更を有効にするには、再ログインします。
$ ulimit -u
-
セッションごとに制限を設定する別のオプションとして、コマンドラインで指定することが挙げられます。
$ ulimit -u unlimited
-
このコマンドは、
soft
とhard
の両方の制限に適用されます。 考えられるリスクについては、リンクされている記事を確認してください。
注記: RHEL5 および RHEL8 の pam では、/etc/security/limits.d の下にはファイルはありません。 必要に応じて、ファイルを作成します。
Root Cause
デフォルトでは、ルールは /etc/security/limits.conf
ファイルから読み込まれます。 これらのルールの形式に関する詳細な説明は、limits.conf (5) の man ページを参照してください。 さらに、特定のアプリケーションやサービス専用の /etc/security/limits.d
ディレクトリーに個別の設定ファイルを作成できます。 デフォルトでは、pam_limits モジュールは /etc/pam.d/
ディレクトリー内のファイルに多数含まれています。 ユーザープロセスのデフォルト制限は、Fork 爆弾などの悪意のあるサービス拒否 (DoS) 攻撃を回避するために、/etc/security/limits.d/90-nproc.conf
(RHEL5、RHEL6)、/etc/security/limits.d/20-nproc.conf
(RHEL7) のファイルで定義されています。 ユーザープロセスのデフォルト制限を 50 に変更するには、このファイルの値を変更します。
注記: RHEL8
および RHEL9
には、/etc/security/limits.d/20-nproc.conf
のようなファイルがないため、RHEL8
および RHEL9
で nproc
を制限する場合は、/etc/security/limits.d/
に /etc/security/limits.d/20-nproc.conf
のようなファイルを作成する必要があります。
Source: RHEL6 Security Guide, Chapter 2. Securing Your Network
This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.