Hur man säkerhetskopierar ditt Linux-system

Riskera inte dataförlust. Säkerhetskopiera dina värdefulla data från Linux-kommandoraden. Vi kommer att använda kommandot rsync för detta, och vi har till och med hittat några trevliga valfria grafiska gränssnitt för det.

Det finns många sätt att göra en säkerhetskopia av dina filer. Vi ville visa dig ett robust, flexibelt och pålitligt sätt att skydda din data. Vi väljer rsync på grund av dess väl respekterade algoritmer som beräknar skillnaderna mellan filer i källkatalogen och målkatalogen. Endast skillnaderna mellan två versioner av en fil överförs, inte hela filen om det kan undvikas.

När denna effektivitet paras ihop med dess gedigna meritlista i att utföra filkopior och katalogsynkroniseringar sedan mitten av 1990-talet, är rsync en perfekt kandidat för att skapa säkerhetskopior från Linux-kommandoraden.

Dessutom finns det oberoende program som fungerar som en front-end för rsync. De tillhandahåller grafiska användargränssnitt (GUI) för att rsync som vissa människor kan tycka är lättare att använda.

Ju enklare och snabbare det är att göra en säkerhetskopia, desto mer sannolikt är det att du gör det.

Använda rsync med en extern hårddisk

För att göra en säkerhetskopia av dina data till en extern hårddisk måste hårddisken vara monterad och tillgänglig för dig. Om du kan skriva till den, så kan rsync det också. I det här exemplet är en extern USB-hårddisk som heter SILVERXHD (för ”Silver eXternal Hard Drive”) ansluten till Linux-datorn. Den har automonterats av operativsystemet.

Du måste känna till vägen till enheten. I GNOME, öppna Nautilus-filläsaren och leta reda på namnet på enheten i sidofältet.

Håll muspekaren över namnet på den externa enheten och ett verktygstips visar dig vägen till enheten.

I det här exemplet informerar verktygstipset oss om att monteringspunkten för filsystemet på den externa enheten är ”/media/dave/SILVERXHD.”

Om din filläsare inte gör detta, bläddra till den externa enheten och öppna ett terminalfönster på den platsen. Använd kommandot pwd för att skriva ut sökvägen till terminalfönstret.

Kopiera innehållet från källkatalogen

För att använda rsync för att kopiera innehållet i en katalog till din backupdestination, använd följande kommando.

Alternativet -r (rekursivt) gör att rsync kopierar alla kapslade underkataloger och deras innehåll. Observera att det finns ett snedstreck ”/” i slutet av ordet ”SILVERXHD”, men det har gått runt till nästa rad i skärmdumpen.

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

Filkopieringen sker och du återgår till kommandoraden.

Om vi ​​tittar på den externa USB-enheten ser vi att katalogerna som finns i dokumentkatalogen har kopierats till roten på den externa enheten.

ls

Kopiera källkatalogen och dess innehåll

Om du hade velat ha dokumentkatalogen och dess innehåll kopierat till den externa enheten, ta bort ”/” från slutet av ”/home/dave/Documents” på kommandoraden, så här:

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

För att undvika förvirring tog jag bort de två tidigare kopierade katalogerna från den externa enheten innan detta andra kommando kördes.

Om vi ​​låter den andra kopian slutföras och tittar på den externa enheten igen, ser vi att dokumentkatalogen har kopierats över. Dess innehåll finns i den katalogen. De finns inte i roten på den externa enheten.

Kopiera till en specifik målkatalog

För att kopiera till en specifik katalog på målhårddisken, lägg till namnet på katalogen i målsökvägen. Låt oss anta att vi vill kopiera innehållet i ”/home/dave/Documents”-katalogen till en katalog som heter ”backups” på den externa enheten.

Vi skulle göra detta med följande kommando.

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

När vi kollar på den externa enheten kan vi se att säkerhetskopieringskatalogen har skapats, och i den katalogen finns innehållet i katalogen ”/home/dave/Documents”.

ls
ls backups

Bevara filäganderätt och behörigheter

Använd alternativet -a (arkiv) för att bevara filattribut som ändringsdatum, filägande, åtkomstbehörigheter och mer, för kopierade filer, symboliska länkar och speciella blockfiler.

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

Använder Verbose Mode

Alternativet -v (verbose) tvingar rsync att lista filerna när de kopieras.

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

En sammanfattning av säkerhetskopian presenteras när kopieringen är klar.

Skickat: Byten som överförs till målet.
Mottaget: Byten som tas emot hos värden.
Byte/sek: är den effektiva överföringshastigheten.
Total storlek: Representerar storleken på data som skulle ha skickats om du inte använde rsync. Vid efterföljande körningar av rsync kommer det bara att överföra filskillnaderna. Denna siffra kommer att representera de data som inte behövde överföras.
Speedup: Detta är förhållandet mellan mängden data som måste skickas och den totala mängden data som finns. Om rsync behöver kopiera alla filer i sin helhet (till exempel första gången den körs) blir hastigheten 1.0. När rsync används nästa gång kommer det att optimera överföringarna. Det skickar bara skillnaderna mellan filerna, inte hela filerna. Filer utan ändringar kommer att ignoreras. Snabbhetssiffran kommer att representera förhållandet mellan den lilla mängd data som krävdes för att överföras mot den totala storleken på filerna.

Använda framstegsalternativet

Alternativet -P (förlopp) gör att rsync genererar en liten förloppsrapport efter att varje fil har kopierats.

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

Informationen som tillhandahålls kan ses mellan varje kopierad fil.

Informationen som tillhandahålls är:

Bytestorlek: Data överförs för denna fil.
Procent: Andel av filen som överförs.
B/s: Dataöverföringshastighet.
Återstående tid: Uppskattad tid kvar att överföra denna fil.
xfr#: Antalet filer som har överförts hittills.
to-chk: Antalet filer som återstår att kontrollera och verifiera av optimeringsalgoritmerna.

Lägger till mer hastighet

För att påskynda överföringar, använd alternativet -z (komprimering). Detta komprimerar filen vid överföring, men filen lagras okomprimerad i målkatalogen.

Komprimeringsalternativet kommer inte att ge betydande fördelar för överföringar som involverar många små filer. För samlingar av större filer kan det minska överföringstiden på ett meningsfullt sätt.

Vi använder också alternativet –partial här. rsync kommer att radera delvis överförda filer orsakade av nätverksfel eller andra avbrott. Alternativet –partial tvingar rsync att lämna de delvis överförda filerna på målet. Nettotiden som rsync körs kommer inte att behöva överföra delarna av de delvis överförda filerna igen.

Observera att du kanske inte vill använda det här alternativet om det finns risk att någon kommer att missta de delvis överförda filerna med helt överförda filer.

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

I vårt exempel är fördelarna marginella.

Hastighetsförhållandet har förbättrats men med två hundradelar av en procent! I ett verkligt scenario kommer dina hastighetsförbättringar att bli mer imponerande.

Använda rsync över ett nätverk

Hittills har vi riktat in oss på en extern USB-enhet. För att använda en nätverksplats som mål för säkerhetskopieringen, använd sökvägen till den platsen på kommandoraden. Det finns en nätverksansluten lagringsenhet (NAS) på nätverket som denna artikel undersöktes på.

Vi kan använda samma knep som vi använde tidigare för att identifiera sökvägen till NAS, genom att föra musen över anslutningen till den enheten i Nautilus.

Det finns inga speciella alternativ för säkerhetskopiering över ett nätverk; dessa är alla alternativ som vi redan har använt.

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

Det är ingen skillnad i formatet på utdata.

Inte överraskande finns det en betydande förbättring i siffran Byte/sek.

Om vi ​​kör rsync igen kan vi se att det inte finns några filer att överföra eftersom det inte har skett några ändringar, men det finns fortfarande några byte som överförs fram och tillbaka. Detta är mängden data som behöver överföras för att jämföra fillistan på målet med fillistan på källan.

Hastighetsförhållandet är en storleksordning bättre i detta fall. I praktiken kommer dina prestationsförhållanden att ligga någonstans mellan våra två pseudo-artificiella avläsningar.

Använder rsync över SSH

rsync stöder säkerhetskopiering över en SSH-anslutning. Vi måste ange användarkontots namn och SSH-platsen på kommandoraden. Vi använder ett nätverksnamn här, men du kan också använda en IP-adress.

Notera ”:” mellan SSH-anslutningsdetaljerna och början av nätverkssökvägen på fjärrmålet.

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

Du kommer att bli ombedd att ange lösenordet för användarkontot på fjärrmaskinen. Det här är inte ditt lösenord på källmaskinen.

Säkerhetskopieringen kommer att slutföras som vanligt. Genomströmningen är inte lika snabb som en vanlig nätverksanslutning, på grund av krypteringen och dekrypteringen som sker i den säkra skalanslutningen.

Automatisera dina säkerhetskopior

Vi kan enkelt skapa automatiska säkerhetskopior genom att lägga till poster i din crontab-fil.

crontab -e

Vi kommer att ställa in en automatisk säkerhetskopiering som körs varje dag kl. 04:30 (om datorn är påslagen då, förstås). Syntaxen för kommandot rsync ändras inte alls.

Ctrl+O skriver dina ändringar i filen och Ctrl+X stänger nanoredigeraren.

Att sätta ett vänligt ansikte på Rsync

Människor som är mindre bekväma med kommandoraden kan använda ett av ett antal program som sätter ett grafiskt användargränssnitt (GUI) på rsync. Två bra exempel är luckyBackup och Grsync. Båda dessa program tillåter många av rsync-alternativen att väljas via användargränssnittet.

Grsync-programmet koncentrerar sig på att vara ett visuellt omslag för rync. Det ger enkel åtkomst till rsync-alternativen och lägger bara till en begränsad uppsättning nya funktioner.

En av Grsync-inställningarna,

LuckyBackup-programmet är mycket mer än ett enkelt omslag för rsync. Det är ett säkerhetskopieringsprogram som använder rsync bakom kulisserna. Till exempel kan luckyBackup göra flera ”snapshots” av din säkerhetskopia. Du kan sedan ”rulla tillbaka” till versionerna av filerna i någon av ögonblicksbilderna.

En av luckyBackup-inställningarna.

För att installera Grsync

För att installera Grsync i Ubuntu, använd det här kommandot:

sudo apt-get install grsync

För att installera Grsync i Fedora, använd detta kommando:

sudo dnf install grsync

För att installera Grsync i Manaro använd det här kommandot:

sudo pacman -Syu grsync

För att installera luckyBackup

För att installera luckyBackup i Ubuntu, använd följande kommando:

sudo apt-get install luckybackup

För att installera luckyBackup i Fedora använd följande kommando:

sudo dnf install luckybackup

I Manjaro måste du installera luckyBackup från Arch User Repository (AUR). Du kan göra detta med pamac-pakethanteraren.

Riskera det inte, säkerhetskopiera dina data ofta

Säkerhetskopiering är helt avgörande. Säkerhetskopiera ofta, säkerhetskopiera till många platser och säkerhetskopiera till olika media. När den väl är inställd kan rsync göra allt det åt dig.