Традиционно команда sudo shutdown nowпереведет вас на уровень запуска 1 (режим восстановления); это будет происходить как для Upstart, так и для SysV init. Чтобы получить то, что вы хотите, то есть, чтобы правильно выключить компьютер, вам нужно дать -hпереключатель shutdown.
Здесь следует отметить, что haltвсе процессы будут закрыты, выключены процессоры и возвращено управление монитору ПЗУ материнской платы, когда пользователю необходимо нажать кнопку питания, чтобы отключить питание, тогда как poweroffпосле выключения процессоров просто отключит электропитание, что приведет к правильному отключению.
-hПереключатель shutdownлибо haltили poweroffкомпьютер, то решение будет принято в системе , хотя в Ubuntu я видел , что это было бы нормально poweroffмашина. Чтобы быть уверенными в том, что вы можете использовать -Pпереключатель с shutdownк poweroffкомпьютеру.
Подводя итог, вот команды, доступные poweroff( не halt ) компьютеру:
sudo shutdown -h now
sudo shutdown -P now
sudo poweroff
sudo halt -p
sudo init 0
Эти poweroffи haltкоманды в основном ссылаться shutdown(за исключением poweroff -f). sudo poweroffи sudo halt -pточно так же, как sudo shutdown -P now. Команда sudo init 0перенесет вас на уровень запуска 0 ( завершение работы ).
А что если вы хотите принудительно завершить работу, то есть не хотите ждать нормального закрытия процессов? В этом случае вы можете использовать:
sudo poweroff -f
Это не будет использовать shutdown. Скорее, он вызовет reboot(2)системный вызов (используется для перезагрузки, отключения питания и остановки), чтобы немедленно выключить компьютер.