Есть несколько команд для выключения компьютера Linux из командной строки. Какую именно использовать, зависит от ваших прав и желаемого способа выключения (полное выключение или перезагрузка).
1. sudo shutdown now (Рекомендуется)
- Эта команда является наиболее универсальным и рекомендуемым способом выключения системы. Она использует команду shutdown, которая корректно завершает все процессы и безопасно выключает компьютер.
- sudo необходим, так как для выключения системы требуются права администратора.
- now указывает, что выключение должно произойти немедленно.
sudo shutdown now
2. sudo poweroff
- Эта команда непосредственно вызывает выключение системы. Она является сокращением для sudo shutdown -P now.
- -P указывает, что система должна быть полностью выключена (в отличие от перезагрузки).
sudo poweroff
3. sudo halt
- Эта команда останавливает систему, но не всегда выключает питание. В старых системах она могла просто остановить процессор и оставить систему в состоянии “halted”, но на современных системах обычно выключает питание. Рекомендуется использовать poweroff вместо halt.
sudo halt
4. sudo shutdown -h now
- Эта команда эквивалентна sudo shutdown now. -h указывает на “halt”, что означает выключение.
sudo shutdown -h now
5. sudo init 0 (Менее рекомендуется)
- init - это процесс, который управляет состоянием системы. init 0 указывает системе перейти в состояние выключения.
- Этот метод считается менее предпочтительным, чем shutdown или poweroff, так как он не всегда корректно завершает все процессы.
sudo init 0
6. systemctl poweroff (Для систем с systemd)
- systemctl - это команда для управления службами в системах с systemd (большинство современных дистрибутивов Linux используют systemd).
- Эта команда выполняет корректное выключение системы.
sudo systemctl poweroff
Для перезагрузки системы используйте:
- sudo reboot
- sudo shutdown -r now
- sudo systemctl reboot
- sudo init 6
Важные замечания:
- Права администратора (sudo): Во всех вышеперечисленных командах требуется sudo, потому что выключение системы является привилегированной операцией. Если вы не являетесь администратором, вам нужно будет ввести свой пароль, когда sudo запросит его.
- Сохраните свою работу: Прежде чем выключать компьютер, убедитесь, что вы сохранили всю свою работу и закрыли все приложения. Внезапное выключение может привести к потере данных.
- Завершение процессов: Команда shutdown (и systemctl poweroff, systemctl reboot) отправляет сигналы всем запущенным процессам, давая им время на корректное завершение. Это более безопасно, чем просто “выдернуть шнур питания”.
- Информирование пользователей: В многопользовательских системах (например, на серверах) перед выключением рекомендуется отправить сообщение всем пользователям, чтобы предупредить их о выключении. Это можно сделать с помощью команды wall:sudo wall "Система будет выключена через 5 минут. Пожалуйста, сохраните свою работу."
sudo shutdown +5 # Выключение через 5 минут
Какую команду использовать?
- Для обычного выключения рекомендуется использовать sudo shutdown now или sudo poweroff. Они просты в использовании и корректно выключают систему.
- Если вы используете систему с systemd, sudo systemctl poweroff также является хорошим вариантом.
- Для перезагрузки используйте sudo reboot или sudo systemctl reboot.
Избегайте использования sudo init 0 или sudo halt, если только вы не знаете, что делаете, так как они могут не завершить процессы корректно. Всегда сохраняйте свою работу перед выключением или перезагрузкой компьютера.