Как запустить команду/бинарник без sudo? (Дебиан/Линукс)

Вот более простой способ подойти к этому...

Мы пытаемся имитировать вашу учетную запись обычного пользователя, выдающую эту команду (, предполагая, что вы следовали рекомендациям No -IP по установке )...

sudo noip2

Причина, по которой ваша учетная запись обычного пользователя (вместо вашего суперпользователя )должна выполнять эту команду, заключается в том, что ваша учетная запись обычного пользователя имеет некоторый -IP -специфический материал, к которому необходимо получить доступ при выдаче эта команда. Таким образом, чтобы имитировать ввод указанной выше команды в качестве обычной учетной записи пользователя с повышенными привилегиями при запуске, выполните следующие действия...

Отредактируйте crontab вашего суперпользователя, введя эту команду...

sudo crontab -e    (choose your favorite text editor if prompted)

Добавьте эту строку внизу файла...

@reboot su -l <regular account username> && sudo noip2

Сохраните файл и перезагрузите систему. Вы обнаружите, что noip2 был запущен правильно.

0
30.09.2020, 15:05
1 ответ

Вам просто нужно выполнить соответствующую аутентификацию. По умолчанию sudoудаляет из среды все несущественные -переменные и устанавливает HOMEдля целевого пользователя, но в этом случае вам нужно вернуть одну или две из них обратно:

sudo HOME="$HOME" psensor …

Если этого недостаточно, попробуйте

sudo HOME="$HOME" DISPLAY="$DISPLAY" psensor …

Обратите внимание, что это позволит rootзаписывать в ваш домашний каталог, как если бы он был его собственным. Иногда это приводит к тому, что файлы, принадлежащие root -, (или, что еще хуже, каталоги )в вашем собственном каталоге, к которым вы не можете получить прямой доступ или удалить. Если это неприемлемо, попробуйте один из этих более длинных -запутанных вариантов

sudo bash -c "cp -p $HOME/.Xauthority ~ && psensor …"
sudo DISPLAY="$DISPLAY" bash -c "cp -p $HOME/.Xauthority ~ && psensor …"
0
18.03.2021, 23:01

Теги

Похожие вопросы