Документация находится в man shutdown. 1
-P, --poweroff
Power-off the machine (the default).
[...]
-h
Equivalent to --poweroff, unless --halt is specified.
Иногда команды имеют избыточные кажущиеся переключатели, подобные этому, потому что они должны удовлетворять спецификациям для нескольких различных контекстов. Простая логика говорит нам, что, поскольку poweroffв любом случае это значение по умолчанию, использование -hсамо по себе избыточно (опять же, оно существует для удовлетворения внешней спецификации; некоторые реализации shutdownмогут не работать таким образом по умолчанию, но будут реализованы все те, которые соответствуют -h).
Поскольку сам пи не может отключить питание (он либо включен == включен, либо нет), использовать poweroffего бессмысленно , но он не причинит никакого вреда. Это может иметь значение в том, как красный светодиод мигает в конце (вы можете сравнить с, shutdown -Hчтобы увидеть). Обратите внимание, что основная цель shutdown- остановить (остановить) запуск ОС.
Таким образом, вы можете использовать любую форму.
1. Это на самом деле из Raspbian Джесси и поставляется с systemd; это немного отличается от выключения в Raspbian wheezy (ответ Greenonline цитирует это), который является примером того, что я упоминаю в следующем параграфе о различных реализациях, соответствующих одной и той же спецификации. Процесс завершения работы на самом деле является частью системы init , которая представляет собой SysV на wheezy и systemd на jessie.
haltэто может привести к потере данных. Намного лучше было быsudo sync;sync;halt, так как это синхронизирует хранилище данных (т.е. жесткие диски, SD-карту) с любыми неписанными кэшированными данными, которые все еще находятся в памяти, перед остановкой системы.