Dans notre serveur Ubuntu, nous pouvons cloner en tant qu'utilisateur Nginx dans /usr/share/nginx/www
lequel la www-data:www
propriété -data reçoit un avertissement en tant que
"Avertissement: impossible d'accéder à" /root/.config/git/attributes ": autorisation refusée"
Nous exécutons la commande comme sudo -u www-data git clone <repo>.
Avec sudo, nous recevons cet avertissement, sinon il fonctionne correctement.
Nous pouvons cloner en tant qu'utilisateur root et il n'y a aucun problème.
.gitconfig est situé uniquement en root et veuillez voir le contenu:
root@geo:~# cat /root/.gitconfig
[user]
name = pc_user
email = [email protected]
root@geo:~#
Quelqu'un peut-il nous aider à ce sujet?
Nous avons essayé diverses options comme la création /root/.config/
directe et la modification des autorisations, etc., mais rien ne fonctionne. Quelqu'un peut-il m'aider s'il vous plaît?
Veuillez également voir ceci:
root@geo:/setup/test# ll /setup/
total 16
drwxr-xr-x 4 www-data www-data 4096 Oct 9 00:14 ./
drwxr-xr-x 24 root root 4096 Oct 9 00:14 ../
drwxr-xr-x 3 www-data www-data 4096 Oct 9 00:14 test/
root@geo:/setup/test# sudo -u www-data git clone -v git@....../test.git
Cloning into 'test'...
remote: Counting objects: 8323, done.
remote: Compressing objects: 100% (6459/6459), done.
remote: Total 8323 (delta 1543), reused 8241 (delta 1500)
Receiving objects: 100% (8323/8323), 39.85 MiB | 19.52 MiB/s, done.
Resolving deltas: 100% (1543/1543), done.
Checking connectivity... done.
warning: unable to access '/root/.config/git/attributes': Permission denied
Cela semble donc un problème avec la configuration de git. Quelqu'un peut-il nous guider?
J'utilise cette configuration sur un Ubuntu 14.04. Lorsque je fais la même configuration dans un autre Ubuntu 12.04, cela fonctionne parfaitement.
J'ai aussi fait ça:
Créé un utilisateur geopc et ajouté à la liste sudoers et lorsque nous nous sommes connectés en tant qu'utilisateur geopc et que cette commande sudo -u www-data git clone -v git@....../test.git
fonctionne parfaitement.
Le problème est donc lorsque nous nous sommes directement connectés en tant qu'utilisateur root dans Ubuntu 14.04 et clonons lorsque sudo -u www-data git clone
cet avertissement arrive. Mais ce n'est pas dans Ubuntu 12.04.
Nous utilisons git version 1.9.1 sur Ubuntu 14.04, nous avons également mis à niveau git vers la version 2.1.1 mais la même chose.
/root
. Si ce n'est pas les autorisations du système de fichiers, il est certain que des choses comme AppArmor ou SELinux devraient bloquer l'accès du serveur Web à / root.Réponses:
@mu a raison. Il s'agit d'un problème de
root
transmission de la variable d'environnement HOME de l'utilisateur au script au lieu dewww-data
la variable d'environnement HOME de l'utilisateur .Vous avez juste besoin d'ajouter le commutateur -H à la commande sudo, donc c'est assez simple:
la source
Je pense que la
HOME
variable est mal configurée.À partir du fil de discussion Google ,
la source
Vous avez juste besoin de redémarrer votre instance de stash en utilisant un utilisateur autre que root. En règle générale, l'utilisateur sera le même que celui que vous avez utilisé au moment de l'installation.
par exemple atlstash
Cela définira votre variable HOME comme / home / atlstash et résoudra votre problème
la source