Насправді не моя відповідь - просто відклавши відповідь, яку, на жаль, було видалено з невідомих причин.
Джерело: http://web.archive.org/web/20151014220049/https://superuser.com/questions/985661/shutdown-vs-shutdown-now-shutting-down-system-as-non-root
В Arch Linux, за певних обставин, ви можете дуже добре відключити / перезавантажити / сплячку ... ваш ПК без привілеїв root.
Сторінка Вікі Arch Linux щодо управління живленням в Systemd повідомляє:
polkit необхідний для управління живленням як непривілейований користувач. Якщо ви перебуваєте в локальному сеансі користувача systemd-logind, і жоден інший сеанс не активний, наступні команди працюватимуть без привілеїв root:
systemctl poweroff
перезавантажити systemctl
systemctl призупинити
systemctl сплячий
Щоб перевірити, чи дозволено вам це робити ( тобто у вас встановлений polkit, і ваш сеанс не порушений), ви можете скористатися такою командою:
$ loginctl show-session $XDG_SESSION_ID --property=Active
Active=yes
В інших systemd
системах, як-от у мене Debian 8, це неможливо, незважаючи на те, що на цю команду є відповідь:
$ loginctl show-session $XDG_SESSION_ID --property=Active
Active=yes
$ systemctl reboot
==== AUTHENTICATING FOR org.freedesktop.login1.reboot ===
Authentication is required for rebooting the system.
Authenticating as: ,,, (myusername)
Password:
що вказує на те, що polkit
було налаштовано за замовчуванням по-різному в Arch Linux та Debian. Люди Linux Linux бачать перевагу цього sudo
в тому, що вони заявляють, на сторінці вікі на Polkit :
Polkit використовується для контролю загальносистемних привілеїв. Він забезпечує організований спосіб непривілейованих процесів спілкування з привілейованими. На відміну від таких систем, як sudo, він не дає кореневого дозволу на весь процес, а навпаки, дозволяє більш тонко контролювати централізовану системну політику.
Як завжди, YMMV.
Щодо shutdown now
моєї здогадки, це перенаправлення на systemctl poweroff
, яке дозволено непривілейованому користувачеві.
- https://superuser.com/users/255732/mariusmatutiae