Sudo выполняет команду в скрипте Python

Я хочу sudo команду из pythonscript без жесткого кодирования моего пароля. Pythonscript является частью веб-службы на Apache2. Поскольку он является частью веб-службы, каждый раз запрашивать у пользователя пароль, это не вариант, и не дает полного права на всю папку.

Команда должна выполнить скомпилированный файл C ++ (чье имя хранится в переменной «CMDexecutable»). Этот скомпилированный файл C ++ находится во временной папке, которая создается как часть службы со случайным именем. Путь хранится в переменной «rundir_temp». Этот каталог доступен для свободного доступа через Интернет.

Теперь у меня есть следующее в моем Pythonscript:

Popen(os.path.join(rundir_temp,CMDexecutable),stdout=PIPE)

Это не выполняет скрипт, который у меня есть. Я могу выполнить только скомпилированный файл C ++, введя следующее в терминале в каталоге «rundir_temp»:

sudo ./CMDexecutable

Все работает отлично.

Как я могу дать sudo права на эту команду в моем Pythonscript без hardcoding мой пароль?

Я нашел эту тему, которая обсуждает очень похожую тему, но я просто не могу заставить ее работать ... Я новичок как для Python, так и для Ubuntu, так что, возможно, вы заметили основную вещь?

У меня Ubuntu 14.04 LTS и Python 2.7.6

Спасибо заранее!

1
задан 13 April 2017 в 15:24

0 ответов

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

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