Czy jest to kontynuacja rozwiązań ograniczających pamięć dla chciwych aplikacji, które mogą spowodować awarię systemu operacyjnego? : ulimit i cgroups nie są przyjazne dla użytkownika, a poza tym nie będą działać z aplikacjami, które spawnują osobne procesy, takie jak Chrome / Chromium dla każdej nowej (grupy) kart.
Prostym i skutecznym rozwiązaniem, używanym w rzeczywistości przez system Windows 7, jest ostrzeżenie użytkownika, że systemowi brakuje pamięci. To proste okno wyskakujące ostrzegło mnie przed zawieszeniem się systemu w systemie Windows spowodowanym brakiem pamięci, podczas gdy nadal je napotykałem na dystrybucjach Ubuntu, które testowałem na żywo (gdzie dysk zamontowany w pamięci RAM zjadłby same 2 GB).
Czy istnieje jakiś sposób automatycznego ostrzegania użytkownika, że dostępna pamięć RAM zbliża się do zera, bez konieczności monitorowania gadżetu monitorowania pamięci? Z pewnością Conky można tak skonfigurować?
źródło
free -m
jest najlepszym rozwiązaniem.Odpowiedzi:
Sprawdź te skrypty: Potrzebujesz powiadomienia aplikacji / skryptu, gdy kończy się pamięć systemowa
PHP:
źródło
available=$(free -m | grep Mem | awk '{print $7}')
). Aby powiadomienie-wysyłanie działało z cronemLANG=en_US.UTF-8
na początku skryptu bash.Kolejny skrypt, który napisałem w tym celu:
źródło
notify-send
ignoruje parametr limitu czasu : - / Dlaczego nie ma dokumentacji dotyczącej kategorii i ikon giełdowych? Ponadto znaki nowej linii są ignorowane, a wiadomość zostaje obcięta .-u critical
rozwiązuje to.notify-send
nie ignoruje limitu czasu. To proces, który przyjmuje powiadomienie jako dane wejściowe i wyświetla je nad pulpitem, decyduje się zignorować limit czasu. Zobacz także: unix.stackexchange.com/q/251243/20336Zaktualizowana wersja skryptu, która działa bez użycia procps-ng 3.3.10
źródło
Zaktualizowano powyższy skrypt, aby dodać także szczegóły dotyczące 3 najbardziej wymagających procesów w pamięci. Zobacz na https://github.com/romanmelko/ubuntu-low-mem-popup
Oto sam skrypt:
źródło
Opcja z dostępną pamięcią RAM , procenty i wyświetla powiadomienia na pulpicie po wywołaniu przez cron (tj. Skrypt pętli nie musi być uruchamiany po ponownym uruchomieniu):
źródło