Bezpieczny transfer plików z SCP, SFTP i rsync
Przeniosą Państwo pliki między komputerami przez szyfrowany kanał SSH. Porównają scp, sftp i rsync, poznają ich najważniejsze opcje oraz wybiorą właściwe narzędzie do jednorazowego kopiowania, transferów interaktywnych i wydajnej synchronizacji.
Bezpieczny transfer plików z SCP, SFTP i rsync to bezpłatna lekcja Linux Server Deployment & SSH Mastery na CoddyKit. To lekcja 4 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 Linux Server Deployment & SSH Mastery, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Linux Server Deployment & SSH Mastery zawiera 4 lekcji w sumie.
Przesyłanie plików przez SSH
Ma już Pan/Pani opanowane tunele, agenty i połączenia wieloskokowe. Ta sama podstawa SSH umożliwia również bezpieczne przesyłanie plików — bez dodatkowej usługi i otwierania kolejnego portu.
SSH obsługuje trzy narzędzia: scp do szybkiego kopiowania, sftp do sesji interaktywnych oraz rsync do wydajnej synchronizacji.
scp: proste kopiowanie
scp działa podobnie jak cp, ale kopiuje pliki między maszynami. Po stronie zdalnej używa składni user@host:path.
To polecenie przesyła lokalny plik na serwer.
scp report.pdf deploy@server:/home/deploy/docs/scp: pobieranie i katalogi
Aby pobrać plik, zamień kolejność argumentów. Dodaj -r, aby rekurencyjnie skopiować całe katalogi.
scp deploy@server:/var/log/app.log ./
scp -r deploy@server:/etc/myapp ./backup/scp z niestandardowym portem i kluczami
Jeśli serwer używa niestandardowego portu, pamiętaj, że scp używa wielkiej litery -P (w przeciwieństwie do małej litery -p w ssh). Możesz też wskazać konkretny klucz za pomocą -i.
scp -P 2222 -i ~/.ssh/deploy_key file.txt deploy@server:/tmp/sftp: transfery interaktywne
sftp otwiera interaktywną sesję przypominającą wiersz poleceń FTP, ale w pełni szyfrowaną. Plikami i katalogami można zarządzać oraz przesyłać je za pomocą znanych poleceń.
put file— przesyłanieget file— pobieraniels,cd,pwd— nawigacja po stronie zdalnejlcd,lls— nawigacja po stronie lokalnej
sftp deploy@server
sftp> cd /var/www
sftp> put index.html
sftp> get backup.tar.gzCzym rsync się różni
rsync przesyła tylko te części plików, które uległy zmianie. Przy kolejnych uruchomieniach działa zdecydowanie szybciej niż scp, dlatego jest preferowanym narzędziem do kopii zapasowych i wdrożeń.
Domyślnie działa również przez SSH, zapewniając takie samo szyfrowanie.
Podstawowe użycie rsync
Typowy zestaw opcji to -avz:
-a— tryb archiwizacji (zachowuje uprawnienia, czasy i dowiązania symboliczne)-v— szczegółowe komunikaty-z— kompresowanie podczas przesyłania
To polecenie odtwarza lokalny katalog na serwerze.
rsync -avz ./site/ deploy@server:/var/www/site/Końcowe ukośniki mają znaczenie
W rsync końcowy ukośnik w źródle zmienia rezultat:
src/— kopiuje zawartość katalogu src do miejsca docelowegosrc— kopiuje sam katalog src do miejsca docelowego
Pomyłka tworzy zagnieżdżone katalogi, dlatego należy świadomie wybierać właściwą formę.
rsync -avz src/ dest/ # contents of src into dest
rsync -avz src dest/ # creates dest/src/Tworzenie kopii lustrzanej i wykluczanie plików
--delete sprawia, że miejsce docelowe staje się dokładną kopią lustrzaną, usuwając pliki nieobecne w źródle. Opcji --exclude używa się do pomijania ścieżek.
Zawsze najpierw łącz te opcje z --dry-run.
rsync -avz --delete --exclude '.git' --dry-run ./ deploy@server:/var/www/rsync z niestandardową konfiguracją SSH
Aby użyć niestandardowego portu lub klucza, przekaż jawnie polecenie ssh za pomocą -e. Działa to również z całą konfiguracją zdefiniowaną w ~/.ssh/config.
rsync -avz -e 'ssh -p 2222 -i ~/.ssh/deploy_key' ./ deploy@server:/var/www/Dobre praktyki
Przesyłaj pliki bezpiecznie i wydajnie:
- używaj
scpdo szybkiego, jednorazowego kopiowania - używaj
sftp, gdy potrzebujesz interaktywnego przeglądania - używaj
rsyncdo regularnej synchronizacji i kopii zapasowych - zawsze wykonuj
--dry-runprzed użyciem--delete
Szybki test
Sprawdź swoją wiedzę na temat bezpiecznego przesyłania plików.
Podsumowanie
Potrafi już Pan/Pani bezpiecznie przesyłać pliki przez SSH:
- scp — proste kopiowanie (
-r,-P,-i) - sftp — interaktywne sesje
put/get - rsync — wydajna synchronizacja różnicowa z opcjami
-avz,--delete,--exclude
Wszystkie trzy narzędzia ponownie wykorzystują istniejące klucze i konfigurację SSH, uzupełniając zaawansowany zestaw narzędzi SSH.
Ucz się Linux Server Deployment & SSH Mastery dzięki korepetycjom AI — za darmo
Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.
- Kursy
- 12
- Lekcje
- 48
Często zadawane pytania
Czy lekcja „Bezpieczny transfer plików z SCP, SFTP i rsync” jest bezpłatna?
Tak — pełny tekst „Bezpieczny transfer plików z SCP, SFTP i rsync” 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 Linux Server Deployment & SSH Mastery, przejdź na CoddyKit PRO. Kurs Linux Server Deployment & SSH Mastery zawiera 4 lekcji w sumie.
Co nauczysz się w „Bezpieczny transfer plików z SCP, SFTP i rsync”?
Przeniosą Państwo pliki między komputerami przez szyfrowany kanał SSH. Porównają scp, sftp i rsync, poznają ich najważniejsze opcje oraz wybiorą właściwe narzędzie do jednorazowego kopiowania, transf… Ćwiczysz Linux Server Deployment & SSH Mastery 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ąć Linux Server Deployment & SSH Mastery?
Nie wymagamy żadnego doświadczenia. Linux Server Deployment & SSH Mastery 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 4 z 4.
Ile czasu zajmuje lekcja „Bezpieczny transfer plików z SCP, SFTP i rsync”?
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 Linux Server Deployment & SSH Mastery?
Tak. Każda lekcja Linux Server Deployment & SSH Mastery 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
- Przekierowanie portów SSH (lokalne/zdalne)
- Tunele SSH i serwer proxy SOCKS
- Agent SSH i połączenia wieloskokowe
- Bezpieczny transfer plików z SCP, SFTP i rsync