Rsync naredba preko SSH jedan je od najpraktičnijih Linux metoda za brzo, sigurno i otporno premještanje velikih datoteka između dva poslužitelja. Osobito kada se radi o web stranicama s desecima GB datoteka, sigurnosnim arhivima, multimedijskim mapama ili podacima aplikacija, rsync nudi značajnu prednost u brzini jer prenosi samo promijenjene blokove, u usporedbi s klasičnim metodama kopiranja. Osnovna logika korištenja je sljedeća: datoteke na izvoru se šifrirano sinkroniziraju na ciljni poslužitelj putem SSH tunela; ako dođe do prekida veze, proces se može nastaviti od mjesta gdje je stao.
Pri premještanju poslužitelja, unapređenju hostinga, promjeni podatkovnog centra ili operacijama sigurnosnog kopiranja, važni su i brzina i cjelovitost podataka. Preuzimanje velikog arhiva u jednom komadu i njegovo ponovno učitavanje oduzima vrijeme i može uzrokovati da ponovno započnete u slučaju pogreške u vezi. Rsync tu dolazi do izražaja jer može očuvati vremenske oznake datoteka, dozvole, informacije o vlasništvu i strukturu mapa. Stoga ga Linux sustav administratori, DevOps timovi i stručnjaci za web hosting često koriste u svakodnevnim operacijama.
U ovom vodiču ćemo korak po korak obraditi proces premještanja velikih datoteka između dva Linux poslužitelja putem rsync-a preko SSH, uz stvarne primjere naredbi. Također ćemo podijeliti parametre za poboljšanje performansi, sigurnosne provjere, scenarije grešaka, metode testnog prijenosa i stvari na koje treba paziti prije nego što pređemo na proizvodno okruženje. Ako planirate prijelaz na novi VPS ili hosting okruženje, provjerite da li na izvoru i ciljanom poslužitelju imate dovoljno slobodnog prostora na disku, SSH pristup i ispravne korisničke dozvole prije nego što primijenite ovaj vodič. Za relevantan izbor infrastrukture možete pregledati Hostragons rješenja za VPS server i Linux Hosting Paketi.
Što je rsync i zašto se preferira za premještanje velikih datoteka?
Rsync je moćan alat naredbenog retka koji služi za sinkronizaciju datoteka i mapa između lokalnog sustava i udaljenih poslužitelja. Njegova najvažnija značajka je delta transfer algoritam. Ovaj algoritam prenosi samo promijenjene dijelove datoteke umjesto da svaki put šalje cijelu datoteku. Na primjer, u sigurnosnoj kopiji od 80 GB, ako je došlo do promjene od samo 2 GB, moguće je prenijeti samo promijenjene blokove umjesto cijele datoteke, pod uvjetom da su uvjeti odgovarajući.
SSH osigurava šifriranu vezu. Na taj način rsync naredba ne prenosi sadržaj datoteka u običnom tekstu dok šalje podatke putem mreže. Ova značajka je osobito važna za korisničke podatke, zapise o narudžbama e-trgovine, multimedijske arhive, sigurnosne kopije baze podataka i posebne datoteke aplikacija. U svijetu hostinga sigurnost podataka nije ograničena samo na SSL certifikate; kanal za prijenos između poslužitelja također mora biti siguran. Dok koristite SSL certifikat za web promet, također je preporučljivo koristiti šifriranje s SSH prilikom prijenosa datoteka između poslužitelja.
Rsync je fleksibilniji od FTP-a ili ručnih metoda preuzimanja i prijenosa. Može očuvati dozvole, prenositi simboličke veze, brisati izbrisane datoteke na odredištu, ograničiti propusnost i testirati što će se učiniti prije prijenosa. Ova razina kontrole pruža značajnu prednost kod rizičnih operacija poput premještanja velikih datoteka.
Kada biste trebali koristiti rsync naredbu preko SSH?
Rsync naredba preko SSH je idealna za prijenos velikih, brojnim ili često mijenjanih datoteka. Za jednostavnu vizualnu mapu ručni SFTP može biti dovoljan; međutim, kada se radi o tisućama datoteka, različitim dozvolama i velikim arhivima, rsync postaje mnogo pouzdanija opcija.
- Kada prebacujete web stranicu sa starog poslužitelja na novi VPS.
- Kada prenosite mape koje sadrže tisuće multimedijskih datoteka, poput WordPress uploads mape.
- Kada kopirate dnevne, tjedne ili mjesečne sigurnosne kopije na drugi poslužitelj.
- Kada mijenjate podatkovni centar ili pružatelja hostinga.
- Kada sinkronizirate datoteke aplikacija između proizvodnog i sigurnosnog okruženja.
- Kada planirate dugotrajne prijenose uz mogućnost prekida veze.
Na primjer, preuzimanje mape s multimedijom od 250 GB na vaše osobno računalo, a zatim njezino učitavanje na novi poslužitelj značilo bi dva odvojena prijenosa. To produžuje ukupno vrijeme i može učiniti vašu kućnu ili uredsku internetsku vezu uskim grlom. Pomoću rsync-a možete izravno prenijeti s izvornog poslužitelja na ciljni poslužitelj, eliminirajući ovaj posrednički korak.
Što je potrebno prije početka?
Poznavanje naredbe rsync nije dovoljno za uspješan prijenos. Provjera uvjeta na izvoru i ciljanom poslužitelju smanjuje rizik od gubitka podataka ili prekinutog prijenosa. Sljedeće provjere moraju se obaviti u proizvodnim okruženjima.
1. Provjerite SSH pristup
Morate biti u mogućnosti uspostaviti SSH vezu s ciljnim poslužiteljem s izvornog poslužitelja. Standardna veza se testira na sljedeći način: ssh korisnik@ciljni-poslužitelj-ip. Ako SSH radi na drugom portu, veza se pokušava ovako: ssh -p 2222 korisnik@ciljni-poslužitelj-ip. Ako ovaj test nije uspješan, rsync također neće raditi. Potrebno je provjeriti vatrozid, Fail2ban, SSH port, korisničke privilegije i provjeru lozinke ili ključeva.
2. Provjerite je li rsync paket instaliran
Većina Linux distribucija dolazi s instaliranim rsync-om; ipak, to treba provjeriti. Na Debian i Ubuntu sustavima može se koristiti rsync --version. Ako nije instaliran, može se instalirati s apt install rsync. Na AlmaLinux, Rocky Linux ili CentOS distribucijama, koristi se dnf install rsync ili yum install rsync. Ako koristite Linux bazirani VPS na Hostragons-u, instalacija obično traje nekoliko sekundi.
3. Izračunajte slobodan prostor na disku
Ako na ciljanom poslužitelju nema dovoljno slobodnog prostora, prijenos će se prekinuti. Da biste vidjeli veličinu izvornog direktorija, možete koristiti du -sh /izvorna/mapa. Na ciljanom poslužitelju treba provjeriti stanje diska pomoću df -h. U praksi je važno ostaviti prostor ne samo za veličinu datoteka, već i za privremene datoteke i logove. Na primjer, ako planirate prenijeti 500 GB podataka, preporučuje se da na ciljanom poslužitelju planirate najmanje 550-600 GB slobodnog prostora.
4. Planirajte kritične usluge i promijenjene datoteke
Datoteke na aktivnim web stranicama mogu se mijenjati tijekom prijenosa. Osobito korisnički uploadi, cache mape i log datoteke se neprestano ažuriraju. Tijekom velikih prijenosa, prvo se prenose glavni podaci, a zatim se aktivira način održavanja i ponovno se pokreće rsync. Tako se vrijeme prekida može smanjiti na minute. Za WordPress stranice možete dovršiti svoj plan s podržavajućim sadržajima poput Vodič za premještanje WordPress hostinga.
Osnovna rsync naredba: Premještanje datoteka između dva poslužitelja
Najčešće korištena osnovna struktura je sljedeća: rsync -avz /izvorna/mapa/ korisnik@ciljni-ip:/ciljna/mapa/. Ovdje -a označava arhivski način i pokušava sačuvati informacije o dozvolama, vremenskim oznakama, simboličkim vezama i slično. -v daje detaljan ispis. -z primjenjuje kompresiju tijekom prijenosa. Važno je napomenuti da je kosa crta na kraju direktorija bitna. Ako napišete /izvorna/mapa/, sadržaj te mape će se kopirati na cilj; ako napišete /izvorna/mapa, cijela mapa će se stvoriti na odredištu.
Pretpostavimo da želite premjestiti 180 GB web datoteka iz mape /var/www/site/public_html/ na novi poslužitelj u mapu /var/www/site/public_html/. Naredba će raditi ovako: rsync -avz /var/www/site/public_html/ root@203.0.113.20:/var/www/site/public_html/. Ovaj proces prenosi datoteke s izvornog poslužitelja na ciljni poslužitelj preko SSH.
Ako ne želite koristiti root, sigurnije je stvoriti posebnog korisnika s dozvolama za pisanje u odgovarajući direktorij na ciljanom poslužitelju. Na primjer, možete koristiti korisnika pod nazivom deploy i postaviti odgovarajuće vlasništvo mapa. Iako je rad s root nalogom praktičan u proizvodnim okruženjima, preporučuje se korištenje korisnika s ograničenim privilegijama iz sigurnosnih razloga.
Preporučeni sigurni i izdržljivi rsync parametri
U prijenosima velikih datoteka nije uvijek ispravno oslanjati se samo na osnovnu naredbu. Za prekide veze, djelomične datoteke, pogrešne brisne operacije ili spore mreže potrebno je koristiti dodatne parametre. Sljedeća naredba je dobar početni punkt za mnoge stvarne scenarije prijenosa:
rsync -aHAXv --numeric-ids --partial --progress --append-verify -e ssh /izvorna/mapa/ korisnik@ciljni-ip:/ciljna/mapa/
U ovoj naredbi -a pomaže očuvanju arhivskog načina, -H informacije o hard linkovima, -A ACL dozvole, -X vrijednosti proširenih atributa. --numeric-ids se oslanja na ID-ove korisnika i grupa, a ne na imena; može biti korisno kada se imena korisnika razlikuju na različitim poslužiteljima. --partial ostavlja djelomične datoteke bez brisanja. --progress prikazuje status prijenosa. --append-verify posebno pomaže u nastavku velikih datoteka tako da potvrđuje dodane dijelove.
Svaki parametar možda neće biti potreban na svakom sustavu. Na primjer, dok je korištenje -aHAX dovoljno za jednostavan prijenos web stranice, očuvanje ACL i informacija o proširenim atributima postaje kritično kada se koristi aplikacija s posebnim dozvolama. Stoga je važno prvo izvršiti testni prijenos.
Kako koristiti drugačiji SSH port?
Iz sigurnosnih razloga, SSH port može raditi na drugom portu umjesto 22. U tom slučaju, u rsync-u se navodi SSH parametar. Na primjer: rsync -avz -e ssh -p 2222 /izvorna/mapa/ korisnik@ciljni-ip:/ciljna/mapa/. Međutim, u naredbenom retku vrijednost -e parametra mora se koristiti zajedno. Ispravan način korištenja je: rsync -avz -e 'ssh -p 2222' /izvorna/mapa/ korisnik@ciljni-ip:/ciljna/mapa/.
Budući da se korištenje jednostrukih navodnika u JSON-u i nekim panelima može ponašati drugačije, pobrinite se da su navodnici ispravni kada ih izravno pišete u terminalu. Ako se povezujete putem SSH ključa, možete dodati i -i parametar: rsync -avz -e 'ssh -p 2222 -i /root/.ssh/id_rsa' /izvorna/mapa/ korisnik@ciljni-ip:/ciljna/mapa/. Ova metoda se često koristi u automatizaciji i cron zadacima za sigurnosno kopiranje.
Testiranje prije prijenosa: korištenje --dry-run
Jedan od najprofesionalnijih koraka prije premještanja velikih podataka je korištenje --dry-run. Ovaj parametar ne kopira datoteke zaista; samo pokazuje koje će se datoteke prenijeti. Tako se mogu unaprijed otkriti pogrešna mapa, pogrešna odredišna putanja ili neočekivane operacije brisanja.
Primjer testne naredbe: rsync -avz --dry-run /var/www/site/ korisnik@ciljni-ip:/var/www/site/. U izlazu ćete vidjeti datoteke koje će se prenijeti, mape koje će se stvoriti i sažetak procesa. Ako planirate koristiti --delete, dry-run postaje još kritičniji. Jer --delete može izbrisati datoteke koje ne postoje na izvoru na odredištu. Kada se ispravno koristi, može učiniti odredište identičnim izvoru; kada se koristi u pogrešnoj mapi, može dovesti do ozbiljnog gubitka podataka.
Profesionalna aplikacija obično ide ovako: prvo se testira SSH, zatim se provjerava slobodan prostor na disku, zatim se pokreće rsync --dry-run, vrši se stvarni test s malom mapom, a zatim se pokreće glavni prijenos. Ovaj pristup može dodati nekoliko minuta dodatnog vremena, ali sprječava greške u prijenosu koje bi mogle trajati sati.
Postavke za performanse: kompresija, propusnost i šifriranje
Rsyncove performanse ne ovise samo o veličini datoteka. Snaga CPU-a poslužitelja, tip diska, latencija mreže, propusnost i broj datoteka također su važni. Veliki broj malih datoteka može se prenositi sporije od jedne velike datoteke; jer se za svaku datoteku obrađuju metapodaci. U VPS okruženjima s NVMe diskom, performanse skeniranja i pisanja datoteka mogu biti znatno bolje. Stoga, ako planirate intenzivne prijenose, ima smisla razmotriti NVMe VPS server opcije.
-z parametar za kompresiju koristi se za tekstualne datoteke, logove i neke tipove sigurnosnih kopija. Međutim, može trošiti CPU i ne pružiti veliku dobit kod već komprimiranih zip, tar.gz, jpg, mp4 ili gzip datoteka. Ako prenosite velike multimedijske datoteke između dva snažna poslužitelja s 1 Gbps vezom, možete postići bolje performanse ne koristeći -z. S druge strane, na mrežama s niskom propusnošću i tekstualnim datotekama, -z može značajno uštedjeti.
Za ograničavanje propusnosti može se koristiti --bwlimit. Na primjer, --bwlimit=50000 postavlja otprilike 50 MB/s granicu. Ovo je važno kako ne bi došlo do zagušenja mrežnog prometa aktivne web stranice. Izvršavanje prijenosa u noćnim satima, postavljanje ograničenja propusnosti i praćenje load average vrijednosti tijekom procesa su dobre prakse.
Usporedba rsync-a, scp-a, SFTP-a i FTP-a

Postoji više metoda za prijenos datoteka; međutim, svaka metoda ima svoje prednosti i slabosti. Sljedeća tablica sažima kada je koja alatka najprikladnija za prijenos velikih datoteka i scenarije premještanja poslužitelja.
| Metoda | Sigurnost | Nastavak | Performanse velikih datoteka | Najbolja upotreba |
|---|---|---|---|---|
| rsync + SSH | Visoka | Jaka | Vrlo dobra | Premještanje poslužitelja, sigurnosno kopiranje, sinkronizacija |
| scp | Visoka | Ograničena | Srednja | Brzo kopiranje malog broja datoteka |
| SFTP | Visoka | Ovisno o klijentu | Srednja | Ručno upravljanje datotekama |
| FTP | Niska | Ovisno o klijentu | Varijabilna | Stari sustavi kada sigurnost nije kritična |
Kako se može vidjeti iz tablice, rsync se ističe, osobito u ponavljajućim sinkronizacijama i prijenosu velikih podataka. Scp je jednostavan i praktičan, ali nije toliko snažan u inteligentnom prepoznavanju promijenjenih datoteka kao rsync. FTP nije prikladan za moderne sigurnosne standarde kada se koristi bez šifriranja. Dok FTP pristup može biti praktičan u kontrolama hostinga, SSH metode trebaju se preferirati za kritične prijenose između poslužitelja.
Primjer radnog toka za premještanje aktivne web stranice
Kada premještate web stranicu sa starog poslužitelja na novi, cilj nije samo kopirati datoteke. Također treba provjeriti DNS, bazu podataka, SSL, verziju PHP-a, dozvole datoteka i konfiguraciju e-pošte. U nastavku se prikazuje primjer radnog toka s niskim prekidom za web stranicu s velikim datotekama.
- Pripremite web poslužitelj, PHP, bazu podataka i potrebne module na novom poslužitelju.
- Smanjite TTL vrijednost DNS-a za naziv domene na nisku vrijednost poput 300 sekundi prije prijenosa. Možete razmotriti stranicu Provjera domene i upravljanje domenom za upravljanje nazivom domene.
- Pokrenite prvi rsync prijenos dok je stranica aktivna. Ova faza prenosi većinu velikih podataka.
- Napravite sigurnosnu kopiju baze podataka i prenesite je na novi poslužitelj.
- Ponovno stavite stranicu u kratki način održavanja.
- Pokrenite drugu rsync naredbu za sinkronizaciju posljednjih promijenjenih datoteka.
- Ponovno ažurirajte bazu podataka ili koristite inkrementalnu strategiju.
- Provjerite dozvole datoteka, otvaranje stranice i logove na novom poslužitelju.
- Instalirajte ili obnovite SSL certifikat. Za to može biti korisna stranica Instalacija SSL certifikata.
- Preusmjerite DNS zapise na novu IP adresu.
U ovoj metodi, najduži proces je prijenos glavnih datoteka dok je stranica aktivna. Prekid se javlja samo tijekom posljednje sinkronizacije i prijenosa DNS-a. Ovaj pristup može smanjiti prekid na nekoliko minuta za WordPress stranice s velikim multimedijskim arhivima.
Provjera cjelovitosti podataka
Nakon završetka prijenosa, samo završetak naredbe nije dovoljan. Potrebno je provjeriti broj datoteka, veličine i kritične datoteke. Kako biste to jednostavno provjerili, možete koristiti du -sh naredbu na izvoru i odredištu kako biste usporedili veličine mapa. Međutim, zbog razlika u blokovima datotečnog sustava, vrijednosti možda neće izgledati identične. Za detaljniju provjeru, rsync se može ponovno pokrenuti s istim parametrima. Ako nema novih datoteka koje treba prenijeti, izlaz će biti minimalan.
Za provjeru checksum-a može se koristiti rsync -avc --dry-run /izvorna/mapa/ korisnik@ciljni-ip:/ciljna/mapa/. Ovdje -c parametar uspoređuje datoteke prema vremenskim oznakama i veličini, osim checksum-a. Budući da može stvoriti opterećenje CPU-a i diska kod vrlo velikih podataka, treba ga koristiti s oprezom. Ova dodatna provjera pruža povjerenje za kritične arhive, dump datoteke baza podataka ili dokumente klijenata.
Ako ste premjestili web stranicu, provjerite i na razini aplikacije. Treba pregledati početnu stranicu, upravljačku ploču, učitavanje slika, stranicu za plaćanje, kontakt obrazac i logove grešaka. Na e-trgovinskim stranicama, samo premještanje datoteka nije dovoljno; integracije plaćanja i cron zadaci također trebaju biti testirani na novom poslužitelju.
Uobičajene greške i njihova rješenja
Greška "Permission denied"
Ova greška obično nastaje zbog korisničkih privilegija SSH, dozvola za pisanje u ciljni direktorij ili provjere ključeva. Prvo pokušajte uspostaviti normalnu SSH vezu s istim korisnikom. Ako je veza uspješna, testirajte kreiranje datoteke u ciljnjem direktoriju. Ako je potrebno, promijenite vlasništvo ciljne mape na odgovarajućeg korisnika koristeći chown ili planirajte strategiju temeljenju na sudo.
Greška "No space left on device"
Kada na ciljanom disku ne ostane dovoljno prostora, prijenos se prekida. Provjerite particije diska pomoću df -h. Ponekad glavni disk nije pun, ali /tmp ili ciljna točka montiranja mogu biti puni. Tijekom velikih prijenosa, log datoteke, stare sigurnosne kopije i cache mape mogu se očistiti. Za trajno rješenje, možda će biti potrebno proširiti disk ili preći na VPS plan s većim kapacitetom.
Greška "Connection reset" ili "Broken pipe"
Može doći do prekida veze tijekom dugih prijenosa. Ako koristite --partial i --append-verify, možete ponovno pokrenuti naredbu i nastaviti od mjesta gdje ste stali. Također, SSH keepalive postavke mogu pomoći. Na klijentskoj strani, postavka ServerAliveInterval 60 može smanjiti prekid veze tijekom neaktivnosti.
Vrlo spora brzina prijenosa
Uspon brzine može biti uzrokovan brojem datoteka, limitom disk I/O, opterećenjem kompresije ili kapacitetom mreže. Ako imate veliki broj malih datoteka, stvaranje tar arhive može biti brže u nekim slučajevima; međutim, prednost rsync-a u promjenama datoteka se smanjuje. Testirajte uklanjanjem -z parametra na velikim i već komprimiranim datotekama. Također, koristite alate poput iotop, htop i iftop kako biste identificirali gdje se javlja usko grlo - CPU, disk ili mreža.
Najbolje prakse za sigurnost
Sigurnost tijekom prijenosa datoteka između poslužitelja ne smije se zanemariti. Osobito root pristup, SSH ključevi i sigurnosne kopije trebaju se smatrati osjetljivima. Prvo se preporučuje korištenje SSH ključeva umjesto pristupa lozinkom. Dozvole za datoteke ključeva trebaju biti stroge, privatni ključevi se ne smiju dijeliti i poželjno ih je zaštititi pomoću passphrase.
Dobar način je stvoriti privremenog korisnika s pristupom samo potrebnim mapama. Nakon završetka procesa, privilegije ovog korisnika mogu se ukloniti ili se račun može onemogućiti. Ograničavanje SSH pristupa na određene IP adrese također smanjuje površinu napada. Vatrozidna pravila, Fail2ban i ažurirana verzija OpenSSH trebaju biti osnovne provjere.
Kada se prenose dump datoteke baza podataka, dokumenti klijenata ili arhivi koji sadrže osobne podatke, nepotrebne privremene datoteke trebaju se očistiti na izvoru i odredištu nakon prijenosa. Također, ostavljanje sigurnosnih kopija poput .sql, .zip ili .tar datoteka u glavnoj web mapi predstavlja ozbiljan sigurnosni rizik. Ove datoteke trebaju se čuvati u mapi koja je zatvorena za web pristup ili se treba izbrisati nakon procesa.
Korištenje rsync-a za automatsko sigurnosno kopiranje
Rsync se može koristiti ne samo za jednokratno premještanje, već i za redovito sigurnosno kopiranje. Na primjer, možete definirati cron zadatak za slanje određenog direktorija na sigurnosni poslužitelj svake noći. U ovom scenariju, uspostavlja se sigurna veza bez lozinke putem SSH ključa, rsync prenosi samo promijenjene datoteke i može se primijeniti ograničenje propusnosti.
Primjer logike: rsync -a --delete --bwlimit=30000 /var/www/site/ backup@backup-ip:/backup/site/. Ova naredba može uskladiti ciljni direktorij s izvorom. Međutim, zbog --delete parametra, treba biti oprezan. Ako se slučajno datoteka izbriše na izvoru, izbrisat će se i na odredištu. Stoga se u kritičnim strategijama sigurnosnog kopiranja preporučuju rješenja s snapshot-ima, dnevnim mapama ili podrškom za verzioniranje.
U operacijama hostinga, pravilo 3-2-1 za sigurnosno kopiranje je dobra referenca: najmanje 3 kopije podataka, 2 različita okruženja, 1 kopija na različitoj lokaciji treba se čuvati. Rsync praktično olakšava dio ovog pravila koji se odnosi na kopiranje između poslužitelja. Za opsežniju infrastrukturu možete ojačati svoje planove s Rješenja za sigurnosno kopiranje i usluge korporativnog hostinga.
Posljednja kontrolna lista
Prije nego što započnete proces prijenosa velikih datoteka, provođenje sljedeće kratke liste smanjuje rizik od grešaka. Ova lista trebala bi postati standardni postupak, osobito u proizvodnim okruženjima.
- Je li rsync instaliran na izvoru i ciljanom poslužitelju?
- Je li SSH veza testirana s pravim korisnikom i portom?
- Ima li ciljni poslužitelj dovoljno slobodnog prostora na disku?
- Je li prva operacija provjerena s --dry-run?
- Je li planiran način održavanja za aktivnu stranicu i posljednja sinkronizacija?
- Je li odredišna putanja sigurno potvrđena ako se koristi --delete?
- Hoće li se provjeriti veličine datoteka, dozvole i testirati aplikacija nakon prijenosa?
- Hoće li se nepotrebne sigurnosne kopije i dump datoteke sigurno očistiti?
Iako se ovi pregledi čine jednostavnim, najčešći problemi u stvarnom životu obično proizlaze iz pogrešnih odredišnih mapa, nedovoljnih dozvola, nedostatka slobodnog prostora na disku i neplaniranih prijenosa DNS-a. Planirani rsync proces skraćuje vrijeme prijenosa i povećava vjerojatnost povratka.
Često postavljana pitanja
Što se događa ako se prekine veza tijekom prijenosa rsync-a preko SSH, počinje li prijenos iznova?
Ne, ako se koriste ispravni parametri, neće početi iznova. Opcije --partial i --append-verify pomažu u očuvanju velikih datoteka koje su prekinute i osiguravaju da se prijenos nastavi od mjesta gdje je stao kada se naredba ponovno pokrene. Ipak, uvijek je dobro provjeriti slobodan prostor na disku i status djelomičnih datoteka prije ponovnog pokretanja naredbe u kritičnim prijenosima.
Može li se baza podataka izravno premjestiti s rsync-om?
Rsync prenosi datoteke; izravno kopiranje aktivnih datoteka baze podataka nije zdravo. Za MySQL ili MariaDB trebate koristiti mysqldump ili alate za fizičko sigurnosno kopiranje, a nastale sigurnosne kopije prenijeti s rsync-om na ciljni poslužitelj. U aktivnim sustavima treba planirati način održavanja ili strategiju replikacije radi očuvanja dosljednosti podataka.
Je li potrebna root pristup za korištenje rsync-a na oba poslužitelja?
Root pristup nije nužan. Korisnik s pravom pisanja u ciljni direktorij je dovoljan. Međutim, ako je potrebno očuvati vlasništvo nad datotekama, sustavne direktorije, ACL ili posebne dozvole, potrebna su veća prava. Iz sigurnosnih razloga, rad s korisnikom s ograničenim privilegijama je ispravniji kada god je to moguće.
Je li --delete parametar siguran?
--delete može biti vrlo koristan kada se ispravno koristi za sinkronizaciju odredišne mape s izvorom; međutim, ako se koristi u pogrešnoj odredišnoj mapi, to može dovesti do gubitka podataka. Stoga, naredbe koje sadrže --delete uvijek treba prvo testirati s --dry-run, a putanje izvora i odredišta pažljivo provjeriti.
Što je bolje za prijenos velikih datoteka, rsync ili scp?
Za jednokratno brze prijenose malog broja datoteka, scp može biti dovoljan; međutim, za velike datoteke, veliki broj datoteka i ponavljajuće sinkronizacije, rsync je obično bolji. Jer može prepoznati promjenjive podatke, nastaviti prekinute prijenose, ograničiti propusnost i nudi testni način rada.
Sažetak i sljedeći koraci
Premještanje velikih datoteka između dva poslužitelja putem rsync naredbe preko SSH predstavlja brz, siguran i upravljiv način. Ispravnim parametrima možete ga učiniti otpornim na prekide veze, prenoseći samo promijenjene datoteke, štedeći vrijeme i smanjujući prekide tijekom procesa premještanja aktivnih web stranica. Za najbolje rezultate prvo napravite provjere SSH i diska, testirajte s --dry-run, a zatim planirajte glavni prijenos.
Ako planirate prelazak na novi poslužitelj, visokokapacitetnu pohranu ili performansnije hosting infrastrukture, možete istražiti rješenja Hostragons; s VPS-om, hostingom, domenama i SSL opcijama možete učiniti svoj proces prijenosa sigurnijim. Počnite s malim testovima za besprijekoran prijelaz, mjerite i planirajte posljednju sinkronizaciju.