Próbuję użyć mojego terminala Mac do scpowania pliku z Pobranych (phpMyAdmin pobrałem online) do mojej instancji Amazon EC2.
Polecenie, którego użyłem to:
scp -i myAmazonKey.pem phpMyAdmin-3.4.5-all-languages.tar.gz [email protected]:~/.
Wystąpił błąd: Ostrzeżenie: Plik tożsamości myAmazonKey.pem jest niedostępny: Brak takiego pliku lub katalogu. Odmowa dostępu (publickey). utracone połączenie
Zarówno mój myAmazonkey.pem, jak i phpMyAdmin-3.4.5-all-languages.tar.gz są w plikach do pobrania, więc spróbowałem
scp -i /Users/Hello_Kitty22/Downloads/myAmazonKey.pem /Users/Hello_Kitty22/Downloads/phpMyAdmin-3.4.5-all-languages.tar.gz [email protected]:~/.
i pojawia się błąd: Ostrzeżenie: Plik tożsamości / Użytkownik / Witaj_Kitty22/Downloads/myAmazonkey.pem niedostępny: Brak takiego pliku lub katalogu. Odmowa dostępu (publickey). utracone połączenie
Czy ktoś może mi powiedzieć, jak rozwiązać mój problem?
ps jest podobny post: scp (bezpieczna kopia) do instancji ec2 bez hasła, ale nie odpowiada na moje pytanie.
źródło
Odpowiedzi:
Spróbuj określić użytkownika
ec2-user
, npZobacz Łączenie się z instancjami Linux / UNIX za pomocą SSH .
źródło
:/
spróbuję skopiować folder do katalogu głównego systemu, co dałoby błędy uprawnień na wszystkich komputerach bez uruchamiania sudo (lub jako root).drugi katalog to miejsce docelowe, nie używaj tam nazwy serwera. Innymi słowy, nie musisz podawać nazwy komputera, na którym aktualnie się znajdujesz.
-r, jeśli jest to katalog.
źródło
Twój klucz nie może być publicznie widoczny, aby SSH działał. W razie potrzeby użyj tego polecenia:
źródło
Powinieneś być na swoim komputerze lokalnym, aby wypróbować powyższe polecenie scp.
Na komputerze lokalnym spróbuj:
źródło
Oto szczegóły działania instancji EC2 :
Kilka uwag na początek:
-i
scp
oznacza protokół bezpiecznego kopiowania. Znajomość słów ułatwia zapamiętanie polecenia.-i
nakazuje podanie.pem
pliku jako następnego parametru. Jeśli nie-i
, to nie potrzebujesz.pem
.:~
na koniec miejsca docelowego dla instancji EC2.źródło
Miałem dokładnie ten sam problem, moim rozwiązaniem było
scp -i /path/pem -r /path/file/ ec2-user@public aws dns name:
(zostaw to puste tutaj)po wykonaniu tej części przejdź do serwera ssh i pliku mv do wybranej lokalizacji
źródło
źródło
Poniższy format SCP działa dla mnie
SampleFile.txt : Będzie to ścieżka z katalogu głównego (w moim przypadku / home / ubuntu). w moim przypadku plik, który chciałem pobrać, to / var / www
SampleFile2.txt : Będzie to ścieżka do katalogu głównego komputera (w moim przypadku / home / MyPCUserName)
Więc muszę napisać poniżej polecenia
źródło
Wyślij plik z lokalnego na serwer:
Pobierz plik z serwera do lokalnego:
źródło
Proces używania SCP do kopiowania plików z komputera lokalnego do instancji AWS EC2 Linux jest omawiany krok po kroku (w tym punkty wymienione poniżej) w tym filmie .
Aby rozwiązać ten konkretny problem z użyciem SCP:
Musisz określić poprawnego użytkownika systemu Linux. Z Amazon :
Twój klucz prywatny nie może być widoczny publicznie. Uruchom następujące polecenie, aby tylko użytkownik root mógł odczytać plik.
źródło
Sprawdź uprawnienia do pliku .pem ... openssh zwykle nie lubi czytelnych na całym świecie kluczy prywatnych i zawiedzie (iir, scp nie wykonuje świetnej pracy, przekazując użytkownikowi tę opinię).
Czy możesz po prostu ssh z tym kluczem do swojego hosta AWS?
źródło
Najpierw należy zmienić tryb
.pem
pliku z trybu odczytu i zapisu na tryb tylko do odczytu. Można to zrobić tylko jednym poleceniem w terminalusudo chmod 400 your_public_key.pem
źródło
Wypróbowałem wszystkie wyżej wymienione sugestie i nic nie działało. Zakończyłem bieżącą instancję, uruchomiłem inną i powtórzyłem dokładnie ten sam proces. Tym razem żadnych problemów. Czasami może to być wina zdalnego ami.
źródło
To po prostu działało dla mnie. Użyłem kombinacji dwóch innych odpowiedzi na to pytanie.
„[email protected]” jest kopiowany i wklejany z publicznego DNS twojego wystąpienia ec2.
źródło
Użyłbym:
scp -i "path to .pem file" "file to be copeide from local machine" username@amazoninstance: 'destination folder to copy file on remote machine'
źródło