Как вы знаете, несмотря на свою надежность, Ubuntu не всегда гарантирует полную защиту . Иногда какое-либо приложение или ошибка могут привести к сбою системы, не позволяя запустить консоль для выполнения каких-либо операций или перезагрузить компьютер и т. д. В тех крайних случаях, когда у вас нет другого выбора, вместо выключения компьютера путем удерживания кнопки питания или использования кнопки перезагрузки, у вас есть другое решение.
Этот вариант предполагает нажатие комбинации клавиш, например, Alt+Print Screen+REISUB . Это заставит систему отреагировать и перезагрузиться, выйдя из зависшего состояния. Не забудьте удерживать Alt+Print Screen, а затем вы можете поочередно нажимать следующие клавиши, не удерживая их все одновременно (разумеется): R, E, I, S, U и B. Проблема в том, что это может не работать в некоторых версиях Ubuntu…
Эта функция активирует системный запрос (SysReq) , чтобы инициировать обработку запроса ядром и, в данном случае, перезапуск зависшей системы. Клавиши используются для:
- A: Возвращает управление клавиатуре или unRaw.
- E: Завершить все процессы или tErm.
- I: убить процессы, которые остались живыми или полностью работоспособными.
- S: синхронизировать диски или синхронизировать.
- U - монтировать все файловые системы как доступные только для чтения или размонтировать.
- B: перезагрузите компьютер или перезагрузите компьютер.
Если эта функция отключена по умолчанию в вашей версии системы, это легко исправить. Чтобы включить её и заставить систему реагировать на комбинации Alt+Print Screen для различных функций (поскольку их больше, чем показано на скриншоте), необходимо выполнить следующие действия:
echo "kernel.sysrq = 1" >> /etc/sysctl.d/99-sysctl.conf
Другой вариант — использовать следующую команду, которая даст тот же эффект :
sysctl -w kernel.sysrq=1
Помните, что для предыдущих команд вам нужны привилегии, поэтому желательно делать это с помощью sudo или, если это не удается, с правами root.
И отныне комбинация клавиш должна работать ... Помните, что если вы измените ее в файле / proc / sys / kernel / sysrq, она будет работать, но не выживет при перезапуске системы, поэтому у вас будет чтобы изменить это снова. То есть не постоянно.
Подробнее о magic SysRq
То, что вы только что сделали с командой с предыдущего устройства, изменило конфигурацию ядра на 1, что активирует все функции SysRq. Однако следует знать, что существуют и другие возможные значения , если вас это заинтересует:
- 0 - полностью отключить SysRq.
- 1 - включить все функции SysRq.
- > 1: битовая маска для разрешения определенных функций:
- 2 - включает управление с консоли на уровне журнала.
- 4: включить управление с клавиатуры (SAK, развернуть)
- 8 - Включить отладочные дампы процессов и т. Д.
- 16: включить команду синхронизации.
- 32: позволяет перемонтировать в режиме только для чтения.
- 64: включить сигнализацию процесса (term, kill, oom-kill)
- 128: разрешить перезагрузку / выключение.
- 176 - разрешает только синхронизацию, перезагрузку и повторное подключение в режиме только для чтения
- 256: позволяет отслеживать все задачи RT
Тем не менее, помимо R, E, S, I, U и B, существуют и другие волшебные клавиши , которые можно использовать для отправки определенных запросов операционной системе. Их можно использовать последовательно, как RESIUB, или по отдельности, например, Alt+Print Screen+S, Alt+Print Screen+B и т. д. А чтобы дать вам представление о еще большем количестве возможностей, вот список:
- B: небезопасно перезагружать компьютер. То есть без синхронизации дисковых буферов или размонтирования смонтированных разделов. Это может привести к потере данных или к повреждению записываемых в то время данных. Это похоже на нажатие кнопки физического сброса или нажатие кнопки ВКЛ / ВЫКЛ другого портативного оборудования или AIO.
- C: вызывает сбой, выгружая основную системную память на диск.
- D: смонтирует системные замки.
- E: отправляет сигнал SIGTERM всем процессам, кроме init / systemd / upstart,… То есть он убивает все запущенные процессы, кроме этого.
- F: вызывает OOM Kill для решения некоторых случаев, когда системе не хватает памяти.
- G: войдите в режим отладки консоли, используя буфер кадра.
- H: покажет справку по использованию SysRq.
- J: принудительное замораживание файловых систем или файловых систем с помощью FIFREEZE.
- K: убить все консольные процессы, которые вы используете. Это также включает график.
- L: показывает обратную трассировку стека всех активных процессоров в системе. Если есть какие-либо неактивные или отключенные вручную, он ничего о них не покажет.
- M: показывает информацию из вашей памяти.
- N: сбросить до значений по умолчанию для всех процессов с высоким приоритетом и в реальном времени. Это уменьшит проблемы с конфликтом ресурсов.
- Или: он полностью выключит компьютер. То есть он не бездействует, как остановка.
- P: показать регистры и флаги.
- Q: Показать все активные таймеры и источники часов.
- О: Измените режим клавиатуры с RAW на XLATE.
- S: он синхронизирует буферы диска или дисков, то есть память, в которой хранятся операции доступа, которые необходимо выполнить. Таким образом, ваши данные не будут повреждены, если вы извлечете диск или внезапно перезагрузите компьютер.
- T: отображает список задач.
- U: изменить режим монтирования разделов на чтение или только чтение.
- V: принудительный сброс консоли фреймбуфера.
- W: показывает список заблокированных задач.
- Пробел: покажет волшебные ключи SysRq, доступные на вашем компьютере.
Помните, что не все из них будут работать во всех режимах ...