Linux: экстренная перезагрузка сервера

Перезагрузка системы двумя командами echo

Иногда случаются ситуации (поменьше бы их таких), когда из-за какой-нибудь ошибки оборудования или повреждения файловой системы операционная система входит в ступор и не может прочитать ничего с диска. Систему нужно перезагружать, но система не может прочитать /sbin/reboot, а техническая поддержка тупит (не могу не передать привет техперсоналу HiVelocity.net).

В этом случае систему можно перезагрузить двумя командами echo (нужны права администратора).

[-]
View Code Bash
echo 1 > /proc/sys/kernel/sysrq
echo b > /proc/sysrq-trigger

Данная последовательность команд перезагрузит систему, не производя размонтирование файловых систем и сброс буферов на диск. Способ весьма экстремальный, но действенный.

Если требуется безопасная перезагрузка, то нужно выполнить такую последовательность:

[-]
View Code Bash
echo 1 > /proc/sys/kernel/sysrq
echo e > /proc/sysrq-trigger
echo i > /proc/sysrq-trigger
echo s > /proc/sysrq-trigger
echo u > /proc/sysrq-trigger
echo b > /proc/sysrq-trigger

Построчно:

  1. Включение SysRq
  2. Отправление SIGTERM всем процессам, кроме init
  3. Отправление SIGKILL всем процессам, кроме init
  4. Сброс всех данных на диск (sync)
  5. Перемонтирование всех файловых систем в режим “только для чтения”
  6. Перезагрузка системы
Автор: ; опубликовано в: Linux, Администрирование; метки: Linux, советы
6
Июл
2009

RSS Комментарии к статье «Linux: экстренная перезагрузка сервера» (6)  »

  1. Emelyanich

    Компьютеры не совершенны, хотя люди тоже далеки от идеала. :)

  2. Евгений

    С такими системами вечно проблемы, слишком много металла :)

  3. Макс

    У меян винда зато никогда не глючит !

  4. Альберт

    Я был приятно удивлен, как автор легко пишет обо всем, что его интересует. В этом что-то есть!

  5. Игорь

    Владимир, большое спасибо за важную и оч. нужную информацию!

    Именно мой случай – в SSH сессии появилось сообщение

    Message from syslogd@chronos at Nov 20 06:47:09 …
    kernel:[252326.465248] journal commit I/O error

    после него уже не было шансов выполнить никакую команду в том числе reboot.

    еще повезло что я был на тот момент подключен к серверу.

    С помощью вашего рецепта удалось перезагрузить компьютер удаленно.
    Естественно, только сразу echo b > /proc/sysrq-trigger
    потому как иначе сессия просто отвалилась бы…

    Еще раз большое спасибо!

    “Пойду менять масло…” :)
    то-бишь, разбираться что там с винчестером или еще с чем….

Пожалуйста, не используйте эту форму для комментирования! Данная форма предназначена исключительно для ботов.

Оставить комментарий к записи «Linux: экстренная перезагрузка сервера»

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Оставляя комментарий, вы выражаете своё согласие с Правилами комментирования.

Подписаться, не комментируя

गते गते पारगते पारसंगते बोधि स्वाहा