Как я могу выполнить скрипт, которому требуется разрешение sudo, в фоновом режиме? [дубликат]

Поскольку у меня не работает сочетание клавиш Asus VivoBook для изменения уровня подсветки клавиатуры, я создал сценарий bash и настроил его активацию при нажатии комбинации клавиш. Это мой сценарий:

level=$(cat /sys/class/leds/asus\:\:kbd_backlight/brightness)

[[ $level = 3 ]] && echo 0 | sudo tee /sys/class/leds/asus\:\:kbd_backlight/brightness || echo $(($level+1)) | sudo tee /sys/class/leds/asus\:\:kbd_backlight/brightness

Сценарий работает, когда я запускаю его на терминале, но когда я нажимаю клавиши, этого не происходит, я думаю, из-за разрешения sudo, для которого требуется пароль. Есть ли способ изменить разрешения скрипта, чтобы при запуске в фоновом режиме он не запрашивал пароль?

1
задан 5 December 2019 в 15:46

1 ответ

Может быть несколько опций сделать так, но я предлагаю Вас три опции:

Один путь состоит в том, чтобы использовать sudo -i вместо sudo Команда выполняется со средой, подобной той, в которой получил бы пользователь, входят в систему.

Другой путь состоит в том, чтобы использовать sudo -v вместо sudo который использует кэшируемые учетные данные.

Третья опция состоит в том, чтобы настроить sudo никогда не просить у Вас пароль. visudo управляйте редактирует sudoers файл, который используется sudo команда. Для изменения, каким пользователям и группам разрешают выполнить sudo выполните visudo

sudo visudo

В нижней части файла добавьте следующую строку:

<username> ALL=(ALL) NOPASSWD: ALL

Замените своим именем пользователя. Пример, я добавлю строку

tejas ALL=(ALL) NOPASSWD: ALL 

После того как эта строка добавляется, можно ввести sudo в Окне терминала, не будучи предложенным пароль.

Обратите внимание, что это решение применяется только в то время как к использованию sudo команда в терминале.

Для ограничения местоположения, в котором сценарий может быть excuted без подсказки пароля используйте следующую команду:

<username> ALL=NOPASSWD:/bin/bash /path/to/script/*

Строгое примечание: используйте это решение только для сценариев, которым можно доверять.

1
ответ дан 21 December 2019 в 23:42

Другие вопросы по тегам:

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