Хорошо, во-первых, это не проблема, с которой я сталкиваюсь, но я хотел бы понять это лучше.
Если я хочу выключить / перезагрузить компьютер из командной строки, мне нужно позвонить:
$ sudo poweroff
$ sudo reboot
То есть мне нужны права суперпользователя для выполнения этих вызовов ACPI.
Однако я запускаю свой DE (я использую XFCE) без предоставления ему привилегий root: $ startxfce4 --with-ck-launch
Теперь я знаю, что --with-ck-launch
параметр помогает XFCE выключать / перезагружать мою систему, но я не понимаю, как это сделать.
Что позволяет ConsoleKit завершать работу без прав root? Как он может изменить уровень выполнения без привилегий суперпользователя? И поскольку это возможно, как я могу выключить компьютер с консоли без прав root?
pklocalauthority
страницу и посмотрите на файлы/etc/polkit-1
и их подкаталоги.