Как использовать dhcpcd из сетевого менеджера вместо dhclient?

Мне обычно нравится использовать хром, но это единственное программное обеспечение на моем Ubuntu, которое гарантированно заморозит всю ОС, если будет достаточно времени. И в некоторых случаях я буквально ничего не могу сделать, кроме холодной перезагрузки. Если у меня уже было другое TTY, открытое (Alt + Ctrl + Fn), то я могу или не могу переключиться на него, чтобы выпустить killall chrome, который немедленно исправит ОС. То же самое, если я уже подключился к SSH. Иногда курсор мыши перемещается по экрану, но абсолютно ничего не будет реагировать. Иногда даже не курсор мыши.

В любом случае, я обнаружил экспериментально, что оперативная память иссякает с использованием хрома; Некоторые ужасные утечки памяти. Итак, что я сделал, чтобы избежать полной заморозки ОС до такой степени, что это не спасение, это несколько DIY. Я создал простой скрипт bash и установил его под консоль моего пользователя. Я запускаю его каждую минуту. Он проверяет размер свободной ОЗУ, и если он идет под моим определенным лимитом (я использую 200 МБ), он выдает killall chrome, 3 раза подряд (на всякий случай). После этого вы получите хром, который исчезнет с вашего экрана, но появится диалоговое окно с сообщением о том, что произошло, сколько у вас осталось памяти и сколько у вас осталось после его восстановления с хром. Скрипт выглядит следующим образом:

#!/bin/sh
#SETTINGS:
MIN_RAM_BEFORE_KILLING_CHROME_MB=200
#DATA COLLECTION:
FREE_RAM=$(free -mo | tr -s ' ' | cut -d ' ' -f 4 | awk '$0 == "free" {i=1;next};i && i++ <= 1')
echo "Free RAM: $FREE_RAM"
#ACTION:
if [ $FREE_RAM -lt $MIN_RAM_BEFORE_KILLING_CHROME_MB ]; then
    echo "time to kill chrome...";
    killall chrome &
    sleep 1
    killall chrome &
    sleep 1
    killall chrome &
    FREE_RAM2=$(free -mo | tr -s ' ' | cut -d ' ' -f 4 | awk '$0 == "free" {i=1;next};i && i++ <= 1')
    DISPLAY=:0 nohup zenity --info --text="Chrome was killed, because your RAM had only $FREE_RAM MB free.\nNow you have $FREE_RAM2 MB free."  2>/dev/null &
else
    echo "Not yet. Will kill chrome when RAM goes under $MIN_RAM_BEFORE_KILLING_CHROME_MB.";    
fi;
#INSTALLATION:
# crontab -u <username> -e
# then add this script

Итак, когда я достиг критического минимума в своей ОЗУ, мой хром убит, и я вижу это:

0
задан 13 May 2018 в 11:11

0 ответов

Другие вопросы по тегам:

Похожие вопросы: