Cette énigme est causée par l'exécution à git pull
partir de la racine.
Il y a plusieurs raisons pour moi de le faire ... Je veux que mon appareil mette à jour le code au démarrage et rc.local
est exécuté par root.
Tout fonctionne très bien (a npm install
tendance à échouer lorsqu'il est exécuté par root, mais c'est un tout autre sujet), le problème se pose lorsque j'essaie d'utiliser le référentiel git avec un utilisateur non root par la suite ... certains des fichiers git ont été écrit par root, donc maintenant je ne peux plus l'utiliser (permission refusée).
Je voudrais donc le récursivement chown
, mais il ne semble pas y avoir quoi que ce soit qui fonctionne vraiment sur tous les petits fichiers git. J'ai essayé le -R
drapeau et le ./**/*
chemin.
Je suppose qu'aucune de ces techniques ne descend dans les répertoires de points.
bash
vous devez définirshopt -s dotglob
afin de faire correspondre les fichiers cachés par*
ou**
.chown -R *
, au lieu dechown -R .
?Réponses:
La commande suivante fonctionne pour moi dans Ubuntu. Il a changé la propriété de tous les fichiers et répertoires de manière récurrente
la source
sudo chown -R me:me .
et quandls -al
tous mes fichiers appartiennent toujours à root. Pourquoi ça ne marche pas?./
?J'utilise à la
tree
place:Veillez également à ne pas exécuter chown récursif ou chmod sur le répertoire '/' ou tout autre répertoire système.
la source