0Pricing
DevOps Bootcamp · Lekcja

SCP i Rsync do przesyłania plików

Opanuje Pan/Pani bezpieczne kopiowanie plików za pomocą „scp” oraz wydajną synchronizację plików za pomocą „rsync” w operacjach lokalnych i zdalnych.

SCP i Rsync do przesyłania plików to bezpłatna lekcja DevOps Bootcamp na CoddyKit. To lekcja 3 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej DevOps Bootcamp, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs DevOps Bootcamp zawiera 4 lekcji w sumie.

Bezpieczne przesyłanie plików

Podczas pracy ze zdalnymi serwerami bezpieczne przesyłanie plików ma kluczowe znaczenie. Potrzebne są narzędzia, które chronią dane podczas przesyłania i zapewniają ich integralność.

W tej lekcji przedstawiono dwa zaawansowane polecenia: scp do bezpiecznego kopiowania oraz rsync do wydajnej synchronizacji.

SCP: Secure Copy Protocol

SCP to skrót od Secure Copy Protocol. Jest to narzędzie wiersza poleceń umożliwiające bezpieczne kopiowanie plików i katalogów między hostami w sieci.

  • Wykorzystuje SSH do przesyłania danych, zapewniając szyfrowanie i uwierzytelnianie.
  • Doskonale nadaje się do szybkiego, jednorazowego przesyłania plików.
  • Jest proste w użyciu zarówno podczas kopiowania z komputera lokalnego na zdalny, jak i ze zdalnego na lokalny.

Składnia SCP: z lokalnego na zdalny

Aby skopiować plik z komputera lokalnego na zdalny serwer, użyj następującej składni:

scp local_file user@remote_host:/path/to/destination

  • local_file: plik na bieżącym komputerze.
  • user: nazwa użytkownika na zdalnym serwerze.
  • remote_host: adres IP lub nazwa hosta zdalnego serwera.
  • /path/to/destination: miejsce, w którym plik zostanie zapisany na zdalnym serwerze.

Przykład SCP: z lokalnego na zdalny

Skopiujmy plik o nazwie myreport.txt z bieżącego katalogu do katalogu /home/coddy/reports/ na serwerze server.com.

scp myreport.txt coddy@server.com:/home/coddy/reports/

Składnia SCP: ze zdalnego na lokalny

Aby skopiować plik ze zdalnego serwera na komputer lokalny, składnia jest podobna, ale źródło i miejsce docelowe są zamienione:

scp user@remote_host:/path/to/remote_file local_destination

  • user@remote_host:/path/to/remote_file: pełna ścieżka do pliku na zdalnym serwerze.
  • local_destination: miejsce, w którym plik zostanie zapisany na komputerze lokalnym. Użyj ., aby wskazać bieżący katalog.

Przykład SCP: ze zdalnego na lokalny

Pobierzmy plik o nazwie data.csv z katalogu /home/coddy/ na serwerze server.com i zapiszmy go w bieżącym katalogu lokalnym.

scp coddy@server.com:/home/coddy/data.csv .

Rsync: wydajna synchronizacja

Rsync (synchronizacja zdalna) to wszechstronne narzędzie do lokalnego i zdalnego kopiowania oraz synchronizowania plików i katalogów.

Jego najważniejsze zalety:

  • Wydajność: przesyła tylko różnice między plikami, a nie całe pliki, oszczędzając przepustowość.
  • Możliwość wznowienia: umożliwia wznowienie przerwanych transferów.
  • Zachowywanie atrybutów: zachowuje uprawnienia, znaczniki czasu i właścicieli.
  • Elastyczność: oferuje wiele opcji szczegółowego dostosowywania transferów.

Składnia Rsync: podstawowe użycie

Typowa składnia polecenia rsync do synchronizowania katalogu lokalnego ze zdalnym wygląda następująco:

rsync [options] local_source/ user@remote_host:/path/to/destination/

  • [options]: opcje sterujące działaniem rsync.
  • local_source/: katalog na komputerze lokalnym (końcowy ukośnik jest ważny!).
  • user@remote_host:/path/to/destination/: zdalna lokalizacja.

Rsync w praktyce: podstawowa synchronizacja

Zsynchronizujmy lokalny katalog myproject/ z katalogiem /srv/web/myproject/ na serwerze server.com. Użyjemy opcji -avz, które włączają tryb archiwizacji, szczegółowe komunikaty i kompresję.

rsync -avz myproject/ coddy@server.com:/srv/web/myproject/

Możliwości Rsync: najważniejsze opcje

Rsync oferuje wiele zaawansowanych opcji:

  • -a (archive): popularny skrót zastępujący kilka opcji (rekurencyjne kopiowanie, zachowywanie uprawnień, znaczników czasu itd.).
  • -z (compress): kompresuje dane plików podczas przesyłania, zmniejszając wykorzystanie przepustowości.
  • --delete: usuwa z katalogu docelowego nadmiarowe pliki, których nie ma w źródle. Należy używać ostrożnie!
  • -n (dry run): pokazuje, co zostałoby wykonane, bez wprowadzania zmian. Zawsze warto najpierw przetestować polecenie za pomocą tej opcji!

Szybkie sprawdzenie: narzędzia do przesyłania plików

Musisz skopiować duży katalog z komputera lokalnego na zdalny serwer. Chcesz mieć pewność, że przy kolejnych uruchomieniach będą przesyłane tylko zmienione pliki, a pliki usunięte ze źródła zostaną również usunięte z miejsca docelowego.

Które polecenie i opcje najlepiej nadają się do tego zadania?

Podsumowanie: SCP i Rsync — poziom zaawansowany

Opanowali Państwo dwa niezbędne narzędzia do bezpiecznego i wydajnego przesyłania plików!

  • SCP doskonale sprawdza się przy bezpiecznym, szybkim, jednorazowym kopiowaniu plików i katalogów za pomocą SSH.
  • Rsync jest najlepszym wyborem do synchronizowania plików i katalogów. Zapewnia wyjątkową wydajność, przesyłając tylko zmiany, oraz oferuje zaawansowane opcje, takie jak `--delete`, umożliwiające dokładne odzwierciedlanie zawartości.

Dobieraj właściwe narzędzie do zadania, aby sprawnie zarządzać plikami w sieci!

Często zadawane pytania

Czy lekcja „SCP i Rsync do przesyłania plików” jest bezpłatna?

Tak — pełny tekst „SCP i Rsync do przesyłania plików” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu DevOps Bootcamp, przejdź na CoddyKit PRO. Kurs DevOps Bootcamp zawiera 4 lekcji w sumie.

Co nauczysz się w „SCP i Rsync do przesyłania plików”?

Opanuje Pan/Pani bezpieczne kopiowanie plików za pomocą „scp” oraz wydajną synchronizację plików za pomocą „rsync” w operacjach lokalnych i zdalnych. Ćwiczysz DevOps Bootcamp z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć DevOps Bootcamp?

Nie wymagamy żadnego doświadczenia. DevOps Bootcamp w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 3 z 4.

Ile czasu zajmuje lekcja „SCP i Rsync do przesyłania plików”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji DevOps Bootcamp?

Tak. Każda lekcja DevOps Bootcamp zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Podstawowe narzędzia sieciowe (ping, ip, netstat)
  2. Podstawy bezpiecznej powłoki (SSH)
  3. SCP i Rsync do przesyłania plików
  4. Uwierzytelnianie SSH za pomocą kluczy i plik konfiguracyjny
← Powrót do DevOps Bootcamp