Depois adiciono mais informação.
Regras e políticas de autenticação para comandos e programas gráficos.
Para comandos usamos o sudo, e para programas gráficos usamos o polkit.
Entra com comando visudo e altere o arquivo /etc/sudoers.
Usando o programa nano
sudo EDITOR=nano visudo
Exemplos para sudo
Grupo wheel para comandos sem senha
%wheel ALL=(ALL) NOPASSWD: ALL
Grupo wheel para comandos com senha
%wheel ALL=(ALL) ALL
Grupo wheel para comando pacman sem senha
%wheel ALL=(ALL) NOPASSWD:/usr/bin/pacman
Para um determinado usuário
Usuário swatquest para comandos sem senha
swatquest ALL=(ALL) NOPASSWD: ALL
Usuário swatquest para comandos com senha
swatquest ALL=(ALL) ALL
Usuário swatquest para comando pacman sem senha
swatquest ALL=(ALL) NOPASSWD:/usr/bin/pacman
Exemplos de polkit
Criar arquivo em /etc/polkit-1/rules.d
Pasta padrão fica em /usr/share/polkit-1
Para deixar de modo permanente, sem ser modificado por uma atualização é necessário criar uma regra no /etc.
Arquivo 10-pamac.rules
Ação de autenticação org.manjaro.pamac.commit sem senha
Conteúdo
// Permite pamac sincronizar e instalar sem autenticação
polkit.addRule(function(action, subject) {
if (action.id == "org.manjaro.pamac.commit")
{
return polkit.Result.YES;
}
});
Arquivo udisk.rules
Ação de autenticação org.freedesktop.udisks2. sem senha para usuários do grupo wheel
Conteúdo
//Permitir acesso sem autenticação em partições externas
polkit.addRule(function(action, subject) {
if (action.id.indexOf("org.freedesktop.udisks2.") == 0 && subject.isInGroup("wheel")) {
return polkit.Result.YES;
}
});
Desativar hibernar e suspender.
// Desativar hibernação
polkit.addRule(function(action, subject) {
if (action.id == "org.freedesktop.login1.hibernate" ||
action.id == "org.freedesktop.login1.hibernate-multiple-sessions")
{
return polkit.Result.NO;
}
});
// Desativar suspender
polkit.addRule(function(action, subject) {
if (action.id == "org.freedesktop.login1.suspend" ||
action.id == "org.freedesktop.login1.suspend-multiple-sessions")
{
return polkit.Result.NO;
}
});