Este es un seguimiento de las soluciones de limitación de memoria para aplicaciones codiciosas que pueden bloquear el sistema operativo? : ulimit y cgroups no son fáciles de usar y, además, no funcionarían con aplicaciones que generen procesos separados, como Chrome / Chromium para cada nueva pestaña (grupo de).
La solución simple y efectiva, utilizada por Windows 7 en realidad, es advertir al usuario que el sistema operativo se está quedando sin memoria. Esta simple ventana emergente de advertencia me ha impedido que se congele el sistema con poca memoria en Windows, mientras seguía encontrándome con ellos en las distribuciones de Ubuntu que estaba probando en vivo (donde el disco montado en RAM consumiría solo 2 GB).
Entonces, ¿hay alguna forma de advertir automáticamente al usuario que la RAM disponible está cerca de cero, sin que el usuario tenga que vigilar algún dispositivo de monitoreo de memoria? ¿Seguramente Conky podría configurarse para hacer eso?
fuente
free -m
es el camino a seguir.Respuestas:
Verifique estos scripts: necesita alertas de aplicación / script cuando la memoria del sistema se está agotando
PHP:
fuente
available=$(free -m | grep Mem | awk '{print $7}')
). Para hacer que el envío de notificaciones funcione con cron, consulte anmolsinghjaggi.wordpress.com/2016/05/11/…LANG=en_US.UTF-8
al comienzo del script bash.Otro script que escribí para este propósito:
fuente
notify-send
ignora el parámetro de tiempo de espera : - / Y por qué no hay documentación sobre cuáles son las categorías y los iconos de valores? Además, las líneas nuevas se ignoran y el mensaje se trunca .-u critical
resuelve eso.notify-send
no ignora el tiempo de espera. Es el proceso que toma la notificación como entrada y la muestra sobre el escritorio que decide ignorar el tiempo de espera. Ver también: unix.stackexchange.com/q/251243/20336Versión actualizada del script que funciona con libre de procps-ng 3.3.10
fuente
Se actualizó el script anterior para agregar también detalles sobre los 3 principales procesos que requieren mucha memoria. Ver en https://github.com/romanmelko/ubuntu-low-mem-popup
Aquí está el script en sí:
fuente
Variante que usa RAM disponible , porcentajes y muestra notificaciones de escritorio cuando es llamado por cron (es decir, el script de bucle no tiene que iniciarse después del reinicio):
fuente