GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo establecer valores nproc (Hard y Soft) en CentOS / RHEL 5,6,7

Esta publicación describe cómo un administrador del sistema Linux puede limitar la cantidad permitida de procesos para cada usuario del sistema operativo. Hay dos lugares donde se permite el número máximo de procesos (nproc ) se puede configurar.

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

de la página man de pam_limits

Por defecto, los límites se toman de /etc/security/limits.conf archivo de configuración. Luego, archivos individuales *.conf de /etc/security/limits.d/ se lee el directorio. Los archivos se analizan uno tras otro en el orden de la configuración regional "C". El efecto de los archivos individuales es el mismo que si todos los archivos estuvieran concatenados en el orden de análisis. Si un archivo de configuración se especifica explícitamente con una opción de módulo, los archivos en el directorio anterior no se analizan.

Visualización de los límites flexibles/duros actuales de nproc

El sistema Red Hat Enterprise Linux utiliza dos tipos de valores para definir los límites:soft y duro . La diferencia es que el límite "suave" se puede ajustar hasta el límite "duro", mientras que el límite "duro" solo se puede reducir y es el límite máximo de recursos que un usuario puede tener.

Cada vez que un usuario ejecuta un comando "ulimit -n", se le presentará el límite "suave". Por lo tanto, si el archivo '/etc/security/limits.conf' tiene un valor establecido, no se presentará de forma predeterminada.

– Para ver los límites flexibles, use el siguiente comando:

# ulimit -u -S

– Del mismo modo, para ver los límites estrictos, use el siguiente comando:

# ulimit -u -H

Cómo establecer límites nproc (duros y blandos)

1. Establecer límites suaves de nproc temporalmente
El límite 'suave' se puede ajustar sobre el límite 'duro' con el siguiente donde N es menor o igual que el límite 'duro'.

# ulimit -n N

Por ejemplo:

# ulimit -n 1024

El valor anterior no es permanente y no persistirá en los reinicios de sesión. Puede realizar una entrada del comando anterior en el perfil de bash de los usuarios para que el límite se establezca cada vez que el usuario inicie sesión.

# vim ~/.bash_profile
ulimit -n 1024

2. Establecer límites duros/blandos de nproc de forma permanente
– Para establecer el límite de nproc en un sistema ilimitado, el archivo /etc/security/limits.d/90-nproc.conf (RHEL5, RHEL6), /etc/security/limits.d/20-nproc. conf (RHEL7) debe leer. De manera predeterminada, las reglas se leen del archivo /etc/security/limits.conf.
– Además, puede crear archivos de configuración individuales en el directorio /etc/security/limits.d específicamente para ciertas aplicaciones o servicios.
– Se define un límite predeterminado de procesos de usuario en el archivo /etc/security/limits.d/90-nproc.conf (RHEL5, RHEL6), /etc/security/limits.d/20-nproc.conf (RHEL7), para evitar ataques maliciosos de denegación de servicio, como bombas de bifurcación.

Para establecer un límite duro/blando de nproc, utilice la siguiente sintaxis.

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

Aquí,
[dominio] puede ser un nombre de usuario, un nombre de grupo o una entrada comodín.
[tipo] denota el tipo de límite y puede tener los siguientes valores:

  • suave :Este es un límite suave que puede ser cambiado por el usuario
  • duro :Este es un límite en el límite suave establecido por el superusuario y aplicado por kernel

[elemento] es el recurso para el que establecer el límite.

Ejemplos de configuración de límites de nproc

A continuación se muestran algunos ejemplos de configuración de valores de nproc utilizando los archivos /etc/security/limits.conf y /etc/security/limits.d/90-nproc.conf (RHEL5, RHEL6), /etc/security/limits. d/20-nproc.conf (RHEL7):

1. En el ejemplo a continuación, el límite de nproc se establece en 2047, ya que hay un límite estricto de 2047 en limits.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. Aquí se usa 1022 porque la última entrada es "test soft nproc 1022", el límite duro máximo sería "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. Aquí se usa 1025 porque está configurado "test hard nproc 1025", se usa "test soft nproc 1066" porque el límite suave excede el límite duro.

# 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. Aquí se usa 1066 porque la última entrada es "test soft nproc 1066" y 1066 no excede el límite estricto.

# 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
Comprender el archivo /etc/security/limits.conf


Cent OS
  1. Cómo configurar o cambiar el nombre de host en CentOS 7 / RHEL 7

  2. Cómo instalar Python 3.5 en CentOS/RHEL y Fedora

  3. CentOS/RHEL 7:Cómo instalar y configurar telnet

  4. Cómo extraer archivos RAR en CentOS/RHEL 7 y 8

  5. Cómo instalar el paquete Mokutil en CentOS/RHEL 7 y 8

Cómo configurar/cambiar el nombre de host en CentOS 8 / RHEL 8

Cómo instalar y usar Firewalld en CentOS / RHEL

Cómo instalar Samba en RHEL y CentOS Stream

Cómo instalar y configurar Jenkins en CentOS 8 / RHEL 8

Cómo instalar y configurar Smartctl en CentOS/RHEL 8 y Ubuntu 20.04

Cómo instalar Wine 5.0 en CentOS, RHEL y Fedora