Опубликовано 17th Nov 2019 09:50:17 в категории Linux
Здравствуй, дорогой друг! Может случиться такая ситуация с любимым ПК или сервером, что он намертво зависнет, и перестанет реагировать на клавиши. Как показывает практика, большинство просто "ресетят" его, и дело с концом а потом жалуются на форумах, что данные потеряны, ололо. Но в Linux есть возможность избежать нажатия кнопки Reset (при условии, что само ядро не крешнулось, что бывает крайне крайне редко). Дело в том, что когда система, как говорят, "намертво зависла и не реагирует на клавиши", на самом деле это не значит, что ядро тоже зависло. Само ядро как раз не зависло, и оно способно принимать некоторые команды от некоторых клавиш, коими являются, например, несколько низкоуровненных сочетаний клавиш, реализованных в ядре, и которые могут быть использованы для отладки и восстановления зависнувшей системы. И эти сочетания напрямую связаны с клавишей SysRq. SysRq всегда работает, если работает ядро (клавиатурные комбинации с этой клавишей, о которых пойдет речь ниже, напрямую перехватываются ядром и соответствующий код является частью драйвера клавиатуры). В народе эти сочетания (как и саму процедуру safe-перезагрузки) называют REISUB. Почему так? А вот почему:
Бывают случаи, когда эти магические комбинации отключены по-умолчанию. Проверить это можно командой:
sysctl -a 2>/dev/null | grep -i sysrq
Если терминал в ответ выхлопнет:
kernel.sysrq = 0
значит sysrq и правда отключена. Для включения можно задействовать несколько способов:
kernel.sysrq = 1
sysrq_always_enabled=1(не забыть обновить grub.cfg с помощью grub-mkconfig -o /boot/grub/grub.cfg)
Второй способ позволяет сделать так, чтобы магические сочетания клавиш были включены во время загрузки ядра.
Собственно, вот и всё.
Мягких перезагрузок (а лучше, высоких аптаймов)!
Поддержите блог!