Kako koristiti Rsync za sinhronizaciju novih ili promijenjenih/modificiranih datoteka u Linuxu
Kao sistemski administrator ili iskusni korisnik Linuxa, možda ste naišli ili čak u nekoliko navrata koristili svestrani Linux Rsync alat, koji korisnicima omogućava ekspeditivno kopiranje ili sinhronizaciju datoteka lokalno i na daljinu. To je također odličan alat koji se popularno koristi za backup operacije i zrcaljenje.
Neke od njegovih eminentnih karakteristika i prednosti uključuju; izuzetno je svestran po tome što može kopirati lokalno, na/sa udaljene ljuske ili udaljene rsync, također je izuzetno fleksibilan, omogućavajući korisnicima da specificiraju bilo koji broj datoteka za kopiranje.
Preporučeno čitanje: 10 praktičnih primjera Rsync naredbe u Linuxu
Nadalje, dozvoljava kopiranje veza, uređaja, vlasnika datoteke ili direktorija, grupa i dozvola. Takođe podržava upotrebu bez root privilegija zajedno sa mnogim drugim.
Jedna imperativna razlika rsync-a u odnosu na druge naredbe za skrivanje datoteka u Linuxu je njegova upotreba protokola za daljinsko ažuriranje, za prijenos samo razlike između datoteka ili sadržaja direktorija.
Stoga ćemo u ovom članku ispitati kako nam rsync može pomoći samo da sinkroniziramo nove ili promijenjene datoteke ili sadržaj direktorija dok pravimo sigurnosne kopije i dalje u Linuxu.
Za početak, morate zapamtiti da je konvencionalni i najjednostavniji oblik korištenja rsync sljedeći:
rsync options source destination
Uz to, hajde da zaronimo u neke primjere kako bismo otkrili kako gore navedeni koncept zapravo funkcionira.
Lokalno sinhroniziranje datoteka pomoću Rsync
Koristeći naredbu u nastavku, mogućnost kopiranja datoteka iz mog Documents direktorija u /tmp/documents direktorij lokalno:
rsync -av Documents/* /tmp/documents
U gornjoj naredbi, opcija:
-a
– znači način arhiviranja-v
– znači opširno, prikazuje detalje tekućih operacija
Prema zadanim postavkama, rsync samo kopira nove ili promijenjene datoteke sa izvora na odredište, kada dodam novu datoteku u moj Documents direktorij, ovo se dešava nakon pokretanja iste komande drugi put:
rsync -av Documents/* /tmp/documents
Kao što možete primijetiti i primijetiti iz izlaza naredbe, samo se nova datoteka kopira u odredišni direktorij.
Preporučeno čitanje: Kako sinhronizirati dva Apache web servera/web stranice koristeći Rsync
Opcija --update
ili -u
omogućava rsync da preskoči datoteke koje su još uvijek nove u odredišnom direktoriju i jednu važnu opciju, --dry-run
ili -n
nam omogućava da izvršimo probnu operaciju bez unošenja ikakvih promjena. Pokazuje nam koje datoteke treba kopirati.
rsync -aunv Documents/* /tmp/documents
Nakon izvođenja probnog rada, možemo ukloniti -n
i izvesti stvarnu operaciju:
rsync -auv Documents/* /tmp/documents
Sinhroniziranje datoteka s lokalnog na udaljeni Linux
U primjeru ispod, kopiram datoteke sa svoje lokalne mašine na udaljeni server sa IP adresom – 10.42.1.5. Kako bismo sinhronizirali samo nove datoteke na lokalnom računalu, koje ne postoje na udaljenoj mašini, možemo uključiti opciju --ignore-existing
:
rsync -av --ignore-existing Documents/* [email :~/all/
Nakon toga, da bismo sinhronizovali samo ažurirane ili modifikovane datoteke na udaljenom računaru koje su se promenile na lokalnom računaru, možemo izvesti suvo pokretanje pre kopiranja datoteka na sledeći način:
rsync -av --dry-run --update Documents/* [email :~/all/
rsync -av --update Documents/* [email :~/all/
Da ažuriramo postojeće datoteke i spriječimo stvaranje novih datoteka na odredištu, koristimo opciju --existing
.
Možete proći kroz stranicu man rsync
da otkrijete dodatne korisne opcije za naprednu upotrebu, kao što sam ranije spomenuo, rsync je vrlo moćan i svestran Linux alat, a mnogi sistemi Administratori i iskusni korisnici Linuxa znaju koliko je to korisno.
Ono što je najvažnije, možete podijeliti svoje viđenje primjera koje smo ovdje pokrili ili još bolje, ponuditi nam vrijedne savjete o korištenju ovog vitalnog alata komandne linije kroz odjeljak za komentare ispod.