2017-08-15 3 views
1

Je veux permettre que le « git » userto pouvoir d'exécuter des commandes git, j'édité mon fichier sudoers en utilisant sudo visudo et ajoutéAffectation certaines commandes aux utilisateurs

# Cmnd alias specification 
Cmnd_Alias GIT_CMDS = /usr/bin/git 

# User privilege specification 
root ALL=(ALL:ALL) ALL 
git ALL=(ALL) NOPASSWD: GIT_CMDS 

Lorsque je tente alors d'exécuter des commandes git de l'utilisateur git je reçois une erreur en disant que je n'ai pas les droits d'accès corrects. Comment puis-je résoudre ce problème?

+0

Si vous avez modifié les groupes auxquels l'utilisateur est associé, vous êtes-vous déconnecté et vous reconnectez pour que les nouveaux groupes soient appliqués? – jdv

+0

@jdv yup, après avoir fait l'édition avec l'utilisateur root, j'ai ensuite su dans l'utilisateur git –

+0

Attendez. Votre question ne correspond pas à ce que vous essayez de faire. Voulez-vous que le git _user_ ou les membres du git _group_ soient gérés de cette manière? – jdv

Répondre

1

« droit d'accès » peut être différent de « droit d'exécution de la commande »

git pourrait encore être en mesure d'exécuter des commandes git, mais pourrait ne pas être en mesure de mettre à jour un dossier qui n'appartient pas groupe git/git.

C'est pourquoi vous avez des questions comme « Allow User 'git' to run 'git pull' as 'www-data' via sudo », afin de permettre

sudo -u www-data git <a command> 

Dans votre cas, puisque vous avez spécifié (ALL), vérifiez si votre erreur d'accès se aways avec le sudo -u <auser> approprié lorsque vous exécutez commandes git dans un dossier n'appartenant pas à git.

+0

Cela l'a corrigé, Merci :) –