GNU/Linux >> Tutoriales Linux >  >> Ubuntu

¿Establecer el ajuste Oom Killer para el proceso al iniciar?

¿Hay alguna manera de establecer el valor de ajuste del asesino OOM justo cuando se inicia un proceso daemon (Apache en mi caso)? Me gustaría dar a los procesos de Apache una mayor probabilidad de ser eliminados y hacer que sea virtualmente imposible que el asesino de OOM elimine algunos servicios más vitales.

Respuesta aceptada:

Creo que lo mejor sería agregar un script separado como parte de su init.d. En él, querrás hacer algo como esto

echo 15 > /proc/`pidof APP_NAME`/oom_adj

El pidof APP_NAME recuperará el ID de proceso de la aplicación con ese nombre. Escribir 15 en /proc/{pid}/oom_adj aumenta la "maldad" del proceso {pid}, lo que aumenta las probabilidades de que el asesino OOM lo elimine.

El artículo Taming the OOM killer de LWN.net también sugiere algunas otras ideas que se sugirieron para permitir la especificación de un "oom_victim", pero no estoy seguro de que ninguna de ellas esté realmente en el kernel.

Por cierto:la mejor solución sería evitar tener que usar OOM Killer en primer lugar. Recuerde el lema no escrito de Micro$oft:No hay problema que más RAM no pueda solucionar.

[Nota:si pudiera haber más de uno de estos procesos, es posible que desee revisar un poco el código.]


Ubuntu
  1. Asesino de falta de memoria de Linux

  2. Cómo configurar la afinidad de la CPU para el proceso SYSTEMD en CentOS/RHEL 7

  3. ¿Cómo configurar la afinidad de la CPU para un proceso de C o C++ en Linux?

  4. Cómo configurar la ID del proceso en Linux para un programa específico

  5. ¿Usando prctl PR_SET_NAME para establecer el nombre del proceso o subproceso?

Configurar actualizaciones automáticas desatendidas para Ubuntu 20.04

Nice and Renice:establezca la prioridad del proceso en Linux

¿Hacer que Killer Wireless-ac 1535 funcione para instalar Ubuntu 16.04?

¿Cómo configurar Tls para Postfix en Ubuntu?

Encontrar qué proceso fue eliminado por Linux OOM killer

¿Cómo configurar el swapiness por proceso para Linux?