Смотрим, чем отличаются:
Код: Выделить всё
$ ls -l `whereis shutdown`
lrwxrwxrwx 1 root root 16 окт 27 20:36 /sbin/shutdown -> ../bin/systemctl*
$ ls -l `whereis poweroff`
lrwxrwxrwx 1 root root 16 окт 27 20:36 /bin/poweroff -> ../bin/systemctl*
Т.е. обе команды вызывают systemctl с одноимённым параметром.
Ищем каждый вариант в man systemctl:
poweroff
Shut down and power-off the system. This is mostly equivalent to start poweroff.target
--job-mode=replace-irreversibly, but also prints a wall message to all users. If combined with --force,
shutdown of all running services is skipped, however all processes are killed and all file systems are
unmounted or mounted read-only, immediately followed by the powering off. If --force is specified twice, the
operation is immediately executed without terminating any processes or unmounting any file systems. This may
result in data loss.
Тут "все процессы убиваются"
When system shutdown or a sleep state is requested, ignore inhibitor locks. Applications can establish
inhibitor locks to avoid that certain important operations (such as CD burning or suchlike) are interrupted by
system shutdown or a sleep state. Any user may take these locks and privileged users may override these locks.
If any locks are taken, shutdown and sleep state requests will normally fail (regardless of whether privileged
or not) and a list of active locks is printed. However, if --ignore-inhibitors is specified, the locks are
ignored and not printed, and the operation attempted anyway, possibly requiring additional privileges.
Тут игнорируются некие ингибиторы. Это такая штука, которую устанавливают приложения, например, когда записывают компакт-диск - а выключение прервёт запись и сделает диск непригодным.
Какое именно приложение задерживает выключение - это не понятно
