Чтобы запустить команду poweroff
или reboot
нужно быть суперпользователем. Есть ли в любом случае я могу запустить это как обычный пользователь? Я просто не хочу sudo
вводить пароль каждый раз, когда перезагружаюсь или выключаюсь.
17
systemd
помощью активногоlogind
сеанса вы можете перезагрузить компьютер или выключить его без повышенных привилегий при условии, что ни один другой пользователь еще не вошел в систему ...systemd
по умолчанию не используется. То есть вы имеете в виду, что другие дистрибутивы, такие как Arch, могут перезагружаться без удаленных привилегий?Ответы:
Я изменил это
/etc/sudoers
так, чтобы каждый пользователь, который находится в группе администраторов, мог выполнять следующие команды без запроса пароля.Вам просто нужно добавить следующие строки в
/etc/sudoers
и добавьте себя в группу администраторов.
Если вы хотите, чтобы это мог сделать только один пользователь, просто удалите
%admin
и замените егоusername
следующим образомВы можете узнать больше о
/etc/sudoers
сman sudoers
или на онлайн-странице руководстваисточник
Вы также можете создать новый файл под
/etc/sudoers.d
именем его, как вы хотите (я назвал его'shutdown'
), и поместить следующие строки внутри:Просто измените «yourUserName» на ВАШЕ Имя пользователя и добавьте или удалите команды для использования, лично я использую его только для
shutdown
. Одним из основных отличий создания определенного файлаsudoers.d
является то, что этот файл будет работать после обновления системы.источник
/etc/sudoers
него есть соответствующая#include
директива для чтения файлов/etc/sudoers.d/
.Вы также можете добиться этого с помощью трюка с setuid. Я не знаю, будет ли это работать на всех системах, потому что они иногда игнорируют бит setuid / setgid.
Вы можете указать группу пользователей, которые могут выполнить изменение состояния системы, в моем случае это было
adm
. Затем добавьте соответствующих пользователей в эту группу.Укажите разрешения:
ls -l
outpus должен выглядеть так:После этого вы можете просто набрать:
источник
Самое простое решение:
Тогда вы сможете использовать одну из следующих команд:
В соответствии с man shutdown существует опция -a для использования без полномочий root:
Работает в Debian Linux. И есть ограничение на 32 имени пользователя в
/etc/shutdown.allow
.источник