É impróprio dizer que: "Parece que no Ubuntu, as chamadas para sudo
da GUI são de alguma forma interceptadas por pkexec
" . pkexec
não tem muito em comum com sudo
. Em contraste com sudo
, pkexec
não concede permissão raiz a um processo inteiro, mas permite um nível mais refinado de controle da política centralizada do sistema.
Agora, se você deseja executar um aplicativo de GUI sem ser solicitado por uma senha por pkexec
, isso não é difícil de ser feito. Tomemos por exemplo GParted . Ao abri-lo, você verá a seguinte janela de diálogo perguntando por uma senha:
Clique em Detalhes e a janela de diálogo ficará parecida com:
A partir daqui, tudo o que você precisa fazer é abrir o arquivo /usr/share/polkit-1/actions/com.ubuntu.pkexec.gparted.policy
usando, por exemplo, o seguinte comando:
gksu gedit /usr/share/polkit-1/actions/com.ubuntu.pkexec.gparted.policy
e altere as seguintes linhas:
<allow_any>auth_admin</allow_any>
<allow_inactive>auth_admin</allow_inactive>
<allow_active>auth_admin</allow_active>
com os seguintes:
<allow_any>yes</allow_any>
<allow_inactive>yes</allow_inactive>
<allow_active>yes</allow_active>
Salve o arquivo e feche-o. Em seguida, quando você abrir o GParted , não será mais solicitada uma senha.