Articles

miten rsync-komentoa käytetään tiedostojen kopioimiseen Ubuntussa

rsync on työkalu tiedostojen kopioimiseen. rsync: tä käytetään tiedostojen kopioimiseen tietokoneesta etäkoneeseen, etäkoneesta tietokoneeseen, hakemistosta saman tietokoneen toiseen hakemistoon, tietokoneesta ulkoiselle kiintolevylle tai verkkojakoon jne. rsync: tä voidaan käyttää myös inkrementaalisten varmuuskopioiden ottamiseen.

tässä artikkelissa aion näyttää, miten rsync-komentoa käytetään tiedostojen ja hakemistojen kopioimiseen ja inkrementaaliseen varmuuskopiointiin. Käytän Ubuntua esittelyyn. Mutta minkä tahansa nykyaikaisen Linux-jakelun pitäisi toimia ihan hyvin. Aloitetaan.

Rsync:

rsync pitäisi jo asentaa Ubuntuun. Mutta jos sitä ei jostain syystä ole asennettu tietokoneellesi, voit helposti asentaa sen Ubuntun virallisesta pakettivarastosta seuraavalla komennolla:

$ sudo apt install rsync-y

rsync-komennon muoto:

rsync-komennon perusmuoto on,

$ rsync-valinnat lähdekohde
  • lähde voi olla tiedosto tai hakemisto tai verkkopolku.
  • kohde voi olla Hakemisto tai verkkopolku.
  • rsyncillä on monia vaihtoehtoja. Voit muuttaa rsync: n käyttäytymistä näiden vaihtoehtojen avulla. Otamme tarkastella joitakin yleisimpiä vaihtoehtoja matkan varrella.

rsync: tä käytettäessä on tiedettävä seuraavat asiat:

  • Jos rsync: n lähteeseen laitetaan hakemiston nimen perään a/, kuten myfiles/, se tarkoittaa, että kopioi kaikki tiedostot hakemiston sisältä vain kohteeseen.
  • Jos rsync: n lähteeseen ei laiteta hakemiston nimen perään a/, kuten myfiles, rsync kopioi kaikki tiedostot hakemistosta kohteeseen, mukaan lukien hakemisto.
  • Jos kirjoitat kohdehakemiston polun, jota ei ole olemassa, rsync luo sen automaattisesti tarpeen mukaan.

paikallisten tiedostojen ja hakemistojen varmuuskopiointi rsync-ohjelmalla:

voit kopioida tiedostoja tietokoneen hakemistosta toiseen rsync-ohjelmalla hyvin nopeasti.

esimerkiksi sanotaan, että ~ / Downloads-hakemistossa on joitakin tärkeitä tiedostoja. Nyt, haluat varmuuskopioida kaikki tiedostot ~/Downloads hakemistosta USB-muistitikku/dev /sdb1 asennettu hakemistoon/mnt / myusb.

tehdään joitakin dummy-tiedostoja ~ / Downloads-hakemistoon.

$ touch ~/Downloads / test{1..100}

kopioi nyt kaikki tiedostot ~/Downloads-hakemistosta /mnt/myusb-hakemistoon seuraavalla rsync-komennolla:

$ rsync-avzh ~/Downloads/ /mnt/myusb

tiedostot tulee kopioida.

kuten näkyy, tiedostot ovat/mnt / myusb-hakemistossa.

voit myös kopioida koko ~/Downloads-hakemiston USB-muistitikulle seuraavasti:

$ rsync-avzh ~/Downloads /mnt/myusb

kuten näkyy, koko hakemisto on kopioitu USB-muistitikulle.

taas, jos haluat kopioida kaikki tiedostot ~/Downloads-hakemistosta toiseen hakemistoon (sanotaan vaikka mydownloads/) USB-muistitikullasi, suorita rsync seuraavasti:

$ rsync-avzh ~/downloads/ /mnt/myusb/mydownloads

kuten näkyy, tiedostot ovat oikein kopioidaan USB-muistitikulle.

varmuuskopiointi etätiedostoista ja-hakemistoista rsync: llä:

rsync: llä voit kopioida tiedostoja ja hakemistoja etäpalvelimelta paikalliseen tiedostojärjestelmään tai USB-muistitikkuun varmuuskopiointitarkoituksiin. Voit myös kopioida tiedostoja ja hakemistoja paikallisesta tiedostojärjestelmästä etätukipalvelimelle. rsync käyttää SSH: ta tiedostojen ja hakemistojen kopioimiseen etäpalvelimelle.

etäpalvelimeen on asennettava SSH-palvelinpaketti (openssh-server Ubuntussa) ja rsync-paketti, jos haluat käyttää rsync: tä tiedostojen varmuuskopiointitarkoituksiin.

esimerkiksi sanotaan, että haluat kopioida /www-hakemiston kaikki sisällöt (mukaan lukien hakemiston) etäpalvelimeltasi www.example1.com USB-muistitikulle, joka on asennettu paikallisen tiedostojärjestelmän polulle /mnt/myusb.

siihen voi käyttää seuraavaa rsync-komentoa:

$ rsync-avzh [email protected]:/www /mnt / myusb

HUOM.: Tässä, root on kauko käyttäjätunnus, www.example1.com on etäpalvelimen DNS-nimi ja / www on etäpalvelimen hakemistopolku. Voit halutessasi käyttää myös etäpalvelimen IP-osoitetta DNS-nimen sijaan.

voit nähdä seuraavan viestin, jos olet ensimmäistä kertaa yhteydessä etäpalvelimeen. Kirjoita vain Kyllä ja paina sitten <Enter>.

kirjoita nyt salasana etäkäyttäjälle (minun tapauksessani se on root) ja paina<Enter >.

kaikki /www-hakemiston sisällä olevat tiedostot ja hakemistot mukaan lukien hakemisto / www tulee kopioida USB-muistitikulle, kuten alla olevasta kuvakaappauksesta näkyy.

voit myös kopioida tiedostoja paikallisesta tiedostojärjestelmästä etäpalvelimellesi rsync: n avulla.

aiemmassa esimerkissä olet ottanut / www-hakemistosta varmuuskopion etäpalvelimelle. Nyt, sanotaan, jotkut tiedostot etäpalvelin on vaurioitunut ja haluat palauttaa ne varmuuskopiosta.

suorittaaksesi sen, suorita rsync-komento seuraavasti:

$ rsync-avzh /mnt/myusb/www/ [email protected]:/www

nyt Kirjoita etäpalvelimesi salasana ja paina <Enter>.

tiedostot tulee kopioida paikallisesta tiedostojärjestelmästä etäpalvelimelle.

ottaen inkrementaalisia varmuuskopioita rsync: llä:

tämän tyyppisessä varmuuskopioinnissa lähde-ja kohdehakemistot pidetään synkronoituna. Jos lähdehakemistoon lisätään jokin tiedosto, se lisätään myös kohdehakemistoon. Samalla tavalla, jos jokin tiedosto tai hakemisto lähdehakemistosta poistetaan, se poistetaan myös kohdehakemistosta.

rsync on loistava työkalu inkrementaalisen varmuuskopioinnin ottamiseen.

sanotaan, että sinulla on hakemisto ~ / pilvi käyttäjän kotihakemistossa. Nyt, haluat ottaa inkrementaalinen varmuuskopiointi hakemiston USB-muistitikku asennettu polku / mnt / usb1 etäpalvelimelle backup.example.com.

HUOM.: Etäpalvelimeen on asennettava openssh-server-ja rsync-paketit, jotta tämä toimisi.

ottaaksesi inkrementaalisen varmuuskopioinnin ~/Cloudista, suorita seuraava komento:

$ rsync-avzh –delete –progress ~/Cloud/ [email protected]:/mnt/usb1/backup

nyt kirjoita salasana etäkäyttäjällesi ja paina <Enter>.

~ / cloud-hakemiston sisältö tulee kopioida etäpalvelimen USB-muistitikulle.

kuten näkyy, kaikki tiedostot kopioidaan etätukipalvelimelle asennetulle USB-muistitikulle.

nyt poistetaan tiedosto paikallisesta tiedostojärjestelmästä ja katsotaan mitä tapahtuu.

$ rm ~/cloud / packages.txt

nyt käytä rsync: tä synkronoidaksesi hakemistot uudelleen samalla komennolla kuin ennen.

$ rsync-avzh –delete –progress ~ / cloud/ [email protected]:/mnt/usb1/backup

kuten näkyy, tiedostopaketit.txt poistetaan myös USB-muistitikulta, joka on asennettu etäpalvelimeen.

minne seuraavaksi:

lisätietoa rsync: stä löytyy rsync: n man-sivulta. Rsync: n man-sivulla on yksityiskohtainen kuvaus kaikista rsync: n vaihtoehdoista. Suosittelen, että tarkistat sen.

rsync: n man-sivulle pääsee seuraavalla komennolla:

$ man rsync

niin, näin käytät rsync kopioida tiedostoja ja ottaa inkrementaalisia varmuuskopioita Ubuntu. Kiitos tämän artikkelin lukemisesta.