Hvordan bruke Rsync -kommandoen til å kopiere filer på Ubuntu

Hvordan bruke Rsync -kommandoen til å kopiere filer på Ubuntu
Rsync er et verktøy for å kopiere filer. Rsync brukes til å kopiere filer fra datamaskinen din til en ekstern maskin, fra en ekstern maskin til datamaskinen din, fra en katalog til en annen katalog på samme datamaskin, fra datamaskinen din til en ekstern harddisk eller nettverksandel osv. Rsync kan også brukes til å ta trinnvise sikkerhetskopier.

I denne artikkelen skal jeg vise deg hvordan du bruker Rsync -kommandoen til å kopiere filer og kataloger og ta inkrementell sikkerhetskopi. Jeg vil bruke Ubuntu til demonstrasjonen. Men enhver moderne Linux -distribusjon skal fungere helt fint. Så la oss komme i gang.

Installere Rsync:

Rsync bør allerede installeres på Ubuntu. Men hvis den ikke er installert på datamaskinen din av en eller annen grunn, kan du enkelt installere den fra det offisielle pakkelageret til Ubuntu med følgende kommando:

$ sudo apt install rsync -y

Format av Rsync -kommandoen:

Grunnformatet til Rsync -kommandoen er,

$ rsync opsjoner kildedestinasjon
  • kilde kan være en fil eller en katalog eller en nettverkssti.
  • mål kan være en katalog eller en nettverkssti.
  • Rsync har mange alternativer. Du kan endre oppførselen til Rsync ved å bruke disse alternativene. Vi vil se på noen av de vanligste alternativene underveis.

Når du bruker Rsync, må du vite følgende ting:

  • Hvis du legger en / Etter katalognavnet i kilde av rsync som som mine filer/, da betyr det å kopiere alle filene fra katalogen bare til mål.
  • Hvis du ikke legger en / Etter katalognavnet i kilde av rsync som som mine filer, da vil Rsync kopiere alle filene fra katalogen til mål inkludert katalogen.
  • Hvis du skriver inn en mål Katalogsti som ikke eksisterer, da vil Rsync automatisk opprette den etter behov.

Sikkerhetskopiere lokale filer og kataloger med Rsync:

Du kan kopiere filer fra en katalog til en annen katalog på datamaskinen din veldig raskt med Rsync.

La oss for eksempel si at du har noen viktige filer i ~/Nedlastinger katalog. Nå vil du sikkerhetskopiere alle filene fra ~/Nedlastinger Katalog til USB -tommelstasjonen /dev/sdb1 montert i katalogen /mnt/myusb.

La oss lage noen dummy -filer i ~/Nedlastinger katalog.

$ berøring ~/nedlastinger/test 1… 100

Nå, kopier alle filene fra ~/Nedlastinger katalog til /mnt/myusb Katalog med følgende Rsync -kommando:

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

Filene skal kopieres.

Som du kan se, er filene i /mnt/myusb katalog.

Du kan også kopiere hele ~/Nedlastinger Katalog til USB -tommelstasjonen som følger:

$ rsync -avzh ~/nedlastinger/mnt/myusb

Som du ser, blir hele katalogen kopiert over til USB -tommelstasjonen.

Igjen, hvis du ville kopiere alle filene fra ~/Nedlastinger Katalog til en annen katalog (La oss si mydownloads/) På USB -tommelstasjonen, kjør Rsync som følger:

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

Som du ser, er filene riktig kopiert til USB -tommelstasjonen.

Sikkerhetskopiere eksterne filer og kataloger med Rsync:

Med Rsync kan du kopiere filer og kataloger fra en ekstern server til ditt lokale filsystem eller USB -tommelstasjon for sikkerhetskopieringsformål. Du kan også kopiere filer og kataloger fra det lokale filsystemet til den eksterne sikkerhetskopierserveren. Rsync bruker SSH for å kopiere filer og kataloger til/fra ekstern server.

Du må ha SSH -serverpakke (OpenSSH-server på Ubuntu) og Rsync Pakke installert på den eksterne serveren hvis du vil bruke Rsync for filbackup -formål.

La oss for eksempel si, du vil kopiere alt innholdet (inkludert katalogen) til /www Katalog fra din eksterne server www.Eksempel1.com til din USB -tommelstasjon montert på stien /mnt/myusb På ditt lokale filsystem.

For å gjøre det, kan du bruke følgende Rsync -kommando:

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

MERK: Her, rot er det eksterne brukernavnet, www.Eksempel1.com er den eksterne serverens DNS -navn og /www er en katalogsti på den eksterne serveren. Du kan også bruke IP -adressen til den eksterne serveren i stedet for DNS -navn hvis du vil.

Du kan se følgende melding hvis du kobler til den eksterne serveren for første gang. Bare skriv inn ja Og trykk deretter .

Skriv inn passordet for den eksterne brukeren (i mitt tilfelle er det rot) og trykk .

Alle filene og katalogene i /www Katalog inkludert katalogen /www skal kopieres over til USB -tommelstasjonen som du kan se på skjermdumpen nedenfor.

Du kan også kopiere filer fra det lokale filsystemet til den eksterne serveren din med Rsync.

I det tidligere eksemplet har du tatt en sikkerhetskopi av /www Katalog på den eksterne serveren. La oss si, noen av filene i den eksterne serveren er skadet, og du vil gjenopprette dem fra sikkerhetskopien.

For å gjøre det, kjør Rsync -kommandoen som følger:

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

Skriv inn passordet til den eksterne serveren din og trykk på .

Filene skal kopieres fra det lokale filsystemet til den eksterne serveren.

Tar trinnvise sikkerhetskopier med Rsync:

I denne typen sikkerhetskopiering, kilde og mål Kataloger holdes synkronisert. Hvis noen fil blir lagt til i kilde katalog, den er lagt til i mål Katalog også. På samme måte, hvis noen fil eller katalog fra kilde Katalogen fjernes, den fjernes fra mål Katalog også.

Rsync er et flott verktøy for å ta trinnvis sikkerhetskopi.

La oss si, du har en katalog ~/sky I brukerens HJEM katalog. Nå vil du ta trinnvis sikkerhetskopi av katalogen til en USB -tommelstasjon montert på banen /mnt/USB1 På en ekstern server Sikkerhetskopi.eksempel.com.

MERK: Du må ha OpenSSH-server og Rsync Pakker installert på den eksterne serveren for at dette skal fungere.

Å ta trinnvis sikkerhetskopi av ~/sky, Kjør følgende kommando:

$ rsync -avzh --delete --Progress ~/ cloud/ [email protected]:/mnt/USB1/backup

Skriv inn passordet for din eksterne bruker og trykk på den eksterne brukeren og trykk .

Innholdet i ~/sky Katalogen skal kopieres til USB -tommelstasjonen på den eksterne serveren.

Som du kan se, blir alle filene kopiert over til USB -tommelstasjonen montert på den eksterne sikkerhetskopiererveren.

La oss nå fjerne en fil fra det lokale filsystemet og se hva som skjer.

$ rm ~/sky/pakker.tekst

Bruk nå Rsync for å synkronisere katalogene igjen med samme kommando som før.

$ rsync -avzh --delete --Progress ~/ cloud/ [email protected]:/mnt/USB1/backup

Som du ser, filen Pakker.tekst blir også fjernet fra USB -tommelstasjonen montert på den eksterne sikkerhetskopiererveren.

Hvor du skal dra neste:

Du kan finne mer informasjon om Rsync på MAN -siden til Rsync. MAN -siden til Rsync har detaljert beskrivelse av alle alternativene til Rsync. Jeg anbefaler at du sjekker det ut.

Du kan få tilgang til Man -siden til Rsync med følgende kommando:

$ mann rsync

Så det er slik du bruker Rsync for å kopiere filer og ta trinnvise sikkerhetskopier på Ubuntu. Takk for at du leste denne artikkelen.