Rsync Commad w Linux z 12 praktycznymi przykładami
- 4802
- 1192
- Maurycy Napierała
Rsync (synchronizacja zdalna) jest narzędziem wiersza poleceń do synchronizacji plików między dwoma systemami opartymi na UNIX. Rsync może być również używany w tym samym systemie do synchronizacji plików między dwoma katalogami. RSYNC używa algorytmu transferu delta do wysyłania tylko różnic między plikami źródłowymi a istniejącymi plikami do miejsca docelowego. RSync wykorzystuje mniej danych w sieci, aby zachować przepustowość.
Rsync jest zazwyczaj stosowany do tworzenia kopii zapasowych dużych ilości danych lub przesyłania danych między dwoma komputerami. RSYNC obsługuje synchronizację plików lokalnych do lokalnych, lokalnych i. Jednak nie jest obsługiwana synchronizacja plików zdalnych do re-re-refleksji.
W tym poście przyjrzymy się niektórym powszechnym zastosowaniom narzędzia rsync.
Składnia
rsync [opcja…] Źródło… [miejsce docelowe]
- Tutaj ŹRÓDŁO Może być lokalnym katalogiem, takim jak „/opt/kopia zapasowa” lub zdalna lokalizacja, taka jak „[e -mail chroniony]:/opt/remotedir/”
- Także MIEJSCE DOCELOWE można nazwać lokalnym katalogiem lub zdalnym katalogiem systemu
- Zarówno źródło, jak i miejsce docelowe mogą odnosić się do lokalnego katalogu.
- Tylko jedno źródło lub miejsce docelowe może być pilotem. Nie możesz używać obu odległych lokalizacji.
Opcje poleceń rsync
RSync oferuje wiele przydatnych opcji, które kontrolują każdy aspekt jego zachowania i czyni go bardziej elastycznym dla synchronizacji plików. Poniżej znajduje się lista niektórych często używanych opcji poleceń RSYNC:
-v, -vv -vvv, --verbose
- Ta opcja jest używana do godnych dzienników na standardowym wyjściu. Domyślny rsync działa w milczeniu. Im wyższa liczba „v” zwiększa poziom rejestrowania.-A, -Archiwum
- Jest najczęstszą opcją używaną z poleceniem RSYNC. Tryb archiwum jest równoważny opcjom-RlptGod
. Zasadniczo zawiera wszystkie niezbędne opcje, takie jak rekurencyjne, zachowanie uprawnień do plików, symboliczne linki, własność plików i znaczniki czasu.-Z, -Compress
- Użyj tej opcji, aby przesyłać dane w formacie sprężonym. Co jest przydatne do oszczędzania przepustowości.-H,-czytanie w ludziach
- Użyj tej opcji, aby wydrukować wszystkie wyjścia w formacie czytelnym człowieka.--usuwać
- Użyj tej opcji tylko wtedy, gdy chcesz usunąć pliki w miejscu docelowym, co nie istnieje w źródle.--exclude = wzór
- Wyklucz pliki z RSync, dopasowując dany wzór.rsync -exclude '*.src/ dest/ jpg
--obejmują = wzór
- Dołącz pliki w rsync pasującym do podanego wzoru.rsync -Include '*.jpg '--include'*.txt ' -exclude'*'src/ dest/
Przykłady rsync
Oto 12 praktycznych przykładów polecenia RSYNC w systemach Unix/Linux.
- Kopiuj/synchronizę i katalogi lokalne do lokali
RSYNC umożliwia synchronizację plików między katalogami w systemie lokalnym. Na przykład mam kilka plików kopii zapasowych na moim komputerze /MNT/Backup informator. Chcę skopiować/zsynchronizować wszystkie pliki z dyskem USB, który jest zamontowany /mnt/dysk1. Użyj następującego polecenia, aby zsynchronizować wszystkie pliki i katalogi z /Opt/Backup do /mnt /dysk1.
Kopiuj/synchronizację plików i katalogi między dwoma lokalnymi katalogamirsync -AvHz/opt/backup/mnt/disk1/
Wysyłanie przyrostowej listy plików kopii zapasowej/ kopii zapasowej/ Tecadmin.22 MAR2022.SQL Backup/Tecadmin.22 MAR2022.smoła.GZ Backup/Tecadmin.23 MAR2022.SQL Backup/Tecadmin.23 MAR2022.smoła.GZ wysłał 1.09G bajtów otrzymało 96 bajtów 23.39 mln bajtów/SEC Całkowity rozmiar wynosi 1.47 g szybkość wynosi 1.35 - Kopiuj/synchronizę i katalogi lokalne
Korzystając z RSync, możemy szybko skopiować/synchronizować pliki z lokalnych do zdalnych systemów. Na przykład muszę przenieść stronę internetową na nowy serwer. Wymagało to treści witryny, aby była kopią zdalnych systemów. Użyj poniższego polecenia, aby skopiować wszystkie pliki z lokalnego /var/www/html katalog do pilota (192.168.1.100) Systems/var/www/html katalog.
rsync -AvHz/var/www/html [e -mail chroniony]:/var/www/html/
Powyższe polecenie jest pomocne dla administratora systemu, który regularnie kopiuje pliki między dwoma systemami.
- Kopiuj/synchroniza
Polecenie rsync pozwala również źródło jako zdalny katalog, ale wówczas miejsce docelowe musi być lokalne. Użyj katalogu źródłowego z hosta zdalnego, a miejscem docelowym musi być katalog lokalny. Na przykład muszę skopiować wszystkie przechowywane pliki kopii zapasowych /kopie zapasowe katalog na pilocie do katalogu lokalnego /opt /kopii zapasowej.
rsync -AvHz [e -mail chroniony]:/kopie zapasowe/opt/kopie zapasowe
- Korzystanie z rsync nad SSH
RSYNC łączy się z systemami zdalnymi przy użyciu demona RSync bezpośrednio przez TCP. Możemy poinstruować RSync, aby użyć bezpiecznej powłoki (SSH) do łączenia systemów zdalnych, zamiast tworzenia połączenia TCP.
Używać
-mi
opcja określenia zdalnej powłoki. Poniższe polecenie użyje SSH jako zdalnej powłoki:rsync -AvHz -e ssh/src [e -mail chroniony]:/dest/
Jeśli serwer SSH w miejscu docelowym działa na niestandardowym porcie, użyj tego samouczka, aby podłączyć RSYNC przez niestandardowy port.
- Ignoruj pliki i katalogi już istnieją w miejscu docelowym
Użyj polecenia rsync z
--ignorowanie istnienia
opcja zignorowania wszystkich plików, które już istnieją w miejscu docelowym. Na przykład chcesz zaplanować skrypt kopii zapasowej, aby codziennie kopiować wszystkie pliki na dysku tworzenia kopii zapasowych. W takim przypadku nie chcesz kopiować wszystkich plików wielokrotnie. Ta opcja skopiuje te pliki, które nie są dostępne w miejscu docelowym.rsync -AvHz -ignore -e -istnianie /opt /backups /mnt /dysk1
- Zaktualizuj plik tylko wtedy, gdy źródło jest nowsze
Używać
--aktualizacja
Opcja aktualizacji pliku na zdalnym tylko wtedy, gdy istnieje nowsza wersja, jest lokalna. Rsync utworzy plik w miejscu docelowym, jeśli nie istnieje. Ponadto plik aktualizacji w miejscu docelowym lokalnego znacznika czasu jest nowszy niż zdalny plik systemowy.rsync -update -AvHz/opt/backups/mnt/disk1/
- Usuń plik ze źródła po synchronizacji
Używać
--Usuń pliki source
opcja usunięcia pliku ze źródła po pomyślnym przeniesieniu do miejsca docelowego. Na przykład musisz zaplanować kopię zapasową plików dziennika do systemu zdalnego. Chciałem również zdalnie rejestrować plik z systemu lokalnego po pomyślnym skopiowaniu do pilota. Pomoże to zdobyć przestrzeń na dysku.rsync--Remove-Source-Files -AvHz/var/log [e-mail chroniony]:/kopia zapasowa/logs/
- Wyklucz określony plik lub katalog za pomocą RSync
Możesz określić plik lub wzór z
--exclude = wzór
opcja wykluczenia z RSYNC.rsync -Avh -exclude '*.Zip ' -exclude'*.log ' /src [e -mail chroniony]: /dest
- Dołącz określone pliki z rsync
Domyślny rsync zawiera wszystkie pliki w drzewie katalogu źródłowego. Teraz musisz dołączyć tylko określone pliki, aby zsynchronizować się z miejscem docelowym.
Tutaj możesz określić
--obejmują = wzór
Aby dołączyć określone pliki i wykluczyć wszystkie pliki za pomocą*
.rsync -avhz -include '*.jpg '--include'*.txt '--exclude'*' /src [e -mail chroniony]: /dest
- Wyświetl postęp z rsync
Używać
--postęp
opcja wyświetlania postępów podczas przesyłania pliku między źródłem a miejscem docelowym za pomocą polecenia RSYNC.rsync -Avh --progress /src [e -mail chroniony]: /dest
- Uprawnienia do pliku chnage z rsync
Możesz poinstruować rsync, aby zmienił właściciela plików i właścicieli grup w miejscu docelowym. Użyj opcji
--chown = użytkownik: grupa
z rsync, aby zmienić zgodę pliku.rsync -Avh --chown = użytkownik: grupa /src [e -mail chroniony]: /dest
Podobnie możesz użyć -chmod = chmod opcja zmiany uprawnień do pliku lub katalogu w miejscu docelowym.
rsync -Avh --chmod = 755 /src [e -mail chroniony]: /dest
- Tylko rsync suchy bieg
Używać
--próba
opcja wykonania tylko suchego biegu. Pokaże ci podobne wyniki jako oryginalne polecenie, ale nic nie zaktualizuje się w miejscu docelowym. Zasadniczo możemy użyć tego do sprawdzenia, co RSync zaktualizuje przed uruchomieniem.rsync -Avh - -dry -run /src [e -mail chroniony]: /dest
Wniosek
RSync to doskonałe narzędzie do przesyłania dużych ilości danych między dwiema maszynami. W tym artykule możesz również użyć RSYNC do tworzenia kopii zapasowych całego systemu w odległej lokalizacji tworzenia kopii zapasowych. W tym artykule nauczyłeś się praktycznych przykładów poleceń rsync, które są idealne do codziennych zadań.
- « Jak zainstalować Android Studio na Ubuntu & LinuxMint przez PPA
- Jak skonfigurować więzienie Chroot w VSFTPD »