Cómo aumentar el límite de archivos abiertos en Ubuntu y Debian

Cómo aumentar el límite de archivos abiertos en Ubuntu y Debian

Algunas veces enfrentamos problemas como "Demasiados archivos abiertos"En un sistema de Linux. Significa que nuestro servidor ha alcanzado el límite de archivo Open Max. Esto sucede debido a los límites de recursos establecidos por el sistema para cualquier usuario o sesión. Por ejemplo, el tamaño máximo de los archivos creados, el tamaño máximo que puede bloquearse en la memoria, el tiempo máximo de CPU utilizado, el número máximo de procesos permitidos, el tamaño máximo de la memoria virtual disponible.

Básicamente hay dos tipos de límites:

  • A límite duro es el límite máximo permitido para un usuario o sesión, que el superusor/root está establecido.
  • A límite suave ¿Es el valor efectivo actual para el usuario o la sesión?. Que puede aumentar por el usuario hasta el límite duro.

Verifique los límites actuales

El ulimit El comando proporciona control sobre los recursos disponibles para cada usuario a través de un shell. Puede usar el siguiente comando para
Para obtener la configuración actual.

ulimit -a 

Para ver el límite duro actual o el límite suave, use el siguiente comando.

ULIMIT -SN # Verifique el límite suave Ulimit -Hn # Verifique el límite duro 

Límite de aumento para la sesión actual

La mayoría de los sistemas operativos pueden cambiar el límite de archivos abiertos para la sesión de shell actual utilizando el comando ulimit -n:

ulimit -n 200000 

Aumentar el límite por usuario

Puede definir el límite de archivo abierto por usuario en un sistema Linux basado en Debian. Para establecer el límite de usuario, editar/etc/seguridad/límites.Archivo confirmación en un editor de texto.

sudo vim/etc/seguridad/límites.confusión 

Agregue los siguientes valores en el archivo:

* Soft nproc 65535 * duro nproc 65535 * nofile suave 65535 * nofile duro 65535 Jack Soft nproc 200000 Jack Hard NPROC 200000 Jack Nofile Soft 200000 Jack Hard 200000 

Aquí especificamos límites separados que son 200000 para el usuario "Jack" y 65535 se aplicarán para el resto de los usuarios. Puede cambiar estos valores según sus requisitos.

Después de eso, habilite los PAM_LIMITS como siguientes:

sudo vim /etc /pam.d/sesión común 

Agregue la siguiente línea:

Se requiere sesión PAM_LIMITS.entonces 

Aumentar el límite de todo el sistema

También puede establecer los límites en todo el sistema editando el archivo de configuración SYSCTL. Editar sysctl.Archivo Conf:

vim /etc /sysctl.confusión 

Agregue la siguiente línea:

FS.file-max = 2097152 

Luego ejecute el siguiente comando para aplicar los cambios anteriores:

sysctl -p 

Los cambios anteriores aumentarán el número máximo de archivos que pueden permanecer abiertos en todo el sistema. El límite de usuario específico no puede ser más alto que el límite de todo el sistema.