GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come impostare i valori nproc (hard e soft) in CentOS / RHEL 5,6,7

Questo post illustra come un amministratore di sistema Linux può limitare il numero consentito di processi per ciascun utente del sistema operativo. Esistono due posizioni in cui è consentito il numero massimo di processi (nproc ) può essere configurato.

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

dalla pagina man di pam_limits

Per impostazione predefinita, i limiti sono presi da /etc/security/limits.conf file di configurazione. Quindi i singoli file *.conf da /etc/security/limits.d/ vengono lette le directory. I file vengono analizzati uno dopo l'altro nell'ordine delle impostazioni locali "C". L'effetto dei singoli file è lo stesso come se tutti i file fossero concatenati insieme nell'ordine di analisi. Se un file di configurazione è specificato in modo esplicito con un'opzione del modulo, i file nella directory precedente non vengono analizzati.

Visualizzazione dei limiti soft/hard correnti di nproc

Il sistema Red Hat Enterprise Linux utilizza due tipi di valori per definire i limiti:soft e difficile . La differenza è che il limite "soft" può essere regolato fino al limite "hard" mentre il limite "hard" può essere solo ridotto ed è il limite massimo di risorse che un utente può avere.

Ogni volta che un utente esegue un comando "ulimit -n", verrà presentato con il limite "soft". Quindi, se il file '/etc/security/limits.conf' ha un valore fisso impostato, non verrà presentato per impostazione predefinita.

– Per visualizzare i limiti soft, utilizzare il comando seguente:

# ulimit -u -S

– Allo stesso modo, per visualizzare i limiti rigidi, utilizzare il comando seguente:

# ulimit -u -H

Come impostare i limiti di nproc (Hard e Soft)

1. Impostazione temporanea dei limiti di soft nproc
Il limite "soft" può essere regolato sul limite "hard" con il seguente dove N è inferiore o uguale al limite "hard".

# ulimit -n N

Ad esempio:

# ulimit -n 1024

Il valore sopra non è permanente e non persisterà tra i nuovi accessi. Puoi inserire il comando sopra nel profilo bash degli utenti in modo che il limite sia impostato ogni volta che l'utente effettua l'accesso.

# vim ~/.bash_profile
ulimit -n 1024

2. Impostazione permanente dei limiti hard/soft di nproc
– Per impostare il limite di nproc su un sistema illimitato, il file /etc/security/limits.d/90-nproc.conf (RHEL5, RHEL6), /etc/security/limits.d/20-nproc. conf (RHEL7) dovrebbe leggere. Per impostazione predefinita, le regole vengono lette dal file/etc/security/limits.conf.
– Inoltre, puoi creare singoli file di configurazione nella directory /etc/security/limits.d specifici per determinate applicazioni o servizi.
– Un limite predefinito dei processi utente è definito nel file /etc/security/limits.d/90-nproc.conf (RHEL5, RHEL6), /etc/security/limits.d/20-nproc.conf (RHEL7), per prevenire attacchi dannosi Denial of Service, come fork bomb.

Per impostare un limite hard/soft di nproc, usa la sintassi seguente.

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

Qui,
[dominio] può essere un nome utente, il nome di un gruppo o una voce con caratteri jolly.
[tipo] denota il tipo del limite e può assumere i seguenti valori:

  • morbido :Questo è un limite soft che può essere modificato dall'utente
  • difficile :Questo è un limite al limite software impostato dal super utente e imposto dal kernel

[elemento] è la risorsa per cui impostare il limite.

Esempi di impostazione dei limiti di nproc

Di seguito sono riportati alcuni esempi di impostazione dei valori nproc utilizzando i file /etc/security/limits.conf e /etc/security/limits.d/90-nproc.conf (RHEL5, RHEL6), /etc/security/limits. d/20-nproc.conf (RHEL7):

1. Nell'esempio seguente, il limite di nproc è impostato su 2047 poiché esiste un limite rigido di 2047 in limit.conf.

# 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. Qui viene utilizzato 1022 perché l'ultima voce è "test soft nproc 1022", il limite massimo rigido sarebbe "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. Qui viene utilizzato 1025 perché è impostato "test hard nproc 1025", viene utilizzato "test soft nproc 1066" poiché il limite soft supera il limite hard.

# 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. Qui viene utilizzato 1066 perché l'ultima voce è "test soft nproc 1066" e 1066 non supera il limite rigido.

# 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
Comprensione del file /etc/security/limits.conf


Cent OS
  1. Come impostare o modificare il nome host in CentOS 7 / RHEL 7

  2. CentOS / RHEL 7 :Come impostare data, ora / NTP e fuso orario usando timedatectl

  3. Come installare e configurare Samba in CentOS/RHEL

  4. Come abilitare FTP in CentOS/RHEL 5 e 6

  5. Come installare il pacchetto Mokutil su CentOS/RHEL 7 e 8

Come impostare/modificare il nome host in CentOS 8 / RHEL 8

Come installare e utilizzare Firewalld in CentOS/RHEL

Come installare Samba su RHEL e CentOS Stream

Come installare e configurare Jenkins su CentOS 8 / RHEL 8

Come installare e configurare Smartctl su CentOS/RHEL 8 e Ubuntu 20.04

Come installare Wine 5.0 su CentOS, RHEL e Fedora