Kuidas kasutada rsynci failide kopeerimiseks

How Use Rsync Copy Files



Rsync on Linuxis käsurea tööriist, mida kasutatakse failide kopeerimiseks lähtekohast sihtkohta. Saate kopeerida faile, katalooge ja kogu failisüsteemi ning hoida faile erinevate kataloogide vahel sünkroonis. See teeb enamat kui lihtsalt failide kopeerimine. See vähendab võrgu kaudu saadetavate andmete hulka, saates ainult uued või värskendatud failid. Seetõttu peetakse seda suurepäraseks utiliidiks failide kopeerimiseks ja varundamiseks. Rsync toetab ka failide kopeerimist kaugsüsteemi SSH kaudu.

Selles artiklis selgitame mõnede praktiliste näidetega, kuidas failide kopeerimiseks kasutada rsynci. Samuti selgitame rsynci kasutamist ühe faili, mitme faili ja kataloogi kopeerimisel nii kohalikku kui ka kaugsüsteemi. Me käsitleme, kuidas Rsynci kasutada:







  • Faili/kataloogi kopeerimine kohalikus süsteemis
  • Faili/kataloogi kopeerimine kohalikust kaugsüsteemi
  • Kopeerige fail/kataloog kaugsüsteemist kohalikku

Oleme selgitanud selles artiklis mainitud käske ja protseduure Ubuntu 20.04 LTS -is. Failide kopeerimiseks rsynci abil vajate käsurea terminali. Käsurea rakenduse Terminal avamiseks kasutage kiirklahvi Ctrl+Alt+T.



Rsynci installimine

Rsync on eelinstallitud Ubuntu 20.04 LTS-i. Kui see aga süsteemist kogemata eemaldatakse, saate selle installida järgmiselt.



$sudoasjakohanepaigaldadarsync

Siin on mõned kõige sagedamini kasutatavad suvandid, mida saab kasutada koos rsynciga:





–A: arhiivirežiim
–V: näitab kopeerimisprotsessi üksikasju
–P: näitab edenemisriba
–R: kopeerib andmeid rekursiivselt
–Z: tihendab andmeid
–Q: väljundi summutamine

Kopeerige failid ja kataloogid kohapeal

Rsynci üldine süntaks on:



$rsync[valik] [allikas] [sihtkoht]

Kopeerige üks fail kohapeal

Kui soovite faili oma süsteemis ühest asukohast teise kopeerida, saate seda teha tippides rsync millele järgnevad lähtefaili nimi ja sihtkataloog.

Näiteks ühe faili file1.txt kopeerimiseks praegusest asukohast, mis on kodukataloog, kataloogi ~/Documents, oleks käsk järgmine:

$rsync/Kodu/usu/fail1.txt/Kodu/usu/Dokumendid

Märkus. Faili /home/tin/file1.txt asemel võime sisestada ka faili1, kuna töötame praegu kodukataloogis. Samuti võime kasutada ~/Documents, selle asemel, et mainida kogu teed nimega/home/tin/Documents.

Kopeerige mitu faili kohapeal

Kui soovite kopeerida mitu faili korraga oma süsteemi ühest asukohast teise, saate seda teha, tippides rsync millele järgnevad lähtefailide nimi ja sihtkataloog.

Näiteks failide file2.txt ja file3.txt kopeerimiseks kodukataloogist kataloogi ~/Documents, oleks käsk järgmine:

$rsync/Kodu/usu/fail2.txt/Kodu/usu/fail3.txt/Kodu/usu/Dokumendid

Kõigi sama laiendiga failide kopeerimiseks võite failinimede individuaalse määramise asemel kasutada tärni (*). Näiteks kõigi failide kopeerimiseks kodukataloogist, mis lõpevad laiendiga .zip, kataloogi ~/Documents, kasutame järgmist:

$rsync/Kodu/usu/ *.zip ~/Dokumendid

Kopeerige kataloogid kohapeal

Kui soovite kopeerida kataloogi koos selle alamkataloogiga ja kogu sisuga oma süsteemi ühest asukohast teise, saate seda teha rsync millele järgneb lähte- ja sihtkataloog.

Näiteks näidiskataloogi kopeerimiseks kodukataloogi test/ kataloogi oleks käsk järgmine:

$rsync-Of /Kodu/usu/proov/Kodu/usu/test

Märkus: lähtekataloogi määramine / pärast seda kopeerib ainult kataloogi sisu. Kui me ei määra lähtekataloogi järel /, kopeeritakse ka lähtekataloog sihtkataloogi.

Nagu järgmises väljundis, näete, et ka meie lähtekataloogi näidis kopeeritakse sihtkataloogi (kuna oleme näidise asemel kasutanud näidist/ lähtekataloogina).

Rsync toetab järkjärgulist edastamist, nagu näete ülaltoodud väljundist, et see edastab ainult uusi või värskendatud faile.

Failide kopeerimine maksimaalse suuruse alusel

Kopeerimise ajal saame määrata ka failide maksimaalse suuruse, mida saab kopeerida valikuga –max-size. Näiteks kuni 2000k suuruste failide kopeerimiseks kataloogist ~/Allalaadimised kataloogi ~/Dokumendid oleks käsk järgmine:

$rsync-juurde -max suurus= 2000k/Kodu/usu/Allalaadimised/ * /Kodu/usu/Dokumendid

See käsk kopeerib kõik failid kataloogist ~/Allalaadimised kataloogi ~/Dokumendid, välja arvatud need, mis on suuremad kui 2000 k.

Failide kopeerimine minimaalse suuruse alusel

Samamoodi saame määrata ka failide minimaalse suuruse, mida saab kopeerida valikuga –min-size. Näiteks vähemalt 5 miljoni suuruste failide kopeerimiseks kataloogist ~/Allalaadimised kataloogi ~/Dokumendid oleks käsk järgmine:

$rsync-juurde -min suurusega= 5 miljonit/Kodu/usu/Allalaadimised/ /Kodu/usu/Dokumendid

See käsk kopeerib kõik failid kataloogist ~/Allalaadimised kataloogi ~/Dokumendid, välja arvatud need, mis on väiksemad kui 5 miljonit.

Välista failid

Failide kopeerimisel ühest kataloogist teise saate mõned failid välistada, kasutades valikut - välista, millele järgneb failinimi või failitüübi laiend.

Näiteks kõigi ZIP -failide välistamiseks, kopeerides faile kataloogist ~/Allalaadimised kataloogi ~/Dokumendid, oleks käsk järgmine:

$rsync-juurde -välistada='*.zip' /Kodu/usu/Allalaadimised/ /Kodu/usu/Dokumendid

Kopeerige faile ja katalooge eemalt

Rsynci abil saate kopeerida ühe faili, mitu faili ja katalooge kaugesüsteemi. Failide ja kataloogide kaugkopeerimiseks vajate:

  • Rsync on installitud nii kohalikku kui ka kaugesüsteemi
  • SSH -juurdepääs kaugsüsteemile
  • Kaugkasutaja parool

Enne failide kopeerimist rsynci abil veenduge, et pääsete kaugsüsteemile juurde SSH kaudu:

$sshremote_user@remote_ip


Üldine süntaks failide ja kataloogide kopeerimiseks kaugsüsteemi rsynci abil:

$rsync[valik] [allikas] [kaugkasutaja@kaugjuhtimispult: sihtkoht]

Näiteks ühe faili file.txt kopeerimiseks kataloogist ~/Allalaadimised kaugsüsteemi ~/Dokumendid kataloogi oleks käsk järgmine:

$rsync-v~/Allalaadimised/file1.txt umara@192.168.72.164:~/Dokumendid

Samamoodi kopeerida kataloog ~/Allalaadimised/failid kohalikus süsteemis koos selle alamkataloogiga ja kogu sisu kaugsüsteemi kataloogi ~/Allalaadimised/proovid:

$rsync-rv~/Allalaadimised/failid umra@192.168.72.164:~/Allalaadimised/proovid

Samuti saate kopeerida failid ja kataloogid kaugarvutist oma kohalikku masinasse. Näiteks faili2.txt kopeerimiseks kaugsüsteemist kohaliku süsteemi töölauale tehke järgmist.

$rsync-vumara@192.168.72.164:~/Allalaadimised/fail2.txt ~/Töölaud/

Samamoodi kataloogi kopeerimiseks kaugsüsteemist kohalikku süsteemi

$rsync-rvumara@192.168.72.164:~/Allalaadimised/proov ~/Töölaud/test

Failide kopeerimisel kaugsüsteemist/sealt saate kasutada ka kõiki valikuid, nagu –max-size, –min-size, –exclude ja muud.

Rsync on suurepärane tööriist failide kopeerimiseks allikast sihtkohta kas kohapeal või eemalt. See sisaldab suurt hulka valikuid, mis annavad teile paindlikkuse ja kontrolli failide ülekandmisel kaugsüsteemist/süsteemist.