GNU/Linux >> Linux の 問題 >  >> Cent OS

CentOS / RHEL 5、6、7 で nproc (ハードおよびソフト) 値を設定する方法

この投稿では、Linux システム管理者がオペレーティング システムの各ユーザーに許可されるプロセス数を制限する方法について概説します。プロセスの最大数が許可される場所が 2 つあります (nproc)。 ) を構成できます。

  • /etc/security/limits.conf
  • /etc/security/limits.d/90-nproc.conf (CentOS/RHEL 5,6) および /etc/security/limits.d/20-nproc.conf (CentOS/RHEL 7)

pam_limits の man ページから

デフォルトでは、制限は /etc/security/limits.conf から取得されます 構成ファイル。次に、/etc/security/limits.d/ の個々の *.conf ファイル ディレクトリが読み込まれます。ファイルは「C」ロケールの順に解析されます。個々のファイルの効果は、すべてのファイルが解析順に連結された場合と同じです。モジュールオプションで構成ファイルが明示的に指定されている場合、上記のディレクトリ内のファイルは解析されません。

現在の nproc ソフト/ハード制限の表示

Red Hat Enterprise Linux システムは、2 種類の値を使用して制限を定義します:soft そしてハード .違いは、「ソフト」制限は「ハード」制限まで調整できるのに対し、「ハード」制限は減らすことしかできず、ユーザーが持つことができる最大リソース制限であることです.

ユーザーが「ulimit -n」コマンドを実行するたびに、「ソフト」制限が表示されます。したがって、「/etc/security/limits.conf」ファイルにハード値が設定されている場合、デフォルトでは表示されません。

– ソフト リミットを表示するには、以下のコマンドを使用します:

# ulimit -u -S

– 同様に、ハード リミットを表示するには、以下のコマンドを使用します:

# ulimit -u -H

nproc (ハードおよびソフト) 制限の設定方法

<強い>1.ソフト nproc 制限を一時的に設定する
N が「ハード」制限以下の場合、「ハード」制限に合わせて「ソフト」制限を調整できます。

# ulimit -n N

例:

# ulimit -n 1024

上記の値は永続的ではなく、再ログインしても保持されません。上記のコマンドをユーザーの bash プロファイルに入力すると、ユーザーがログインするたびに制限が設定されます。

# vim ~/.bash_profile
ulimit -n 1024

<強い>2. nproc のハード/ソフト制限を永続的に設定する
– システム全体で nproc 制限を無制限に設定するには、ファイル /etc/security/limits.d/90-nproc.conf (RHEL5、RHEL6)、/etc/security/limits.d/20-nproc. conf (RHEL7) を読み取る必要があります。デフォルトでは、ルールは /etc/security/limits.conf ファイルから読み取られます。
– さらに、特定のアプリケーションまたはサービス専用の /etc/security/limits.d ディレクトリに個別の構成ファイルを作成できます。
– ユーザー プロセスのデフォルトの制限は、ファイル /etc/security/limits.d/90-nproc.conf (RHEL5、RHEL6)、/etc/security/limits.d/20-nproc.conf で定義されています。 (RHEL7)、フォーク爆弾などの悪意のあるサービス拒否攻撃を防止します。

nproc のハード/ソフト制限を設定するには、次の構文を使用します。

# vi /etc/security/limits.conf
[domain] [type] [item] [value]

ここでは、
[ドメイン] ユーザー名、グループ名、またはワイルドカード エントリを指定できます。
[type] 制限のタイプを示し、次の値を持つことができます:

  • ソフト :これはユーザーが変更できるソフト制限です
  • 難しい :これは、スーパー ユーザーによって設定され、カーネルによって適用されるソフト リミットの上限です

[アイテム] 制限を設定するリソースです。

nproc 制限の設定例

以下は、ファイル /etc/security/limits.conf ファイルと /etc/security/limits.d/90-nproc.conf (RHEL5、RHEL6)、/etc/security/limits を使用して nproc 値を設定するいくつかの例です。 d/20-nproc.conf (RHEL7):

1. 次の例では、limits.conf に 2047 のハード リミットがあるため、nproc リミットは 2047 に設定されています。

# cat /etc/security/limits.conf | grep nproc | grep -v ^#
test hard nproc 2047
test soft nproc 16384
# cat /etc/security/limits.d/90-nproc.conf | grep nproc | grep -v ^#
* soft nproc 1024
root soft nproc unlimited
test soft nproc 10023
# ulimit -u
2047

2. 最後のエントリが「test soft nproc 1022」であるため、ここでは 1022 が使用されます。最大ハード制限は「1025」になります。

# cat /etc/security/limits.conf | grep nproc | grep -v ^#
test hard nproc 2048
test soft nproc 16384
# cat /etc/security/limits.d/90-nproc.conf | grep nproc | grep -v ^#
* soft nproc 1024
* hard nproc 1025
root soft nproc unlimited
test hard nproc 1025
test soft nproc 1022
# ulimit -u
1022

3. ここでは「test hard nproc 1025」が設定されているため 1025 が使用され、ソフト リミットがハード リミットを超えているため「test soft nproc 1066」が使用されています。

# cat /etc/security/limits.conf | grep nproc | grep -v ^#
test hard nproc 1001
test soft nproc 16384
# cat /etc/security/limits.d/90-nproc.conf | grep nproc | grep -v ^#
* soft nproc 1024
* hard nproc 1025
root soft nproc unlimited
test hard nproc 1025
test soft nproc 1066
# ulimit -u
1025

4. ここで 1066 が使用されているのは、最後のエントリが「test soft nproc 1066」であり、1066 がハード リミットを超えていないためです。

# cat /etc/security/limits.conf | grep nproc | grep -v ^#
test hard nproc 1001
test soft nproc 16384
# cat /etc/security/limits.d/90-nproc.conf | grep nproc | grep -v ^#
* soft nproc 1024
* hard nproc 1025
root soft nproc unlimited
test hard nproc 1100
test soft nproc 1066
# ulimit -u
1066
/etc/security/limits.conf ファイルについて


Cent OS
  1. CentOS / RHEL 7 :telnet をインストールして構成する方法

  2. CentOS / RHEL 7 :timedatectl を使用して日付、時刻 / NTP およびタイムゾーンを設定する方法

  3. CentOS/RHEL 7 および 8 で RAR ファイルを抽出する方法

  1. CentOS 7 /RHEL7でホスト名を設定または変更する方法

  2. CentOS/RHELおよびFedoraにPython3.5をインストールする方法

  3. CentOS/RHEL 7 および 8 に Mokutil パッケージをインストールする方法

  1. RHEL 8 /CentOS8にsambaをインストールして設定する方法

  2. CentOS / RHEL に Samba をインストールして構成する方法

  3. CentOS/RHEL 5 および 6 で FTP を有効にする方法