Próbuję skonfigurować drugi klucz dostępu ssh dla znajomego. Wysłał mi swój id_rsa.pub.
ssh-copy-id -i id_rsa.pub [email protected]
/usr/local/bin/ssh-copy-id: ERROR: failed to open ID file './id_rsa': No such file or directory
Czy potrzebuję go, aby przesłał mi oba pliki?
Odpowiedzi:
ssh-copy-id
Komenda z OpenSSH nie powiedzie, jeśli nie ma pliku klucza prywatnego o tej samej nazwie dostępnej, ponieważ próbuje logowania z określonego klucza, aby sprawdzić, czy jest już obecny na zdalnym serwerze.W najnowszych wersjach możesz zastąpić to zachowanie
-f
przełącznikiem („Tryb wymuszony”).Ze strony podręcznika :
źródło
-f
tylko działa zgodnie z oczekiwaniami, jeśli przekazać go przed tym-i
argumentem.ssh-copy-id -i mykey.pub -f otheruser@host
tylko narzeka, dopóki nie ruszysz -f z przodu.To
.pub
wystarczy. Nie jesteś we właściwym folderze.Możesz spróbować:
(dla użytkownika root: niezalecane, to tylko przykład).
Ten plik znajduje się w
.ssh
folderze w folderze użytkownika.źródło
-f
jeśli nie masz klucza prywatnego, myślę, żeZostało to zgłoszone jako błąd OpenSSH # 2110 .
źródło
Jak wspomniano tutaj, jest to błąd.
W każdym razie możesz po prostu utworzyć pusty plik, aby działał. W Twoim przypadku:
Miałem ten sam problem i to działało dla mnie 👍
źródło
to działa dla mnie pytanie brzmi, kiedy pyta „Wprowadź plik, w którym chcesz zapisać klucz (/Users/xiaoyu/.ssh/id_rsa):” należy wpisać id_rsa
i użyj komendy „ssh-copy-id -i ~ / .ssh / id_rsa.pub [email protected]”
źródło