Impossible de créer le répertoire '/home/username/.ssh'
Git a soudainement cessé de travailler pour moi. (J'utilise Git Bash sous Windows 7. Je ne suis pas l'utilisation de Cygwin.)
Chaque fois que j'essaie de tirer ou de pousser, il dit:
N'a pas pu créer le répertoire '/home/sigod/.ssh'
Mes clés SSH situé dans C:\Users\sigod\.ssh
et HOME
ensemble de /c/Users/sigod
. Qui devrait fonctionner selon divers DONC questions.
Si je place les clés SSH en C:\Program Files\Git\home\sigod\.ssh
puis Git commence à travailler de nouveau. Mais comment puis-je le faire fonctionner sans salir solutions?
Pensez-vous utiliser Cygwin?
non, je n'ai pas.
Comme solution temporaire, j'ai créé de lien symbolique pour
Même problème avec moi. Quelqu'un a une solution, encore?
non, je n'ai pas.
Comme solution temporaire, j'ai créé de lien symbolique pour
c:\Program Files\Git\home\ <<===>> c:\Users
.mkdir /home/sigod/.ssh
pourrait aiderMême problème avec moi. Quelqu'un a une solution, encore?
OriginalL'auteur sigod | 2016-03-15
Vous devez vous connecter pour publier un commentaire.
Git Bash est construit à l'aide de MSYS2, ce qui est un très proche cousin de CygWin. Les éléments suivants pourraient travailler pour votre cas, suivez ces étapes:
Ouvrir cmd.exe en tant qu'administrateur, et de définir la MAISON variable d'environnement système pour pointer vers votre répertoire utilisateur.
La commande ci-dessus va définir MAISON=%UserProfile% pour l'environnement de votre système.
Ouvrir git bash, et assurez-vous que /etc/nsswitch.conf fichier contient une décommenté db_home entrée de ligne. Assurez-vous qu'il correspond à l'un de ci-dessous les configurations:
option a:
option b:
Fermer complètement git-bash en essayant des options à l'étape 2 (pour être sûr qu'aucun processus d'arrière-plan sont en gardant git-bash vivant, log off de windows et ouvrez-la de nouveau).
Je me suis basé la dessus sur une réponse expliquant la Version CygWin de la même question.
OriginalL'auteur Miron V
GitBash est similaire à Cygwin qui utilise traditionnel permissions linux.
Je vous suggère de vous assurez-vous que votre ssh répertoire existe à la bonne place et a le droit d'autorisations en cours d'exécution à partir de git bash les commandes suivantes:
puis exécutez
stat ~/.ssh
de voir que la modification des autorisations correctementde voir que votre clé est correctement installé dans le bon endroit.
Vous pouvez voir le répertoire est enregistré en tant que votre répertoire en cours d'exécution
echo ~
ouecho $HOME
.Vous pouvez modifier votre linux à la MAISON en modifiant
~/.bashrc
et en ajoutant la ligneexport HOME=/some/directory
Vous pouvez voir comment votre GitBash système de fichiers correspond à votre système de fichiers windows en tapant la commande
mount
Si rien ne fonctionne, vous pouvez également essayer de modifier le
%HOME%
variable d'environnement windows pour vous assurer qu'il dirige dans le droit chemin. Mais tout windows env var sera remplacé par linux vars vous ajoutez à votre~/.bashrc
Dans mon cas, le propriétaire était correct, mais il y avait un problème d'autorisations. Une couverture
chmod -R 777 .ssh
résolu le problème (et un numéro ultérieur avec l'écriture sur le fichier known_hosts) - mais bien sûr, vous recommandons vivement de prendre une sauvegarde de l'existant.ssh
dossier pour quiconque fait cela.salut, merci de porter cette question à mon attention. Je conseille vivement contre chmod -R 777 .ssh permet de tout visiteur ou invité à votre ordinateur pour voir votre privé des clés ssh. Au lieu de cela, je voudrais simplement ajouter -R à ma commande pour le rendre récursif. Je l'ai mise à jour de ma réponse, pour en tenir compte. Concernant les autorisations de votre .ssh dossier, je vous conseille d'exécuter
chown $USER:$USER -R ~/.ssh
à faire vous-même le propriétaire de fixation et les autorisations avec :chmod 644 -R ~/.ssh
chmod 700 ~/.ssh
chmod 600 ~/.ssh/id_rsa
OriginalL'auteur yosefrow
Même chose ici: ne Peut créer le répertoire '/home/carlos.leao/.ssh', dans Git Bash pour Windows, version 2.17.1.2-64-bits. À L'Aide De Windows 10.
Résoudre avec sigod solution de contournement. Mais insted de créer le dossier struture C:\Program Files\Git\home\carlos.leao et copié le dossier C:\Users\carlos.leao.ssh en cela, j'ai créé un lien symbolique à partir d'C:\Users\carlos.leao.ssh pour C:\Program Files\Git\home\carlos.leao.ssh. Pour faire cela (remplacer carlos.leao avec votre nom d'utilisateur Windows):
Fonctionne comme un charme!
OriginalL'auteur Carlos Augusto Leão