Sådan sikkerhedskopieres dit Linux-system

Risiker ikke datatab. Sikkerhedskopier dine værdifulde data fra Linux-kommandolinjen. Vi vil bruge kommandoen rsync til dette, og vi har endda fundet nogle gode valgfrie grafiske grænseflader til det.

Der er mange måder at lave en sikkerhedskopi af dine filer på. Vi ønskede at vise dig en robust, fleksibel og pålidelig måde at beskytte dine data på. Vi vælger rsync på grund af dens velrespekterede algoritmer der beregner forskellene mellem filer i kildebiblioteket og målbiblioteket. Kun forskellene mellem to versioner af en fil overføres, ikke hele filen, hvis det kan undgås.

Når denne effektivitet er parret med dens solide track record i at udføre filkopier og mappesynkroniseringer siden midten af ​​1990’erne, er rsync en perfekt kandidat til at lave sikkerhedskopier fra Linux-kommandolinjen.

Derudover er der uafhængige softwareprogrammer, der fungerer som front-end for rsync. De leverer grafiske brugergrænseflader (GUI’er) til rsync, som nogle mennesker kan finde lettere at bruge.

Jo nemmere og hurtigere det er at lave en sikkerhedskopi, jo større er sandsynligheden for, at du gør det.

Brug af rsync med en ekstern harddisk

For at lave en sikkerhedskopi af dine data til en ekstern harddisk, skal harddisken være monteret og tilgængelig for dig. Hvis du kan skrive til det, så kan rsync også. I dette eksempel er en ekstern USB-harddisk kaldet SILVERXHD (for “Silver eXternal Hard Drive”) sat i Linux-computeren. Det er blevet automatisk monteret af operativsystemet.

Du bliver nødt til at kende stien til drevet. I GNOME skal du åbne Nautilus-filbrowseren og finde navnet på drevet i sidebjælken.

Hold musemarkøren over navnet på det eksterne drev, og et værktøjstip vil vise dig stien til drevet.

I dette eksempel informerer værktøjstippet os om, at monteringspunktet for filsystemet på det eksterne drev er “/media/dave/SILVERXHD.”

Hvis din filbrowser ikke gør dette, skal du gå til det eksterne drev og åbne et terminalvindue på den placering. Brug kommandoen pwd til at udskrive stien til terminalvinduet.

Kopiering af indholdet fra kildekataloget

For at bruge rsync til at kopiere indholdet af en mappe til din backup-destination, skal du bruge følgende kommando.

  Sådan indstilles netværkstidssynkronisering på Linux

Indstillingen -r (rekursiv) får rsync til at kopiere alle indlejrede undermapper og deres indhold. Bemærk, at der er skråstreg “/” i slutningen af ​​ordet “SILVERXHD”, men det er gået rundt til næste linje i skærmbilledet.

rsync -r /home/dave/Documents/ /media/dave/SILVERXHD/

Filkopieringen finder sted, og du vender tilbage til kommandolinjeprompten.

Hvis vi ser på det eksterne USB-drev, ser vi, at de mapper, der er i mappen Dokumenter, er blevet kopieret til roden af ​​det eksterne drev.

ls

Kopiering af kildekataloget og dets indhold

Hvis du havde ønsket at få dokumentbiblioteket og dets indhold kopieret til det eksterne drev, skal du fjerne “/” fra slutningen af ​​”/home/dave/Documents” på kommandolinjen, sådan her:

rsync -r /home/dave/Documents /media/dave/SILVERXHD/

For at undgå forvirring fjernede jeg de to tidligere kopierede mapper fra det eksterne drev, før denne anden kommando blev udført.

Hvis vi lader den anden kopi fuldføre og kigger på det eksterne drev igen, ser vi, at mappen Dokumenter er blevet kopieret. Dens indhold er i denne mappe. De er ikke i roden af ​​det eksterne drev.

Kopiering til en specifik målmappe

For at kopiere til en bestemt mappe på målharddisken skal du tilføje navnet på mappen til målstien. Lad os antage, at vi vil kopiere indholdet af “/home/dave/Documents”-mappen til en mappe kaldet “backups” på det eksterne drev.

Vi ville gøre dette med følgende kommando.

rsync -r /home/dave/Documents/ /media/dave/SILVERXHD/backups/

Ved at tjekke på det eksterne drev kan vi se, at sikkerhedskopieringsmappen er blevet oprettet, og i den mappe er indholdet af “/home/dave/Documents”-mappen.

ls
ls backups

Bevarelse af filejerskab og tilladelser

Brug muligheden -a (arkiv) til at bevare filattributter såsom ændringsdatoer, filejerskab, adgangstilladelser og mere for kopierede filer, symbolske links og specielle blokfiler.

rsync -ra /home/dave/Documents/ /media/dave/SILVERXHD/backups/

Brug af Verbose Mode

Indstillingen -v (verbose) tvinger rsync til at liste filerne, efterhånden som de kopieres.

rsync -rav /home/dave/Documents/ /media/dave/SILVERXHD/backups/

En oversigt over sikkerhedskopieringen vises, når kopieringen er fuldført.

Sendt: Bytes overført til målet.
Modtaget: Bytes modtaget hos værten.
Bytes/sek: er den effektive overførselshastighed.
Samlet størrelse: Repræsenterer størrelsen af ​​de data, der ville være blevet sendt, hvis du ikke brugte rsync. Ved efterfølgende kørsler af rsync vil det kun overføre filforskellene. Dette tal vil repræsentere de data, der ikke skulle overføres.
Speedup: Dette er forholdet mellem mængden af ​​data, der skulle sendes, og den samlede mængde data, der er. Hvis rsync skal kopiere alle filerne i deres helhed (f.eks. første gang det køres), vil hastigheden være 1.0. Når rsync næste gang bruges, vil det optimere overførslerne. Det vil kun sende forskellene mellem filerne, ikke hele filerne. Filer uden ændringer vil blive ignoreret. Fremskyndelsestallet vil repræsentere forholdet mellem den lille mængde data, der skulle overføres, i forhold til den samlede størrelse af filerne.

  Sådan sikrer du en Linux-installation: Det grundlæggende

Brug af Progress-indstillingen

Indstillingen -P (fremskridt) får rsync til at generere en lille statusrapport efter hver fil er kopieret.

rsync -raP /home/dave/Documents/ /media/dave/SILVERXHD/backups/

Oplysningerne kan ses mellem hver kopieret fil.

Oplysningerne er:

Bytestørrelse: Data overført for denne fil.
Procentdel: Procentdel af den overførte fil.
B/s: Dataoverførselshastighed.
Resterende tid: Anslået tid tilbage til at overføre denne fil.
xfr#: Antallet af filer, der er overført indtil videre.
to-chk: Antallet af filer, der skal kontrolleres og verificeres af optimeringsalgoritmerne.

Tilføjelse af mere hastighed

Brug indstillingen -z (komprimering) for at fremskynde overførsler. Dette komprimerer filen under overførsel, men filen gemmes ukomprimeret i målbiblioteket.

Komprimeringsmuligheden vil ikke give væsentlige fordele for overførsler, der involverer mange små filer. For samlinger af større filer kan det reducere overførselstiden på en meningsfuld måde.

Vi bruger også muligheden –delvis her. rsync vil slette delvist overførte filer forårsaget af netværksfejl eller andre afbrydelser. Indstillingen –partial tvinger rsync til at efterlade de delvist overførte filer på målet. Nettotiden rsync kører, behøver den ikke at genoverføre dele af de delvist overførte filer.

Bemærk, at du måske ikke ønsker at bruge denne mulighed, hvis der er risiko for, at nogen vil forveksle de delvist overførte filer med fuldstændigt overførte filer.

rsync -ravz  --partial /home/dave/Documents/ /media/dave/SILVERXHD/backups/

I vores eksempel er fordelene marginale.

Hastighedsforholdet er forbedret, men med to hundrededele af en procent! I et scenarie i den virkelige verden vil dine hastighedsforbedringer være mere imponerende.

Brug af rsync over et netværk

Indtil videre har vi været målrettet mod et eksternt USB-drev. For at bruge en netværksplacering som mål for sikkerhedskopieringen skal du bruge stien til den placering på kommandolinjen. Der er en netværkstilsluttet lagerenhed (NAS) på netværket, som denne artikel blev undersøgt på.

Vi kan bruge det samme trick, som vi brugte tidligere til at identificere stien til NAS’en, ved at holde musen over forbindelsen til den enhed i Nautilus.

Der er ingen særlige muligheder for at sikkerhedskopiere på tværs af et netværk; det er alle muligheder, vi allerede har brugt.

rsync -ravz  --partial /home/dave/Documents/ /media/dave/NAS/dave/backups/

Der er ingen forskel i outputformatet.

Ikke overraskende er der en væsentlig forbedring i bytes/sek.-tallet.

  Sådan spiller du Nintendo DS-spil på Linux med MelonDS

Hvis vi kører rsync igen, kan vi se, at der ikke er nogen filer at overføre, fordi der ikke er sket nogen ændringer, men der er stadig nogle bytes, der er overført frem og tilbage. Dette er mængden af ​​data, der skal overføres for at sammenligne fillisten på målet med fillisten på kilden.

Hastighedsforholdet er en størrelsesorden bedre i dette tilfælde. I praksis vil dine præstationsforhold være et sted mellem vores to pseudo-kunstige aflæsninger.

Bruger rsync Over SSH

rsync understøtter sikkerhedskopiering på tværs af en SSH-forbindelse. Vi skal angive brugerkontonavnet og SSH-placeringen på kommandolinjen. Vi bruger et netværksnavn her, men du kan også bruge en IP-adresse.

Bemærk “:” mellem SSH-forbindelsesdetaljerne og starten af ​​netværksstien på det eksterne mål.

rsync -ravz  --partial /home/dave/Documents/ [email protected]:/home/dave/Backups/

Du bliver bedt om adgangskoden til brugerkontoen på fjernmaskinen. Dette er ikke din adgangskode på kildemaskinen.

Sikkerhedskopieringen fuldføres som normalt. Gennemløbet er ikke så hurtigt som en almindelig netværksforbindelse på grund af kryptering og dekryptering, der finder sted i den sikre shell-forbindelse.

Automatisering af dine sikkerhedskopier

Vi kan nemt oprette automatiserede sikkerhedskopier ved at tilføje poster til din crontab-fil.

crontab -e

Vi opsætter en automatisk sikkerhedskopiering til at køre hver dag kl. 04:30 (hvis computeren er tændt på det tidspunkt, selvfølgelig). Syntaksen for rsync-kommandoen ændres overhovedet ikke.

Ctrl+O vil skrive dine ændringer til filen, og Ctrl+X lukker nano-editoren.

Sætte et venligt ansigt på Rsync

Folk, der er mindre komfortable med kommandolinjen, kan bruge et af en række programmer, der sætter en grafisk brugergrænseflade (GUI) på rsync. To gode eksempler er luckyBackup og Grsync. Begge disse programmer tillader, at mange af rsync-indstillingerne kan vælges via brugergrænsefladen.

Grsync-programmet koncentrerer sig om at være en visuel indpakning for rync. Det giver nem adgang til rsync-indstillingerne og tilføjer kun et begrænset sæt af ny funktionalitet.

En af Grsync-indstillingsdialogboksene,

LuckyBackup-programmet er meget mere end en simpel indpakning til rsync. Det er et backup-program, der bruger rsync bag kulisserne. For eksempel kan luckyBackup lave flere “snapshots” af din backup. Du kan derefter “rulle tilbage” til versionerne af filerne i ethvert af snapshots.

En af luckyBackup-indstillingsdialogboksene.

For at installere Grsync

For at installere Grsync i Ubuntu skal du bruge denne kommando:

sudo apt-get install grsync

For at installere Grsync i Fedora, brug denne kommando:

sudo dnf install grsync

Brug denne kommando for at installere Grsync i Manaro:

sudo pacman -Syu grsync

For at installere luckyBackup

For at installere luckyBackup i Ubuntu skal du bruge følgende kommando:

sudo apt-get install luckybackup

For at installere luckyBackup i Fedora, brug følgende kommando:

sudo dnf install luckybackup

I Manjaro skal du installere luckyBackup fra Arch User Repository (AUR). Du kan gøre dette med pamac-pakkehåndteringen.

Tag det ikke på spil. Sikkerhedskopier dine data ofte

Sikkerhedskopier er helt afgørende. Sikkerhedskopier ofte, sikkerhedskopier til mange placeringer og sikkerhedskopier til forskellige medier. Når det er sat op, kan rsync gøre alt det for dig.