Клавиша SysRq — единственная прямая связь с ядром, которая работает всегда, если работает ядро, так как соответствующие комбинации напрямую перехватываются ядром и соответствующий код является частью драйвера клавиатуры.

Сначала нужно убедиться, что использование клавиши включено: в конфигурации ядра параметр CONFIG_MAGIC_SYSRQ должен иметь значение Y.

Если параметр отключён, то включить его можно командой:

1
 # echo 1 > /proc/sys/kernel/sysrq

Отключить обратно командой:

1
 # echo 0 > /proc/sys/kernel/sysrq

В некоторых графических окружениях (GNOME, KDE и т. п.) нажатие PrtSc/SysRq обычно приводит лишь к созданию скриншота, и последующая команда может не восприниматься ядром.

Это можно обойти, если дополнительно удерживать Ctrl, т.е. полная комбинация будет Ctrl+Alt+SysRq+клавиша.

Если вместо командной клавиши нажать любую другую, то на виртуальный текстовый терминал для сообщений ядра (обычно № 10) выведется несколько строчек краткой помощи по использованию.

Это удобно использовать как быстрый способ убедиться, что параметр CONFIG_MAGIC_SYSRQ в загруженном ядре включен.

Для получения краткой справки по буквам (и проверки работоспособности “магических” клавиш можно нажать Alt+SysRq+H.

Во все консоли, в которых кто-то залогинен, будет выведена краткая справка.

Для этих же целей может быть использована клавиша AltGr вместо Alt, если она присутствует на клавиатуре.

На некоторых ноутбуках и нетбуках клавиша SysRq будет работать только после нажатия клавиши Fn.

В таком случае Вам необходимо использовать такую комбинацию:

  • зажать Alt,

  • зажать Fn,

  • зажать SysRq,

  • отпустить Fn,

  • нажать букву.

Буквы

Alt + SysRq + H

Help — выводит все доступные возможности SysRq, выделяя большой буквой клавишу действия;

Alt + SysRq + 0-9

Loglevel 0-9 — позволяет менять уровень подробности вывода от 0 (только критические сообщения) до 8 (самый подробный режим);

Alt + SysRq + B

reBoot — выполняет немедленную перезагрузку системы аналогично кнопке RESET (без синхронизации и размонтирования файловых систем);

Alt + SysRq + C

Crashdump — выполняет директиву kexec для перезагрузки чтобы получить сведения об ошибках;

Alt + SysRq + D

holDs — показывает все блокировки, которые держат устройства или файлы;

Alt + SysRq + O

powerOff — корректно выключает систему (если настроено и поддерживается, обычно это прямая команда отключения);

Alt + SysRq + S

Sync — пытается синхронизировать все примонтированные файловые системы, при этом пишет в консоли «Emergency Sync». При успешно завершении выводится «Emergency Sync Complete»;

Alt + SysRq + U

Unmount — пытается перемонтировать все примонтированные файловые системы в режим «только чтение»;

Alt + SysRq + T

showTasks — выдаст список текущих задач и информацию о них в текущую консоль;

Alt + SysRq + N

Nice — используется для того, чтобы сбросить приоритет задачи реального времени или просто с измененным приоритетом;

Alt + SysRq + W

shoW-blocked-tasks — выдаст список всех непрерываемых (заблокированных, ждущих окончание ввода-вывода) задач;

Alt + SysRq + M

showMem — выдаст информацию о доступной и занятой оперативной памяти, а также степени использования SWAP;

Alt + SysRq + F

Full — позволяет вызвать обработчик oom_kill (out-of-memory kill) для прерывания приложений, забравших слишком много памяти (может занять продолжительное время). Используйте его, если свободная память совсем истощилась, так что система не реагирует ни на какой иной ввод (курсор мыши не движется, индикаторы NumLock/CapsLock не включаются, но индикатор работы накопителя всё время включен);

Alt + SysRq + K

secure access Key — убивает все процессы на текущей консоли. Её следует применять для снятия зависшего X WindowX-сервера. При этом графический сервер будет остановлен и невозможно будет увидеть ввод-вывод либо пока X-сервер не перезапустится, либо пока видеорежим не будет исправлен вручную;

Alt + SysRq + R

unRaw — перехватывает управление мышью и клавиатурой у Х-сервера, что полезно, если Х-сервер завис: так можно перейти в консоль, убить Х-сервер или проверить логи;

Alt + SysRq + E

tErm — послать сигнал завершения работы SIGTERM всем процессам, кроме init;

Alt + SysRq + I

KILL — послать сигнал немедленного завершения работы SIGKILL всем процессам, кроме init;

Безопасная перезагрузка при зависшей наглухо системе (REISUB)

Необходимо воспользоваться сочетанием клавиш Alt+SysRq (тот же PrintScreen) с разными буквами.

По очереди нажимаем комбинации клавиш с интервалом в 2-3 секунды: (обязательно в таком порядке!)

Alt+SysRq+R - переключить клавиатуру в режим XLATE (перехватить управление у иксов);

Alt+SysRq+E - послать сигнал завершения работы всем процессам, кроме init, SIGTERM;

Alt+SysRq+I - послать сигнал немедленного завершения работы всем процессам, кроме init, SIGKILL;

Alt+SysRq+S - синхронизировать все примонтированные файловые системы; вывод в консоль «Emergency Sync»; при успешном завершении синхронизации выводится «Emergency Sync Complete»; для верности можно нажать дважды;

Alt+SysRq+U - перемонтировать все файловые системы в read-only;

Alt+SysRq+B - выполнить немедленную перезагрузку (reboot) системы аналогично кнопке RESET (без синхронизации и размонтирования файловых систем).