Niedawno napotkałem problem: za każdym razem, gdy próbuję przesłać dane do repozytorium git (w moim przypadku Bitbucket), pojawia się ten błąd:
$ git push origin master [email protected]: Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists.
Znalazłem sposób, aby rozwiązać ten problem, uruchamiając następujące polecenia:
eval `ssh-agent` ssh-add -l ssh-add ~/.ssh/id_rsa
Jeśli to zrobię, spróbuję git push origin master
, to będzie działać. Ale problem polega na tym, że ten problem zaczyna się pojawiać po pewnym czasie (prawdopodobnie po restarcie, nie jestem pewien, co powoduje jego ponowne pojawienie się). UPD: najprawdopodobniej nie jest to spowodowane ponownym uruchomieniem, ponieważ właśnie się z nim zmierzyłem 10 minut po wykonaniu powyższego kodu i otrzymałem ten sam błąd. Od tego czasu nie uruchamiałem ponownie laptopa.
Co może powodować takie zachowanie i jak mogę to naprawić?
Komentarze
- 1. confluence.atlassian.com/bbkb/… 2. confluence.atlassian.com/bitbucket/…
- " Klucze dodane do pęku kluczy przez ssh -add -K nie są automatycznie ponownie dodawane do ssh-agent po ponownym uruchomieniu. " Czy wypróbowałeś rozwiązania z github .com / jirsbek / SSH-keys-in-macOS-Sierra-keychain ?
Odpowiedź
Myślę, że dzieje się tak, ponieważ podczas generowania klucza ssh wprowadziłeś hasło bezpieczeństwa. Kiedy uruchamiasz ssh-agent i dodajesz ssh / rsa_id, powinno to być tak samo jak hasło.
[root@user xxxxx]# eval "$(ssh-agent -s)" Agent pid 12082 [root@user xxxxx]# ssh-add /home/user/.ssh/id_rsa Enter passphrase for /home/user/.ssh/id_rsa: Identity added: /home/user/.ssh/id_rsa (/home/user/.ssh/id_rsa) git push -u origin master Counting objects: 94, done.
Odpowiedź
OK, zapomniałem opublikować problem: przez przypadek ustawiłem swój klucz na inny serwer dla wszystkich hostów w ~/.ssh/config
. Więc użył go do połączenia się wszystkie hosty zamiast właściwego. Usunąłem go dla wszystkich hostów i ustawiłem tylko dla tych hostów, które wymagały tego klucza, i naprawiłem go.
Mam nadzieję, że będzie to pomocne dla innych.