10 poleceń SCP do przesyłania plików/folderów w Linux

10 poleceń SCP do przesyłania plików/folderów w Linux

Administratorzy Linuksa powinni znać Cli środowisko. Od GUI Tryb w serwerach Linux nie jest powszechny do instalowania. Ssh Może być najpopularniejszym protokołem umożliwiającym administratorom Linux zarządzanie serwerami za pomocą zdalnego bezpiecznego sposobu. Wbudowany z Ssh polecenie jest SCP Komenda. SCP służy do kopiowania plików między serwerami w bezpieczny sposób.

[Możesz także polubił: Jak zabezpieczyć i utwardzić serwer OpenSsh]

10 poleceń Linux SCP

Podstawowa składnia polecenia SCP

Poniższe polecenie będzie czytane jako „Kopiuj nazwa_file_file" do "folder docelowy" Na "Destination_host" za pomocą "Konto nazwy użytkownika".

SCP Source_file_name [e -mail chroniony] _host: Destination_Folder

Istnieje wiele parametrów w SCP polecenie, których możesz użyć. Oto parametry, które mogą używać codziennie.

Podaj szczegółowe informacje o procesie SCP za pomocą parametru -v

Podstawy SCP Polecenie bez parametrów skopiuje pliki w tle. Użytkownicy nic nie zobaczą, chyba że proces zostanie wykonany lub pojawi się jakiś błąd.

Możesz użyć „-v„Parametr do wydrukowania informacji o debugowaniu na ekranie. Może pomóc w debugowaniu problemów związanych z połączeniem, uwierzytelnianiem i konfiguracją.

[e -mail chroniony] ~/Documents $ scp -v etykieta.PDF [e -mail chroniony]@202.X.X.X:. 
Przykładowy wyjście
SCP Pokaż postęp podczas kopiowania plików
Wykonanie: programu/usr/bin/ssh host 202.X.X.x, użytkownik marianto, polecenie scp -v -t . OpenSSH_6.0p1 Debian-3, Openssl 1.0.1C 10 maja 2012 r. DEBUG1: Odczyt danych konfiguracji/etc/ssh/ssh_config debug1:/etc/ssh/ssh_config linia 19: Stosowanie opcji dla * debug1: Łączenie do 202.X.X.x [202.X.X.x] port 22. Debug1: ustalone połączenie. Debug1: host '202.X.X.x 'jest znany i pasuje do klucza hosta RSA. Debug1: Znaleziono klucz w/home/pungki/.SSH/znane_hosts: 1 Debug1: SSH_RSA_VERIFIF: Podpis PRAWIDŁOWY DEBUG1: Następna Metoda uwierzytelniania: Hasło [E -mail chronione] Hasło: Debug1: Uwierzytelnianie się powiodło (hasło). Uwierzytelnione do 202.X.X.X ([202.X.X.X]: 22). Wysyłanie trybów plików: etykieta C0770 3760348.Zlew pdf: etykieta C0770 3760348.Etykieta PDF.PDF 100% 3672KB 136.0KB/S 00:27 Przeniesiono: Wysłane 3766304, otrzymane 3000 bajtów, w 65.2 sekundy bajtów na sekundę: wysłane 57766.4, otrzymałem 46.0 DEBUG1: Status wyjścia 0

Zapewnij czasy modyfikacji, czasy dostępu i tryby z oryginalnych plików

„„-P„Parametr pomoże ci w tym. Szacowany czas i prędkość połączenia pojawią się na ekranie.

[e -mail chroniony] ~/Documents $ scp -p etykieta.PDF [chroniony e -mail]:.
Przykładowy wyjście
SCP szacuje czas potrzebny na kopiowanie dużego pliku
Hasło [e -mail chronione]: etykieta.PDF 100% 3672KB 126.6KB/s 00:29

Spraw, aby przesyłać pliki szybciej za pomocą parametru -C

Jednym z parametrów, które mogą szybsze przesyłanie plików, jest „-C”Parametr. „„-C„Parametr skompresuje twoje pliki w podróży. Unikalną rzeczą jest tylko kompresja w sieci. Kiedy plik dotrze na serwer docelowy, powróci do oryginalnego rozmiaru, tak jak przed kompresją.

Spójrz na te polecenia. Używa jednego pliku 93 MB.

[wiadomości e -mail] ~/Documents $ Scp -pv Wiadomości.Log [chroniony e -mail]:.
Przykładowy wyjście
SCP przenosi plik bez kompresji
Wykonanie: programu/usr/bin/ssh host 202.X.X.x, użytkownik marianto, polecenie scp -v -p -t . OpenSSH_6.0p1 Debian-3, Openssl 1.0.1C 10 maja 2012 r. DEBUG1: Odczyt danych konfiguracji/etc/ssh/ssh_config debug1:/etc/ssh/ssh_config linia 19: Stosowanie opcji dla * debug1: Łączenie do 202.X.X.x [202.X.X.x] port 22. Debug1: ustalone połączenie. Debug1: Plik tożsamości/dom/pungki/.SSH/ID_RSA Type -1 Debug1: Znaleziono klucz w/home/pungki/.ssh/znane_hosts: 1 debug1: ssh_rsa_verify: podpis prawidłowy debug1: Próbowanie klucza prywatnego:/home/pungki/.SSH/ID_RSA DEBUG1: Następna Metoda uwierzytelniania: Hasło [E -mail chronione] Hasło: Debug1: Uwierzytelnianie powiodło się (hasło). Uwierzytelnione do 202.X.X.X ([202.X.X.X]: 22). Debug1: Wysyłanie polecenia: Scp -v -p -t . Plik MTime 1323853868 ATIME 1380425711 Wysyłanie pliku znacznik czasu: T1323853868 0 1380425711 0 Wiadomości 0.log 100% 93 MB 58.6KB/S 27:05 Przeniesiono: Wysłane 97614832, otrzymane 25976 bajtów, w 1661.3 sekundy bajtów na sekundę: wysłane 58758.4, otrzymałem 15.6 DEBUG1: Status wyjścia 0

Kopiowanie plików bez „-C„Parametr spowoduje 1661.3 sekundy. Możesz porównać wynik z polecenie poniżej, za pomocą „-C" parametr.

[wiadomości e -mail] ~/Documents $ SCP -CPV Wiadomości.Log [chroniony e -mail]:.
Przykładowy wyjście
SCP przenosi plik szybciej za pomocą kompresji
Wykonanie: programu/usr/bin/ssh host 202.X.X.x, użytkownik marianto, polecenie scp -v -p -t . OpenSSH_6.0p1 Debian-3, Openssl 1.0.1C 10 maja 2012 r. DEBUG1: Odczyt danych konfiguracji/etc/ssh/ssh_config debug1:/etc/ssh/ssh_config linia 19: Stosowanie opcji dla * debug1: Łączenie do 202.X.X.x [202.X.X.x] port 22. Debug1: ustalone połączenie. Debug1: Plik tożsamości/dom/pungki/.SSH/ID_RSA Type -1 Debug1: Host '202.X.X.x 'jest znany i pasuje do klucza hosta RSA. Debug1: Znaleziono klucz w/home/pungki/.ssh/znane_hosts: 1 debug1: ssh_rsa_verify: podpis prawidłowy debug1: następny metoda uwierzytelniania: Publickey debug1: Próbowanie klucza prywatnego:/home/pungki/.SSH/ID_RSA DEBUG1: Następna metoda uwierzytelniania: hasło [e -mail chronione] hasło: Debug1: Włączanie kompresji na poziomie 6. Debug1: Uwierzytelnianie się powiodło (hasło). Uwierzytelnione do 202.X.X.X ([202.X.X.X]: 22). DEBUG1: Kanał 0: Nowa [Sesja klienta] Debug1: Wysyłanie polecenia: SCP -v -p -t . Plik MTime 1323853868 ATIME 1380428748 Wysyłanie pliku znaczniki czasu: T1323853868 0 1380428748 0 Sink: T1323853868 0 1380428748 0 Wysyłanie trybów plików: C0600 97517300 Wiadomości.Wiadomości dziennika.log 100% 93 MB 602.7KB/s 02:38 Przeniesiono: Wysłane 8905840, otrzymane 15768 bajtów, w 162.5 sekund bajtów na sekundę: wysłane 54813.9, otrzymałem 97.0 Debug1: Status wyjścia 0 Debug1: Compress wychodzący: surowe dane 97571111, skompresowane 8806191, współczynnik 0.09 DEBUG1: Compress Incoming: Surowe dane 7885, sprężone 3821, współczynnik 0.48

Jak widać, gdy używasz kompresji, proces transferu jest wykonywany 162.5 sekundy. To jest 10 razy szybciej niż nie używanie „-C”Parametr. Jeśli kopiujesz wiele plików w całej sieci, „-C„Parametr pomoże ci skrócić potrzebny czas potrzebny.

Należy zauważyć, że metoda kompresji nie będzie działać na żadnych plikach. Gdy plik źródłowy jest już skompresowany, nie znajdziesz tam żadnej poprawy. Pliki takie jak .zamek błyskawiczny, .RAR, kino, I .ISO Pliki nie będą miały wpływ „„-C”Parametr.

Zmień szyfr SCP, aby szyfrować pliki

Domyślnie SCP za pomocą "AES-128„Aby szyfrować pliki. Jeśli chcesz zmienić się na inny szyfr, aby go zaszyfrować, możesz użyć „-C”Parametr. Spójrz na to polecenie.

[e -mail chroniony] ~/Documents $ scp -c 3DES etykieta.PDF [chroniony e -mail]:. Hasło [e -mail chronione]: etykieta.PDF 100% 3672KB 282.5KB/s 00:13

Powyższe polecenie mówi SCP użyć Algorytm 3DES Aby zaszyfrować plik. Uważaj, aby ten parametr za pomocą „-C" nie "-C".

Ograniczanie użycia przepustowości za pomocą polecenia SCP

Kolejnym parametrem, który może być przydatny, jest „-L”Parametr. „„-L„Parametr ograniczy przepustowość do użycia. Przydatne będzie, jeśli wykonasz skrypt automatyzacji, aby skopiować wiele plików, ale nie chcesz, aby przepustowość jest wyczerpana przez SCP proces.

[e -mail chroniony] ~/Documents $ scp -l 400 etykieta.PDF [chroniony e -mail]:. Hasło [e -mail chronione]: etykieta.PDF 100% 3672KB 50.3KB/s 01:13

400 wartość za „-L”Parametr jest oznaczony, że ograniczamy przepustowość dla SCP tylko proces 50 kb/s. Należy pamiętać, że przepustowość jest określona w Kilobits/Sec (KBPS). To znaczy, że 8 bitów są równe 1 bajt.

Chwila SCP liczy się Kilobyte/Sec (KB/s). Więc jeśli chcesz ograniczyć przepustowość SCP Maksymalnie tylko 50 KB/s, Musisz to ustawić 50 x 8 = 400.

Podaj określony port do użycia z SCP

Zazwyczaj, SCP używa portu 22 Jako dom domyślny. Ale ze względów bezpieczeństwa możesz zmienić port na inny port. Na przykład używamy portu 2249. Wtedy polecenie powinno być takie.

[e -mail chroniony] ~/Documents $ scp -p 2249 etykieta.PDF [chroniony e -mail]:. Hasło [e -mail chronione]: etykieta.PDF 100% 3672KB 262.3KB/s 00:14

Upewnij się, że używa kapitału „P" nie "P" od "P”Jest już używany do zachowanych czasów i trybów.

Kopiuj pliki wewnątrz katalogu rekurencyjnie

Czasami musimy skopiować katalog i wszystko pliki/katalogi w środku tego. Będzie lepiej, jeśli uda nam się to zrobić 1 Komenda. SCP obsługuje ten scenariusz za pomocą „-R”Parametr.

[Dokumenty chronione e -mail] ~/Documents $ scp -r [e -mail chroniony]:. Hasło [e -mail chronione]: etykieta.PDF 100% 3672KB 282.5KB/s 00:13 SCP.TXT 100% 10KB 9.8KB/s 00:00

Po zakończeniu procesu kopiowania na serwerze docelowym znajdziesz katalog o nazwie „dokumenty”Ze wszystkimi jego plikami. Folder "dokumenty”Jest automatycznie tworzony.

Wyłącz miernik postępu i komunikat ostrzegawczy / diagnostyczny

Jeśli zdecydujesz się nie widzieć miernika postępu i komunikatów ostrzegawczych / diagnostycznych z SCP, możesz go wyłączyć za pomocą „-Q”Parametr. Oto przykład.

[e -mail chroniony] ~/Documents $ scp -q etykieta.PDF [chroniony e -mail]:. Hasło [e -mail chronione]: [e -mail chroniony] ~/Documents $

Jak widać, po wprowadzeniu hasła nie ma informacji o procesie SCP. Po zakończeniu procesu ponownie zobaczysz monit.

Skopiuj pliki za pomocą SCP przez proxy

Serwer proxy jest zwykle używany w środowisku biurowym. Natywnie, SCP nie jest skonfigurowany proxy. Kiedy twoje środowisko korzystające z proxy, musisz „powiedzieć” SCP, aby komunikować się z proxy.

Oto scenariusz. Adres proxy to 10.0.96.6 A port proxy to 8080. Proxy zaimplementował również uwierzytelnianie użytkownika. Najpierw musisz stworzyć „~/.ssh/config ” plik. Po drugie, umieszczasz w sobie to polecenie.

ProxyCommand/USR/bin/Corkscrew 10.0.96.6 8080 %h %p ~/.ssh/proxyauth

Następnie musisz utworzyć plik „~/.ssh/proxyauth" który zawiera.

Myusername: MyPassword

Następnie możesz zrobić SCP przejrzysty jak zwykle.

Zauważ, że korkociąg może nie być jeszcze zainstalowany w twoim systemie. Na mojej mennicy Linux muszę ją najpierw zainstalować, używając standardowej procedury instalacji mennicy Linux.

$ apt-get instaluj korkociąg

W przypadku innych systemów opartych na Yum użytkownicy mogą instalować korkociąg za pomocą następującego polecenia Yum.

# mniam instaluj korkociąg

Inną rzeczą jest to, że od „~/.ssh/proxyauth”Plik zawiera„ Twój ”nazwa użytkownika" I "hasło”W formacie oczyszczonym tekst.

Wybierz inny plik SSH_CONFIG

W przypadku użytkowników mobilnych, którzy często przełączają się między sieciami firmowymi a sieciami publicznymi, cierpienie zawsze będzie zmieniać ustawienia w SCP. Lepiej, jeśli możemy umieścić inną ssh_config Plik do naszych potrzeb.

Oto przykładowy scenariusz

Proxy jest używany w sieci firmy, ale nie w sieci publicznej i regularnie przełączasz sieci.

[e -mail chroniony] ~/Documents $ scp -f/home/pungki/proxy_ssh_config etykieta.PDF [chroniony e -mail]:. Hasło [e -mail chronione]: etykieta.PDF 100% 3672KB 282.5KB/s 00:13

Domyślnie "ssh_config„Plik na użytkownika zostanie umieszczony w„~/.ssh/config". Tworzenie konkretnego „ssh_config„Plik o kompatybilności proxy ułatwi przełączanie między sieciami.

Kiedy jesteś w sieci firmy, możesz użyć „-F”Parametr. Kiedy jesteś w sieci publicznej, możesz pominąć „-F”Parametr.

[Może się również polubił: PSCP - transfer/kopiowanie plików do wielu serwerów Linux za pomocą pojedynczej powłoki]

To wszystko SCP. Możesz zobaczyć Strony człowieka z SCP Więcej szczegółów. Zapraszam do zostawienia komentarzy i sugestii.