Etapa 1
Isso pode ser curado pela correção da regra do PolicyKit para o NetworkManager. Primeiro, verifique se o arquivo .pkla
com a seção [nm-applet]
já existe em /etc/polkit-1/localauthority/10-vendor.d
. Se sim, faça um backup dele e altere o valor ResultAny=no
para yes
em [nm-applet]
deste arquivo.
A estrutura desses arquivos de regras de política é descrita em aqui .
Se este arquivo estiver ausente na pasta 10-vendor.d
, criaremos a regra do PolicyKit manualmente. Crie o arquivo com o nome org.freedesktop.NetworkManager.pkla
contendo as próximas linhas:
[nm-applet]
Identity=unix-user:your_username
Action=org.freedesktop.NetworkManager.*
ResultAny=yes
ResultInactive=no
ResultActive=yes
Substitua your_username neste arquivo pelo seu nome de login real. Se você deseja adicionar vários usuários, altere a entrada Identity
como esta (e substitua os nomes de usuário pelos desejados):
Identity=unix-user:username1;unix-user:username2
Se você deseja adicionar ainda mais usuários, considere adicionar todos eles a netdev
group com useradd
e altere a regra para:
Identity=unix-group:netdev
Agora copie esse arquivo .pkla
para o diretório PolicyKit:
sudo cp org.freedesktop.NetworkManager.pkla /etc/polkit-1/localauthority/50-local.d/
Etapa 2
Você também deve verificar se o PolicyKit Authentication Agent está sendo executado - essa regra não funcionará sem ele. Se ps -ef | grep kit | grep agent
não retorna nada, então não está sendo executado.
Verifique se este binário existe. Para o GNOME, este arquivo pode ser encontrado aqui:
/usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1
Para o MATE, ele está localizado aqui (para 32 bits e 64 bits, respectivamente):
/usr/lib/i386-linux-gnu/polkit-mate/polkit-mate-authentication-agent-1
/usr/lib/x86_64-linux-gnu/polkit-mate/polkit-mate-authentication-agent-1
Sua localização pode variar em diferentes DE. Se não foi encontrado lá, procure por ele:
locate agent | grep -v -E '^/var|doc|so|helper' | grep pol
Se você não encontrar nada, o PolicyKit Agent não será instalado. Procure o nome do pacote no banco de dados APT com o comando apt-cache search PolicyKit Authentication Agent
e instale o pacote apropriado para o seu DE. Para o MATE, será mate-polkit
.
Não é iniciado automaticamente por algum motivo. Você pode pesquisar /etc/xdg/autostart
para o agente PolKit .desktop
launcher e analisar por que ele falha ao iniciar. Ou você pode criar seu próprio iniciador usando "Startup Applications" do seu DE e adicionar o comando Polkit Authentication Agent para iniciá-lo corretamente.
Se você estiver interessado, há um artigo extenso e interessante sobre os privilégios do PolicyKit.