Иногда при отладке проблемы или обновлении ядра может потребоваться перезагрузить систему Linux. Если у вас есть автономный сервер, вам нужно знать, как перезагрузить систему из командной строки.
В современных дистрибутивах Linux утилита systemctl заменяет большинство команд управления питанием, используемых в старых дистрибутивах Linux, на sysvinit. Старые команды reboot и shutdown являются псевдонимами systemctl и доступны в системе по причинам совместимости.
В этой статье мы покажем вам , как использовать команды systemctl и shutdown для перезагрузки машины Linux. Команды должны запускаться от имени пользователя root или пользователя с привилегиями sudo.
Чтобы перезагрузить систему Linux, запустите утилиту systemctl с командой reboot:
sudo systemctl reboot
Система будет перезапущена немедленно.
Когда инициируется перезагрузка, все зарегистрированные пользователи и процессы уведомляются о том, что система выходит из строя, и дальнейшие входы в систему запрещены.
Чтобы запретить команде reboot отправлять сообщение, выполните команду с параметром —no-wall:
sudo systemctl --no-wall reboot
Если вы хотите установить собственное сообщение, объясняющее причину перезагрузки, используйте параметр —message=:
sudo systemctl --message="Обновление оборудования" reboot
Сообщение будет показано в журналах:
System is rebooting (Обновление оборудования)
Чтобы перезагрузить систему Linux, используйте команду shutdown с опцией -r:
sudo shutdown -r
По умолчанию система будет перезагружена через 1 минуту, но вы можете указать точное время, когда вы хотите, чтобы система была перезагружена.
Аргумент времени может иметь два разных формата. Это может быть абсолютное время в формате hh:mm и относительное время в формате, +m где m — это количество минут с этого момента.
В следующем примере будет запланирована перезагрузка системы на 10 часов утра:
sudo shutdown -r 10:00
В следующем примере будет запланирована перезагрузка системы через 5 минут:
sudo shutdown -r +5
Чтобы немедленно выключить вашу систему, используйте +0 ее псевдоним now:
sudo shutdown -r now
Чтобы отправить собственное сообщение вместе со стандартным уведомлением о завершении работы, введите свое сообщение после аргумента времени.
Следующая команда отключит систему через 10 минут и уведомит пользователей, что будет выполнено обновление оборудования:
sudo shutdown -r +10 "Обновление оборудования"
Важно отметить, что при указании пользовательского настенного сообщения вы также должны указать аргумент времени.
Если вы запланировали перезагрузку и хотите отменить ее, запустите команду shutdown с параметром -c:
sudo shutdown -c
Вы также можете отправить сообщение, описывающее, почему перезагрузка была отменена:
sudo shutdown -c "Отмена перезагрузки"
В этой статье мы показали, как перезагрузить компьютер с Linux из командной строки.
Не стесняйтесь оставлять комментарии, если у вас есть какие-либо вопросы.
когда все норм — reboot, проблемы — reboot -f, совсем туго 🙂 — echo b > /proc/sysrq-trigger, а есть ещё — init 6 :). Не вижу необходимости набирать systemctl . ,если это не какой-то специфический скрипт.