В чем разница между сбросом волшебного REISUB и удерживанием клавиши питания?

Я нашел из googling, что каждая буква стоит за этими:

unRaw (take control of keyboard back from X), tErminate (send SIGTERM to all processes, allowing them to terminate gracefully), kIll (send SIGKILL to all processes, forcing them to terminate immediately), Sync (flush data to disk), Unmount (remount all filesystems read-only), reBoot.

Итак, если что [B] делает, перезагружается, какая разница делает это против просто удерживания ключа питания. И каково значение других букв (я не понимаю термины).

3
задан 17 June 2017 в 17:31

3 ответа

Я попытаюсь объяснить это понятным образом, но это может быть не обязательно на 100% или 100% правильно.

R - переключить режим клавиатуры. Это называется «Переключить клавиатура из сырого режима, режим, используемый такими программами, как X11 и svgalib, в режим XLATE "(из Википедии), но я действительно не знаю, будет ли это обычно иметь какой-либо заметный эффект. E - изящно завершать все запущенные программы. Он отправляет сигнал SIGTERM ко всем процессам, кроме init, и тем самым просит их изящно прекратить работу, давая им возможность убирать и освобождать свои ресурсы, сохранять данные и т. Д. ... I - насильственно убивать все запущенные программы. Это похоже на E, но посылает сигнал SIGKILL ко всем процессам, кроме init, который убивает их немедленно и принудительно. S - синхронизация всех дисков и очистка их кэшей. На всех ваших дисках обычно есть кэш записи, часть оперативной памяти, в которой система кэширует данные, которые она хочет сохранить на устройстве, для ускорения доступа. Синхронизация сообщает системе очистить эти кеши и выполнить все остальные записи. Таким образом, вы не потеряете какие-либо данные, которые уже были кэшированы, но еще не написаны, и он защищает от оставления файловой системы в непоследовательном состоянии. U - размонтировать все диски и перемонтировать их только для чтения. Это опять-таки довольно непроглядно, просто делает все смонтированные диски доступными только для чтения, чтобы предотвратить дальнейшие (частичные) записи. B - перезагрузка системы. Эта перезагрузка системы. Однако он не выполняет чистое выключение, а вместо этого выполняет жесткий сброс.

Однако ...

В Ubuntu эти SysRq обычно маскируются и частично отключены. Включены только синхронизация, повторная установка только для чтения и выключение / перезагрузка.

Это управляется файлом интерфейса ядра /proc/sys/kernel/sysrq, который содержит десятичное представление битовой маски разрешенных действий SysRq. По умолчанию Ubuntu составляет 176. См. Этот ответ для множества дополнительных объяснений и материалов.

Так что вы могли бы также просто Alt + SysRq + {S | U | B}.

7
ответ дан 22 May 2018 в 21:26
  • 1
    также, если вы измените системную настройку на выключение при нажатии кнопки питания. Нормальное нажатие (не удерживая нажатой) в большинстве случаев приведет к нормальному отключению. нажатие ctrl + alt + del вызовет диалог выхода из системы, нарушая небольшие зависания. – ravery 17 June 2017 в 19:01
  • 2
    Но почему R E I отключен. Если бы я следовал за другим ответом и повторно подключал их, может ли это пойти не так? – prab4th 18 June 2017 в 05:46
  • 3
    @ prab4th Если вы проверите ответ, который я связал, они описывают причину битмаскинга под заголовком «Почему RESIUB (O) не работает?» в верхней части сообщения. – Byte Commander 18 June 2017 в 14:02

Я попытаюсь объяснить это понятным образом, но это может быть не обязательно на 100% или 100% правильно.

R - переключить режим клавиатуры. Это называется «Переключить клавиатура из сырого режима, режим, используемый такими программами, как X11 и svgalib, в режим XLATE "(из Википедии), но я действительно не знаю, будет ли это обычно иметь какой-либо заметный эффект. E - изящно завершать все запущенные программы. Он отправляет сигнал SIGTERM ко всем процессам, кроме init, и тем самым просит их изящно прекратить работу, давая им возможность убирать и освобождать свои ресурсы, сохранять данные и т. Д. ... I - насильственно убивать все запущенные программы. Это похоже на E, но посылает сигнал SIGKILL ко всем процессам, кроме init, который убивает их немедленно и принудительно. S - синхронизация всех дисков и очистка их кэшей. На всех ваших дисках обычно есть кэш записи, часть оперативной памяти, в которой система кэширует данные, которые она хочет сохранить на устройстве, для ускорения доступа. Синхронизация сообщает системе очистить эти кеши и выполнить все остальные записи. Таким образом, вы не потеряете какие-либо данные, которые уже были кэшированы, но еще не написаны, и он защищает от оставления файловой системы в непоследовательном состоянии. U - размонтировать все диски и перемонтировать их только для чтения. Это опять-таки довольно непроглядно, просто делает все смонтированные диски доступными только для чтения, чтобы предотвратить дальнейшие (частичные) записи. B - перезагрузка системы. Эта перезагрузка системы. Однако он не выполняет чистое выключение, а вместо этого выполняет жесткий сброс.

Однако ...

В Ubuntu эти SysRq обычно маскируются и частично отключены. Включены только синхронизация, повторная установка только для чтения и выключение / перезагрузка.

Это управляется файлом интерфейса ядра /proc/sys/kernel/sysrq, который содержит десятичное представление битовой маски разрешенных действий SysRq. По умолчанию Ubuntu составляет 176. См. Этот ответ для множества дополнительных объяснений и материалов.

Так что вы могли бы также просто Alt + SysRq + {S | U | B}.

8
ответ дан 18 July 2018 в 11:30

Я попытаюсь объяснить это понятным образом, но это может быть не обязательно на 100% или 100% правильно.

R - переключить режим клавиатуры. Это называется «Переключить клавиатура из сырого режима, режим, используемый такими программами, как X11 и svgalib, в режим XLATE "(из Википедии), но я действительно не знаю, будет ли это обычно иметь какой-либо заметный эффект. E - изящно завершать все запущенные программы. Он отправляет сигнал SIGTERM ко всем процессам, кроме init, и тем самым просит их изящно прекратить работу, давая им возможность убирать и освобождать свои ресурсы, сохранять данные и т. Д. ... I - насильственно убивать все запущенные программы. Это похоже на E, но посылает сигнал SIGKILL ко всем процессам, кроме init, который убивает их немедленно и принудительно. S - синхронизация всех дисков и очистка их кэшей. На всех ваших дисках обычно есть кэш записи, часть оперативной памяти, в которой система кэширует данные, которые она хочет сохранить на устройстве, для ускорения доступа. Синхронизация сообщает системе очистить эти кеши и выполнить все остальные записи. Таким образом, вы не потеряете какие-либо данные, которые уже были кэшированы, но еще не написаны, и он защищает от оставления файловой системы в непоследовательном состоянии. U - размонтировать все диски и перемонтировать их только для чтения. Это опять-таки довольно непроглядно, просто делает все смонтированные диски доступными только для чтения, чтобы предотвратить дальнейшие (частичные) записи. B - перезагрузка системы. Эта перезагрузка системы. Однако он не выполняет чистое выключение, а вместо этого выполняет жесткий сброс.

Однако ...

В Ubuntu эти SysRq обычно маскируются и частично отключены. Включены только синхронизация, повторная установка только для чтения и выключение / перезагрузка.

Это управляется файлом интерфейса ядра /proc/sys/kernel/sysrq, который содержит десятичное представление битовой маски разрешенных действий SysRq. По умолчанию Ubuntu составляет 176. См. Этот ответ для множества дополнительных объяснений и материалов.

Так что вы могли бы также просто Alt + SysRq + {S | U | B}.

8
ответ дан 24 July 2018 в 19:48

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

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