Respuestas:
En los núcleos más nuevos (2.6.32+) en CentOS / RHEL puede cambiar esto en tiempo de ejecución con / proc / <pid> / limits:
cd /proc/7671/
[root@host 7671]# cat limits | grep nice
Max nice priority 0 0
[root@host 7671]# echo -n "Max nice priority=5:6" > limits
[root@host 7671]# cat limits | grep nice
Max nice priority 5 6
Como se documenta aquí , el prlimit
comando, introducido con util-linux 2.21 le permite leer y cambiar los límites de los procesos en ejecución.
Este es un seguimiento de la escritura /proc/<pid>/limits
, que no se integró en el núcleo de la línea principal. Esta solución debería funcionar.
Si aún no lo prlimit(1)
ha hecho, puede encontrar el código para una versión minimalista en la página de prlimit(2)
manual .
En la versión más reciente de util-linux-ng, puede usar el comando prlimit, para obtener más información, lea este enlace /superuser/404239/setting-ulimit-on-a-running-process
Puede probar ulimit man ulimit
con la opción -n, sin embargo, la página mag no admite la mayoría de los sistemas operativos y no permite que esto se configure.
Puede establecer un límite de descripciones de archivo de todo el sistema utilizando sysctl -w fs.file-max=N
y hacer que los cambios persistan después del arranque en/etc/sysctl.conf
Sin embargo, también sugeriría mirar el proceso para ver si realmente necesita tener tantos archivos abiertos en un momento dado, y si de hecho puede cerrar algunos archivos y ser más eficiente en el proceso.
ulimit
no aplica la configuración a los procesos en ejecución .