50% zniżki wszystkie plany, ograniczony czas. Rozpoczęcie o godz $2.48/mo
Pozostało 10 minut
Bezpieczeństwo i sieć

Jak korzystać z Rsync w systemie Linux? Rsync do zdalnego serwera 💻📥

Lily Carnell By Lily Carnell 10 minut czytania Zaktualizowano 16 kwietnia 2023 r
rsync do zdalnego serwera

Niezależnie od tego, czy jesteś administratorem, czy zwykłym użytkownikiem, najprawdopodobniej będziesz musiał regularnie tworzyć kopie zapasowe swoich plików lub synchronizować je między kilkoma systemami. Jeśli to zadanie będzie wymagało każdorazowego nadpisywania wszystkich plików, będzie to dla Ciebie czasochłonne i męczące; W tym miejscu na ratunek przychodzi narzędzie Linux Rsync do zdalnego serwera. Ten przewodnik zapozna Cię z najbardziej przydatnymi poleceniami Rsync, umożliwiając korzystanie z jego szybkich i bezpiecznych funkcji.

Co to jest narzędzie Rsync?

Zdalna synchronizacja (Rsync) to dobrze znane polecenie systemu Linux/Unix, którego można używać do kopiowania i synchronizowania plików i katalogów poprzez dostęp zdalny lub lokalnie. Za pomocą polecenia Rsync można wykonywać różne zadania związane z danymi, takie jak synchronizacja, kopiowanie i tworzenie kopii zapasowych. Dodatkowo możesz wykonać kopię lustrzaną swojego systemu Linux na innym.

Główną ideą używania Rsync do zdalnego serwera jest wykorzystanie szybkiego przesyłania plików; do przekształcania danych między dwoma źródłami uwzględnia jedynie różnice między nimi. Innymi słowy, użycie polecenia Rsync pomoże Ci uniknąć straty czasu na ślepy transfer danych, ponieważ uwzględnia jedynie różnice między dwoma systemami Linux.

Dlaczego warto używać Rsync?

Jak być może już wiesz, dostępne są różne narzędzia do tworzenia kopii zapasowych. Pytanie brzmi: co sprawia, że ​​narzędzie Rsync jest wyjątkowe w porównaniu z innymi narzędziami lub poleceniami?

Możesz na przykład użyć Protokół przesyłania plików (FTP) mieć lokalną kopię swojej witryny internetowej lub SCP (protokół bezpiecznego kopiowania) dla tego zadania. Jednak oba te rozwiązania mają wady. FTP nie obejmuje szyfrowania danych, na co nie liczymy, i mimo że SCP nie ma problemu z niezaszyfrowanym transferem, takiego jak FTP, i tak transfer zajmuje więcej czasu, ponieważ tworzy tunel.

Dlatego jako alternatywne rozwiązanie tych problemów możemy użyć Rsync do zdalnego serwera z szyfrowaniem opartym na kluczach (zwanym po prostu Rsync SSH lub Rsync over SSH), które zapobiega wysyłaniu zduplikowanych danych i wykorzystuje klucz SSH. Należy również pamiętać, że Rsync wykorzystuje kompresję i dekompresję do odbierania i wysyłania danych, co prowadzi do mniejszego wykorzystania przepustowości.

Jak zainstalować Rsync?

Prawdopodobnie masz już zainstalowany Rsync w swoim systemie; niemniej jednak, przejdźmy do szczegółów. Zanim to zrobisz, zwróć uwagę, że SSH musi być już zainstalowany zarówno w systemie źródłowym, jak i docelowym, ponieważ chcemy używać Rsync przez SSH.

Krok 1: Sprawdzanie wersji SSH

Możesz sprawdzić wersję SSH za pomocą następującego polecenia:

ssh -V

Aby Rsync ze zdalnym serwerem, musisz mieć serwer lokalny, czyli źródło, i serwer zdalny. Należy również upewnić się, że serwer lokalny ma uprawnienia administracyjne (sudo).

Krok 2: Instalacja Rsync Linux

Poniższe polecenie umożliwi instalację Rsync na Ubuntu, Linux Mint i Debianie:

sudo apt install rsync -y

Jeśli używasz innych dystrybucji Linuksa, takich jak Fedora, CentOS, AlmaLinux i Red Hat, wpisz następujące polecenie, aby zainstalować usługę Rsync na serwerze zdalnym w swoim systemie:

sudo dnf install rsync

Uwaga: apt to pomocne narzędzie do instalacji pakietów używane w dystrybucjach opartych na Debianie.

Krok 3: Uruchamianie Rsync

Teraz musisz uruchomić, a następnie włączyć Rsync, aby rozpocząć korzystanie z niego za pomocą następujących poleceń:

sudo systemctl start rsync 
sudo systemctl enable rsync

Krok 4: Weryfikacja instalacji Rsync

Wpisz następujące polecenie, aby upewnić się, czy poprawnie zainstalowałeś Rsync i sprawdzić, której wersji używasz w systemie Linux:

rsync --version

W poniższej sekcji omówimy, jak wykorzystać możliwości tego narzędzia do tworzenia kopii zapasowych za pomocą uwierzytelniania opartego na kluczach.

Jak tworzyć kopie zapasowe za pomocą Rsync przez SSH?

Tworzenie przyrostowych kopii zapasowych jest jednym z przypadków użycia protokołu Rsync przez SSH. Aby zrozumieć, jak to działa, zwróć uwagę na następujące polecenie:

rsync -av -e ssh /sourceDir/ user@remote:/path/to/destinationDir

Uruchomienie powyższego polecenia pomoże w synchronizacji źródłoDir I miejsce doceloweReż. To polecenie zawiera inne opcje, z którymi powinieneś się zapoznać, np -a (archiwum) I -v (pełne). Zauważ to -e ssh opcja wymaga, aby połączenie Rsync odbywało się za pośrednictwem protokołu SSH.

Jeśli chcesz Połączenie SSH aby był akceptowany przez inny port niż domyślny (port 22), należy później podać numer portu -e ssh. Spójrz na poniższe polecenie, aby zrozumieć, jak to działa.

rsync -av -e ssh 1998 sourceDir/ user@remote:/path/to/destinationDir

W powyższym poleceniu zakładamy, że chcemy użyć 1998 jako naszego portu SSH, a nie 22.

Rsync do zdalnego serwera przez SSH ma inne opcje, które mogą być bardzo pomocne. Na przykład za pomocą -częściowy Opcja umożliwia kontynuację poprzedniego częściowego transferu w przypadku problemów takich jak przerwanie Rsync. Możesz także sprawdzić aktualny postęp przesyłania plików poprzez -postęp opcja. Ponadto narzędzie Linux Rsync to Remote Server umożliwia jednoczesne korzystanie z tych dwóch funkcji. W tym celu możesz skorzystać z -p flagę w wierszu poleceń.

rsync -avP  -e ssh /sourceDir/ user@remote:/path/to/destinationDir

Rsync do zdalnego serwera za pomocą polecenia klawisza umożliwia kompresję danych przed przesłaniem ich do miejsca docelowego. Mimo że do zakończenia kompresji użyje procesora, jest to nadal bardzo przydatne, ponieważ przyspiesza przesyłanie plików i wymaga mniejszego wykorzystania przepustowości.

Za pomocą polecenia Rsync można kopiować pliki i katalogi, zdalnie lub lokalnie. Główną zaletą Rsync jest to, że opiera się na algorytm transferu delta, co zapobiega kopiowaniu zduplikowanych danych ze źródła do miejsca docelowego. Jak wspomniano wcześniej, ta funkcja narzędzia Rsync to Remote Server jest pomocna, jeśli chcesz zajmować się codziennymi kopiami zapasowymi i dublowaniem systemu. Mając to na uwadze, użyjmy polecenia Rsync w przypadku zastosowań lokalnych.

Jak używać Rsync do synchronizacji lokalnej?

Zanim zagłębimy się w synchronizację lokalną i sposób użycia w tym celu polecenia Rsync, powinieneś poznać ogólną strukturę lokalnego Rsync, którą pokazano poniżej:

rsync [options] [Source] [Destination]

Kopiowanie plików lokalnie

Załóżmy, że chcemy zsynchronizować lub skopiować plik z katalogu na pulpicie (tzw Cloudzy) Do /home/Publiczne falcówka; oto co musisz wpisać:

rsync -zvh /desktop/Cloudzy/myfile.pdf /home/Public

Powyższe polecenie Rsync zawiera trzy opcje, jak -zvh; używając -z, plik zostanie skompresowany podczas przesyłania. opcja v oznacza pełne wyjście, a opcja h pomaga nam czytać dane wyjściowe jak ludzie, czyli wyświetlać dane wyjściowe czytelne dla człowieka.

Kopiowanie katalogów lokalnie

Jeśli chcemy skopiować katalog na pulpicie (tzw Cloudzy) Do /home/Publiczne falcówka; musisz wpisać poniższe polecenie:

rsync -zavh /desktop/Cloudzy/myfile.pdf /home/Public

The -a opcja w tym poleceniu archiwizuje katalogi i pliki podczas synchronizacji.

Możesz szybko sprawdzić listę katalogów folderu docelowego, aby sprawdzić, czy katalog został skopiowany, czy nie. Aby to zrobić, użyj następującego polecenia:

ls -ld /home/Public

Synchronizowanie plików i katalogów rekurencyjnie i lokalnie (Rekurencyjny Rsync)

Co by było, gdyby w pliku znajdowało się kilka katalogów i plików? /desktop/Cloudzyi chciałeś skopiować je rekurencyjnie za pomocą polecenia Linux Rsync?

W tym przypadku użyjesz -r opcja do rekurencyjnej synchronizacji lokalnych plików i katalogów. Możesz także skorzystać z opcja archiwizacji (-a) ponieważ ma inne przypadki użycia, takie jak kopiowanie rekurencyjne. Aby zapoznać się z poleceniami rekurencyjnymi Rsync, spójrz na poniższe polecenie.

rsync -zrvh /desktop/Cloudzy /home/Public

Or

rsync -zrvh /desktop/Cloudzy /home/Public

Kopiowanie katalogów i plików z systemu lokalnego na zdalny

Oprócz właściwości Linux Rsync do zdalnego serwera, o których wspominaliśmy w poprzednich sekcjach, to dobrze znane polecenie umożliwia także synchronizowanie plików i katalogów z komputera lokalnego do systemu zdalnego.

Załóżmy, że chcemy skopiować folder (/desktop/Cloudzy/nowyfolder) z komputera lokalnego do systemu zdalnego (z 192.168.1.79) pod /mycpt; oto przykład pokazujący, jak to działa:

rsync -zarvh /desktop/Cloudzy/newfolder [email protected]:/mycpt

Jak kopiować katalogi bez ich plików za pomocą Rsync?

W niektórych przypadkach możemy chcieć użyć funkcji Linux Rsync do zdalnego serwera w celu kopiowania katalogów bez plików; ta synchronizacja może odbywać się z komputera zdalnego do systemu lokalnego lub na odwrót.

W tym artykule korzystaliśmy ze zdalnego systemu pod adresem 192.168.1.79. Załóżmy, że mamy to pod /mycpt folder i chcesz skopiować plik /desktop/Cloudzy katalogu z systemu lokalnego bez dołączania jego plików. Aby to zrobić, wprowadź poniższe polecenie:

rsync -av -f"+ */" -f"- *" /desktop/Cloudzy [email protected]:/mycpt/

Inne przydatne polecenia Rsync

Tutaj omówimy kilka dodatkowych poleceń Linux Rsync, które mogą być dla Ciebie praktyczne.

Określ maksymalny rozmiar transferu plików w Rsync

Możesz określić limit rozmiaru transferu plików za pomocą polecenia Rsync, co jest przydatne w przypadku regularnego uruchamiania Rsync na serwerze zdalnym i komputerze lokalnym, gdzie przepustowość i czas są istotnymi czynnikami do rozważenia. Zwróć uwagę na następujące polecenie, aby zapoznać się z ustawianiem ograniczeń rozmiaru podczas przesyłania plików Rsync:

rsync -avzhe ssh --max-size='100k' /desktop/Cloudzy [email protected]:/home/Public

Określ minimalny rozmiar transferu pliku w Rsync

Podobnie jak w przypadku ustawiania maksymalnego rozmiaru przesyłanego pliku, możesz określić minimalny rozmiar pliku, który chcesz przesłać za pomocą narzędzia Rsync do narzędzia serwera zdalnego. W poniższym poleceniu ustawimy minimalny rozmiar pliku na 10k:

rsync -avzhe ssh --min-size='10k' /desktop/Cloudzy [email protected]:/home/Public

Usuń pliki ze źródła po zakończeniu synchronizacji

Po zakończeniu korzystania z polecenia Rsync może nie być już konieczne posiadanie pliku w systemie źródłowym. W takim przypadku możesz użyć polecenia Linux Rsync, jak poniżej, aby usunąć pliki ze źródła:

rsync --remove-source-files -zvh /desktop/Cloudzy [email protected]:/home/Public

Synchronizacja pracy na sucho

Jeśli dopiero zaczynasz korzystać z narzędzia Linux Rsync i nie znasz jego opcji, a praca na sucho to właściwa droga. Kiedy użyjesz uruchomienia próbnego z Rsync, nie zmieni to plików, ale wyświetli dane wyjściowe polecenia. Po upewnieniu się, że chcesz uruchomić polecenie, możesz usunąć plik –praca na sucho opcję z niego i wykonaj ją na terminalu. Spójrz na następujące polecenie, aby dowiedzieć się więcej o funkcjonalności pracy próbnej.

rsync --dry-run --remove-source-files -zvh /desktop/Cloudzy [email protected]:/home/Public

Podsumowanie: Korzystanie z poleceń Rsync systemu Linux

W tym artykule wyjaśniono, jak używać funkcji Linux Rsync do serwera zdalnego (i Rsync do serwera lokalnego) w różnych przypadkach użycia, w tym dublowanie systemu, tworzenie kopii zapasowych plików oraz kopiowanie plików i katalogów lokalnie i zdalnie przy użyciu wydajnego podejścia. To dobrze znane polecenie systemu Linux umożliwia szybki transfer plików, umożliwiając jednocześnie korzystanie z protokołu SSH i kompresji danych.

Hosting VPS pod Linuksem

Zdobądź ekonomiczny lub premium Linux VPS do hostowania swojej witryny internetowej lub zdalnego pulpitu, w najniższej cenie. VPS Działa na platformie Linux KVM w celu zwiększenia wydajności i działa na wydajnym sprzęcie z pamięcią masową SSD NVMe w celu zwiększenia szybkości.

Przeczytaj więcej

Możesz w pełni wykorzystać możliwości tego systemu operacyjnego, pobierając plik Serwer VPS z Linuksem rozwiązanie firmy Cloudzy, umożliwiające korzystanie z planów hostingowych opartych na KVM. Z dumą oferujemy wysokiej jakości usługi VPS z czasem sprawności na poziomie 99,95%, stabilnością, minimalnymi opóźnieniami, centrami danych na całym świecie (12 lokalizacji), ultraszybką pamięcią masową SSD i całodobową pomocą techniczną. Możesz zacząć korzystać z Linux VPS za 4,95 USD i skalować go, jeśli chcesz bardziej zaawansowanego rozwiązania.

Często zadawane pytania

Z jakiego portu TCP korzysta Rsync?

SSH zazwyczaj używa portu 22 jako portu domyślnego. Dlatego też, jeśli użyjesz rsync przez SSH, będzie on działał na tym konkretnym porcie. Z drugiej strony, w przypadku korzystania z demona Rsync, używany będzie port 873.

Co to jest Rsync?

Rsync to narzędzie dla systemu Linux, które może synchronizować pliki i katalogi zdalnie lub lokalnie. Za pomocą polecenia Rsync można wykonywać różne zadania związane z danymi, takie jak synchronizacja, kopiowanie i tworzenie kopii zapasowych.

Udział

Więcej z bloga

Czytaj dalej.

Obraz tytułowy Cloudzy do przewodnika MikroTik L2TP VPN, przedstawiający laptopa łączącego się z szafą serwerową poprzez świecący niebiesko-złoty cyfrowy tunel z ikonami tarcz.
Bezpieczeństwo i sieć

Konfiguracja MikroTik L2TP VPN (z IPsec): Przewodnik po RouterOS (2026)

W tej konfiguracji MikroTik L2TP VPN, L2TP obsługuje tunelowanie, podczas gdy IPsec obsługuje szyfrowanie i integralność; ich sparowanie zapewnia zgodność z klientem natywnym bez wieku osób trzecich

Rexa CyrusRexa Cyrus 9 minut czytania
Okno terminala wyświetlające komunikat ostrzegawczy SSH o zmianie identyfikacji zdalnego hosta, z tytułem Fix Guide i logo Cloudzy na ciemnoturkusowym tle.
Bezpieczeństwo i sieć

Ostrzeżenie: identyfikacja hosta zdalnego uległa zmianie i jak to naprawić

SSH to bezpieczny protokół sieciowy, który tworzy szyfrowany tunel pomiędzy systemami. Pozostaje popularny wśród programistów, którzy potrzebują zdalnego dostępu do komputerów bez konieczności posiadania grafiki

Rexa CyrusRexa Cyrus 10 minut czytania
Ilustracja przewodnika rozwiązywania problemów z serwerem DNS z symbolami ostrzegawczymi i niebieskim serwerem na ciemnym tle w przypadku błędów rozpoznawania nazw w systemie Linux
Bezpieczeństwo i sieć

Tymczasowa awaria rozpoznawania nazw: co to oznacza i jak to naprawić?

Podczas korzystania z Linuksa możesz napotkać tymczasowy błąd rozpoznawania nazw podczas próby uzyskania dostępu do stron internetowych, aktualizacji pakietów lub wykonywania zadań wymagających połączenia internetowego

Rexa CyrusRexa Cyrus 12 minut czytania

Gotowy do wdrożenia? Od 2,48 USD/mies.

Niezależna chmura, od 2008. AMD EPYC, NVMe, 40 Gbps. 14-dniowy zwrot pieniędzy.