Linux
rsync
Comanda este un instrument puternic de copiere a fișierelor și de sincronizare a folderului. Iată zece cazuri de utilizare comune pe care le veți putea folosi bine pe propriile sisteme.
Instrumentul RSYNC
rsync
Instrumentul copiază fișierele și directoarele între două computere. Folosește un
Algoritm sofisticat
Acest lucru scanează arbori de director pentru a găsi fișiere pe computerul sursă care nu există pe computerul de destinație. Aceste fișiere sunt transmise computerului de destinație. Ceea ce face ca
Rync
Atât de inteligent este că poate să -și dea seama ce piese din
existent
fișierele au fost modificate și trimite doar
porțiuni modificate
.
Poți să folosești
rsync
Pentru a copia fișierele într -o altă locație de pe hard disk, pe un hard disk diferit în același computer, pe un
unitate USB conectată extern
sau orice altă locație accesibilă în rețea.
Pe deasupra,
rsync
Opțional poate păstra legături simbolice, legături dure și fișiere
Metadate
cum ar fi proprietatea fișierelor, permisiunile și timpul de acces. Pentru a susține toată această funcționalitate,
rsync
Are multe opțiuni și să le dai seama că toate necesită timp. Am colectat aceste 10 exemple pentru a vă ajuta să începeți. Am scris deja despre efectuarea copiilor de rezervă cu
rsync
, Deci ne concentrăm pe alte utilizări aici.
Pentru toate numeroasele sale opțiuni, structura unui
rsync
comanda este simplă. Trebuie să oferim sursa, destinația și opțiunile pe care dorim să le folosim. Probabil veți găsi asta
rsync
Este deja instalat pe computerul dvs. Linux - a fost, pe toate mașinile noastre de testare - dar dacă nu va fi cu siguranță în depozitele distribuției dvs.
1. Copiați fișierele într -un alt director
Iată un exemplu simplu pentru a ne duce. Vom copia fișierele din directorul „Proiect-fișiere” în directorul „Documente”. Folosim două opțiuni,
-A
Opțiunea (arhivă) și
-v
(Verbose) Opțiune. Opțiunea Verbose spune
rsync
Pentru a explica ce face așa cum o face.
Arhiva
Opțiunea păstrează proprietatea fișierelor și alte articole la care ne vom uita în scurt timp.
Folosind
ls
pe folderul „Documente” arată că fișierele au fost copiate.
In timp ce
rsync
Funcționează, fișierele sunt listate pe măsură ce sunt copiate. Ni s -a spus:
- Numărul de octeți care sunt trimiși.
-
Numărul de octeți primiți. Înainte de a avea loc transferul de fișiere,
rsyncTrebuie să rezolve ce fișiere trebuie transferate. Pentru a face acest lucru, trebuie preluate câteva informații despre fișierele de la destinațiersync. Aceste informații sunt conținute în octeții primiți. - Viteza transferului.
- Dimensiunea totală a fișierelor copiate.
- „Speedup”. Acesta este raportul dintre dimensiunea totală împărțită la suma octeților trimiși și primiți. Cu cât acest număr este mai mare, cu atât transferul este mai eficient.
Am modificat fișierul text în directorul sursă și am repetat
rsync
comanda.
De data aceasta, singurul fișier care trebuie actualizat este fișierul text pe care l -am modificat. Cifra de viteză este acum 30.850. Acesta este cât de eficient este să copiați porțiunea modificată a acelui fișier unic, decât să copiați toate fișierele.
-A
Opțiunea (Arhivă) reprezintă de fapt o colecție de alte opțiuni. Este la fel ca utilizarea tuturor acestor opțiuni:
- r : Lucrați recursiv prin arbori de director din directorul sursă și copiați -i în directorul de destinație, creându -le dacă nu există deja acolo.
- l : Copiați Symlinks ca simboluri.
- P. : Păstrați permisiunile fișierului.
- T : Păstrați timpii de modificare a fișierului.
- g : Păstrați permisiunile grupului.
- o : Păstrați proprietatea fișierului.
- D. : Copiați fișiere speciale și fișiere de dispozitiv. Fișierele speciale pot fi elemente centrate pe comunicare care sunt tratate ca fișiere, cum ar fi prize și țevi pentru prima dată, la prima ieșire (FIFOS). Fișierele dispozitivului sunt fișiere speciale care oferă acces la dispozitive și pseudo-device.
Aceasta este o combinație atât de frecvent utilizată, încât
rsync
furnizează
-A
(Arhivă) Opțiunea ca o modalitate de shorthand de a le invoca pe toate.
2. Copiați un director într -un alt director
Dacă te uiți la precedent
rsync
Comandați veți vedea o sham „/” de urmat pe calea fișierului directorului sursă. Acest lucru este semnificativ. Spune
rsync
Pentru a copia
conținut
a directorului. Dacă nu furnizați slash -ul înainte,
rsync
va copia directorul
și
conținutul său.
De data aceasta, numele directorului este adăugat la numele fișierului, așa cum sunt listate. Dacă ne uităm în directorul de destinație, vom vedea că folderul sursă a fost copiat cu fișierele din interiorul acestuia.
3. Copiați un director pe o unitate diferită
Copierea fișierelor într -o altă locație de pe același hard disk nu vă oferă protecție împotriva unui eșec de conducere . Dacă această unitate renunță la fantomă, ați pierdut copiile sursei și destinației acestor fișiere. Copierea lor pe un alt hard disk este o modalitate mult mai robustă de a vă proteja datele. Tot ce trebuie să facem este să oferim calea corectă către unitatea de destinație.
Privind la celălalt hard disk ne arată că directorul și fișierele au fost copiate pe acesta.
4. Făcând mai întâi o alergare uscată
Înainte să ne uităm la cum
rsync
ne putem șterge în mod util fișierele pentru noi, să ne uităm la modul în care putem face
rsync
efectuați o alergare uscată.
Într -o alergare uscată,
rsync
Treceți prin mișcările de a efectua acțiunile pe care le -am solicitat, dar nu le face de fapt. Acesta raportează ce s -ar fi întâmplat dacă comanda ar fi fost executată. În acest fel, ne putem asigura că comanda face exact ceea ce așteptăm.
Pentru a forța o alergare uscată folosim
--uscat
opțiune.
Fișierele care ar fi fost copiate sunt listate pentru noi și primim statisticile obișnuite, urmate de mesaj
(Alergare uscată)
Așa că știm că nimic nu a avut loc de fapt.
5. Ștergerea fișierelor din directorul de destinație
--șterge
Opțiunea spune
rsync
a sterge
fișiere și directoare
în
destinaţie
Director care nu se află în directorul sursă. Aceasta înseamnă că directorul de destinație va fi o copie exactă a directorului sursă. Vom fi prudenți și vom folosi
--uscat
Opțiune mai întâi.
Suntem informați că două fișiere vor fi șterse. Dacă suntem siguri că nu ne pasă că vor fi șterse, putem elimina
--uscat
opțiunea și efectuați comanda în realitate.
De data aceasta, conținutul directoarelor este sincronizat și cele două fișiere suplimentare sunt șterse.
6. Ștergerea fișierelor sursă
Puteți alege să ștergeți fișierele sursă după un
transfer de succes
, făcând
rsync
operează mai mult ca o mișcare decât o copie. Dacă transferul nu a avut succes, fișierele sursă nu sunt șterse. Opțiunea pe care trebuie să o folosim este
-rămășiți-source-fish
.
Rețineți că fișierele pot fi șterse chiar dacă nu sunt transferate fișiere. Asta pentru că dacă
rsync
verificări și toate fișierele sunt deja în directorul de destinație și nu există nimic pentru
rsync
a face,
rsync
Consideră că un transfer de succes.
De asemenea,
rsync
șterge doar
fișiere
din directorul sursă. Nu șterge directorul sursă și nici subdirectorii, ci doar fișierele din ele. Putem vedea acest lucru folosind
-R
Opțiune (recursivă) cu
ls
, în directorul sursă.
7. Copiați fișierele pe un computer de la distanță
Pentru a sincroniza folderele cu un computer la distanță,
rsync
trebuie instalat pe ambele computere. Configurați comunicarea SSH între cele două computere înainte de a încerca să utilizați
rsync
la computerul de la distanță.
Trebuie să vă puteți conecta de la distanță ca utilizator obișnuit pe computerul de la distanță
rsync
a munci. Nu contează dacă utilizați un ID și o parolă pentru a vă conecta sau dacă ați configurat tastele SSH pentru securizare
fără parolă
acces, dar dacă nu vă puteți conecta ca utilizator, atunci
rsync
Nici nu va funcționa.
Dacă vă conectați cu o parolă,
rsync
Vă va solicita parola. Dacă utilizați tastele SSH pentru a vă conecta, în proces este perfect.
Singurul lucru suplimentar pe care trebuie să îl faceți este să adăugați numele contului de utilizator și adresa IP a computerului de la distanță la începutul căii de fișier de destinație. Folosiți un semn AT "
@
”Pentru a separa numele de utilizator de numele computerului sau de adresa IP și de un colon"
:
”Pentru a separa numele computerului sau
adresa IP
din calea directorului.
Obținem aceleași informații raportate la noi ca și când copiem fișierele la nivel local.
8. Includeți sau excludeți fișierele sau directoarele
Este posibil să aveți fișiere și directoare în directorul sursă pe care nu doriți să le copiați pe computerul de destinație. Puteți
exclude -le
folosind
--exclude
opțiune. Într -un mod similar, puteți alege să includeți fișiere și directoare specifice cu
--include
opțiune.
Quirk -ul este că dacă utilizați
--include
Opțiune Pe cont propriu, toate fișierele sunt copiate, în mod normal - inclusiv fișierele dvs. incluse în mod specific. Pentru a copia doar fișierele incluse, trebuie
--exclude
orice altceva.
Puteți folosi cât mai mulți
--include
și
--exclude
opțiuni din comanda dvs. după cum doriți, dar asigurați -vă că vă puneți
--include
opțiuni înainte de dvs.
--exclude
Opțiuni. De asemenea, asigurați -vă că aveți un slash înainte pe calea fișierului sursă.
Această comandă copiază numai fișierele de cod sursă și Fișiere de date CSV la computerul de destinație.
Singurele fișiere copiate sunt cele pe care le -am inclus în mod specific.
9. Comprimați fișierele în transfer
-z
(comprimare) Cauze opțiunea
rsync
pentru a comprima fișierele transferate. Cu toate acestea, nu sunt stocate ca fișiere comprimate pe computerul de destinație, sunt comprimate doar în timpul transferului în sine. Acest lucru poate accelera transferurile îndelungate.
10. Monitorizarea progresului
Vorbind despre transferuri îndelungate, putem adăuga câteva statistici, astfel încât să putem vedea progresul transferului.
-P
(parțial, progres) Opțiunea adaugă de fapt două opțiuni,
--parțial
și
-Progres
.
--parțial
Opțiunea spune
rsync
Pentru a păstra fișierele parțial transferate dacă un transfer eșuează. Acest lucru economisește timp când transferul este repornit.
-Progres
Opțiunea tipărește, pentru fiecare fișier, datele transferate în octeți și ca procent, viteza transferului, timpul necesar, numărul fișierului transferat și numărul de fișiere rămase.
Ieșirea derulează destul de repede și este dificil de citit. Puteți îmbunătăți ușor lucrurile prin eliminarea
-v
(Verbose) Opțiune din comandă. Chiar și atunci este încă dificil să citești pe măsură ce se aruncă.
Adesea este mai util să monitorizați progresul transferului general. Puteți face acest lucru cu opțiunea –Info și treceți -o „Progress2” ca parametru.
Ca CP pe steroizi
rsync
Comanda este rapidă, flexibilă și merită timpul necesar pentru a vă familiariza cu ea. Forma de bază a unui
rsync
comandă cu
-AV
Opțiunile, directorul sursă și directorul de destinație nu este greu de reținut deloc.
Pentru multe cazuri de utilizare, asta este tot ce ai nevoie. Fii confortabil cu asta, iar restul va veni cu ușurință.
- › Cât de ieftine pot costa VPN -urile mai ieftine decât ați negociat
- › Wyze este jos, nu doar tu
- › Uitați de desktop -uri pentru jocuri: laptopurile pentru jocuri sunt aproape la fel de rapide
- › Următorul dvs. dispozitiv inteligent de casă ar putea avea 5G
- › Nu mai folosiți tastatura și mouse -ul care a venit cu computerul
- › Bose QuietComfort Earbuds 2 Recenzie: Un pas înainte pentru audio de anulare a zgomotului