У меня была подобная проблема, пока я не сделал следующее (на Ubuntu):
время работы | xclip - выбор c
Из страниц справочника:
-selection
specify which X selection to use, options are "primary" to
use XA_PRIMARY (default), "secondary" for XA_SECONDARY or
"clipboard" for XA_CLIPBOARD
Я изменился /etc/sudoers
так, чтобы каждый пользователь, который находится в группе admin, мог выполниться, следующие команды без того, чтобы быть просят пароль.
sudo halt
sudo reboot
sudo poweroff
Просто необходимо добавить следующие строки к /etc/sudoers
## Admin user group is allowed to execute halt and reboot
%admin ALL=NOPASSWD: /sbin/halt, /sbin/reboot, /sbin/poweroff
и добавьте себя к группе admin.
Если Вы хотите, чтобы только один пользователь смог сделать, это просто удаляет %admin
и замените его username
как это
## user is allowed to execute halt and reboot
stormvirux ALL=NOPASSWD: /sbin/halt, /sbin/reboot, /sbin/poweroff
Можно узнать больше о /etc/sudoers
с man sudoers
или страница справочника онлайн
Вы также можете добиться этого с помощью трюка с setuid. Я не знаю, будет ли это работать на всех системах, потому что они иногда игнорируют бит setuid/setgid.
Вы можете указать группу пользователей, которые могут выполнять изменение состояния системы, в моем случае это был adm
. Затем добавьте соответствующих пользователей в эту группу.
gpasswd -a $USER adm
Укажите разрешения:
chmod 4550 /usr/bin/reboot
ls -l
outpus должен выглядеть так:
-r-sr-x--- 1 root adm 18928 Mar 13 2015 /usr/bin/reboot
После этого вы можете просто набрать:
reboot
Вы также можете создать новый файл под /etc/sudoers.d
назовите его как хотите (Я назвал его'shutdown'
)и поместил в него следующие строки:
# Allows me to shutdown the system without a password
yourUserName ALL = NOPASSWD: /sbin/halt, /sbin/reboot, /sbin/poweroff
Просто измените "yourUserName" на ВАШЕ имя пользователя и добавьте или удалите команды для использования, лично я использую его только для shutdown
. Одним из основных отличий создания определенного файла в sudoers.d
является то, что этот файл сохранится при обновлении системы
Еще один способ получить не только привилегии загрузки, но и доступ ко всем службам systemctl для определенного пользователя или группы в системе Debian.:
sudo chown root:myuserorgroup /bin/systemctl
sudo chmod 4755 /bin/systemctl
Поскольку все сценарии загрузки /sbin/shutdown
, /sbin/poweroff
, /sbin/reboot
являются ссылками на /bin/systemctl
,изменение его разрешений и прав собственности дает необходимые привилегии для выполнения его как пользователя root.
Имейте в виду, что пользователь сможет выполнять все операции systemctl . Это может звучать как угроза безопасности, но это простое общее решение для встроенных систем, где ваш пользователь по умолчанию должен иметь не только права доступа для отключения, но и для работы со всеми другими системными службами, связанными с systemctl
.