Программа python, работающая с правами root для открывать URL-адреса через обычного пользователя

Вы должны запустить агент следующим образом.

eval $(gpg-agent --daemon --write-env-file "${HOME}/.gnupg/.gpg-agent-info)"

Затем в ваш файл .bashrcдобавьте строки:

if [ -f "${HOME}/.gnupg/.gpg-agent-info" ]; then
    . "${HOME}/.gnupg/.gpg-agent-info"
    export GPG_AGENT_INFO
fi
1
02.04.2017, 22:02
1 ответ

Я не знаю, что делает QtGui.QDesktopServices.openUrl , но я сильно подозреваю, что он открывает URL-адрес в соответствующем приложении общение с некоторым демоном KDE через сеанс X11, а не запуск браузера непосредственно в качестве своего дочернего элемента. Вы можете проверить это, посмотрев на идентификатор родительского процесса получившегося браузера. В связи с этим не имеет значения, на какой UID переключился ваш скрипт - имеет значение только uid демона.

Запуск сеансов X11 от имени root - обычно плохая идея. Могу я предложить запустить сеанс X11 от имени обычного пользователя и иметь только ваш сценарий Python, запускаемый от имени пользователя root (только если он проверен и только если вам это действительно нужно)?

0
28.01.2020, 00:58

Теги

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