Estou no grupo sudo certo:
$ id
uid=1002(molot) gid=1002(molot) groups=1002(molot),27(sudo),33(www-data)
Nos meus sudoresos, pareço ter uma configuração apropriada:
sudo ALL=(ALL:ALL) NOPASSWD: ALL
e é a última linha não comentada lá.
Mas, quando tento git pull
, sou solicitado a redigitar minha senha:
$ sudo -u www-data git --git-dir /var/www/.git --work-tree /var/www pull "origin" master
[sudo] password for molot:
Não é um problema quando estou conectado ao console, mas é inaceitável nos scripts. Então, como posso permitir que qualquer pessoa no grupo sudo git pull como www-data sem redigitar a senha?
Quando eu coloco meu nome diretamente:
molot ALL=(ALL) NOPASSWD: ALL
funciona para mim. Mas, obviamente, não para usuários marianos ou outros do grupo sudo. Tanto quanto eu entendi manual , nomes de usuário e nomes de grupos devem funcionar no primeiro arquivo.
sudo -u www-data ./your_script.sh
? Qual é o propósito do script?sudoers
formato do arquivo estiver correto) é o nome de usuário do usuário que está chamando. Você já tentou substituí-lo pelo curinga*
ou por qual usuário o gancho git é executado?*
não funciona. Colocar meu nome funciona diretamente para mim ... mas não para outros usuários do grupo sudo, obviamente.Respostas:
Parece que você tem a linha relevante em seus sudoers com falta de um personagem:
corresponde a um usuário chamado 'sudo'. Para 'todos os usuários do grupo sudo', deve ser:
(observe o sinal de% no início).
fonte
%
no%wheel
significava.sudo visudo
Supondo que
molot
seja seu nome de usuário, vá para o final do arquivo e:molot ALL=(ALL) NOPASSWD: ALL
Isso deve funcionar, mas se não funcionar, mantenha-nos informados.
fonte
User_Alias
) e dê permissão para executar comandos específicos como root (Runas_Alias
). Não sei como o seu grupo está configurado, você pode conferir o wiki do Sudoers help.ubuntu.com/community/Sudoers É realmente conciso. Verifique a seção "Especificações do usuário", isso deve ajudar.