Как использовать команды shutdown poweroff, halt и reboot в Linux

В этой статье мы объясним разницу между командами shutdown
poweroff
, halt
и reboot
в Linux. Мы расскажем, что на самом деле делает каждая из этих команд при выполнении, а также о доступных опциях.
Если вы изучаете администрирование серверов Linux, вот некоторые важные команды Linux, которые вам необходимо полностью понимать для эффективного и надёжного администрирования серверов.
Совет: для большинства команд, связанных с завершением работы, требуется sudo
если вы не вошли в систему как пользователь root.
Команда выключения
Команда shutdown
устанавливает время выключения системы, которое можно использовать для остановки, выключения или перезагрузки устройства.
В качестве первого аргумента можно указать строку со временем (обычно «now
» или «hh:mm
«). Кроме того, вы можете добавить сообщение на стену, чтобы уведомить всех вошедших в систему пользователей до отключения системы.
: если используется аргумент времени, система создаёт файл /run/nologin
за 5 минут до завершения работы, что предотвращает вход новых пользователей в систему во время её подготовки к завершению работы.
Примеры команды shutdown
:
shutdown # Запланируйте завершение работы shutdown now # Завершение работы немедленно shutdown 13:20 # Завершение работы в 13:20 shutdown -P сейчас # Выключите компьютер shutdown -H сейчас # Приостановите работу компьютера shutdown -r в 09:35 # Перезагрузка в 9:35 утра
Чтобы отменить ожидающее завершение работы, просто введите приведенную ниже команду:
shutdown -c
Обзор параметров выключения:
-r
: Перезагрузка после завершения работы.-h
: Остановка или выключение питания (решение принимает система).-H
: Остановите систему.-P
: Выключите питание системы.-c
: Отмените текущее завершение работы.-k
: Отправлять только предупреждающие сообщения (без выключения).
Примечание по исправлению ошибок: распространенной ошибкой является использование shutdown -p
, что недопустимо. Правильный вариант для выключения — shutdown -P
.
Команда halt
Команда halt
указывает системе остановить все функции процессора. В большинстве случаев система остаётся включённой, что полезно для низкоуровневого обслуживания. Однако, в зависимости от конфигурации системы, она может полностью выключить систему.
Ниже приведены примеры команды halt
:
halt # Остановить машину halt -p # Выключить машину halt --reboot # Перезагрузить машину
Команда poweroff
Команда poweroff
отправляет сигнал ACPI для выключения системы.
Ниже приведены примеры команды poweroff
:
poweroff # Выключить компьютер poweroff --halt # Остановить компьютер poweroff --reboot # Перезагрузить компьютер
Команда reboot
Команда reboot
предписывает системе перезагрузиться.
reboot # Перезагрузка устройства reboot --halt # Остановку устройства reboot -p # Выключение устройства
Примечание по совместимости для современных систем
Если вы используете современный дистрибутив Linux, в котором применяется systemd (например, Ubuntu, Debian, Fedora, Arch и т. д.), рекомендуется использовать эквивалентные команды systemctl для завершения работы, перезагрузки и приостановки.
Эти команды больше соответствуют системному диспетчеру служб и обеспечивают большую согласованность:
sudo systemctl poweroff # Выключить систему sudo systemctl reboot # Перезагрузить систему sudo systemctl halt # Приостановить работу системы
Эти альтернативы работают надежно и считаются наилучшей практикой в системах на базе systemd.
Выводы
Понимание принципов работы этих команд управления системой крайне важно для администрирования Linux-серверов, особенно в многопользовательской среде.
Вот краткое резюме:
Команда | Описание |
---|---|
shutdown | Запланируйте остановку, перезагрузку или отключение питания |
halt | Остановка функций процессора (может не выключаться) |
poweroff | Отправьте сигнал ACPI для отключения питания |
reboot | Перезапустите систему |
Вот и всё! С помощью этих команд вы сможете надёжнее управлять системами Linux. Есть дополнительные советы или опыт, которыми вы хотите поделиться? Напишите их в комментариях ниже!