Fullständig system-säkerhetskopiering med tar



  • Tar

    Att ta backup på ditt system är både bra och viktigt av olika själ. Ett själ kan vara att du vill klona ditt system alternativt bara ha en trygg backup så du slipper bygga om allt igen. Om du känner dig mera bekväm med kommandot rsync så kan du göra en Fullständig system-säkerhetskopiering med rsync istället.

    Starta ditt Linux-operativsystem och öppna en terminal. Eftersom vissa systemfiler behöver root-rättigheter så måste du blir root med tex kommandot su - eller sudo bash. Vi börjar med att byta katalog till / eftersom det är där vi vill göra backupen. Du kan kan sedan flytta backup-filen till ett annat medium när backupen är klar.

    cd /
    

    Följande är ett exempel på hur du arkiverar ditt system:

    tar -cpvzf backup.tar.gz --exclude=/backup.tar.gz --one-file-system / 
    

    tar är det kommandot som du skapar arkivet med. Du måste även ha lite kommando-växlar som följer nedan.

    • c - Skapar ett nytt backup arkiv.
    • p - Bevarar rättigheterna för filerna som lagras i arkivet för återställande senare.
    • v - Printa ut på skärmen vad som händer.
    • z - Komprimera backupfilen med gzip för att göra den mindre.
    • f <filnamn> - Specificerar vadf backupfilen ska heta och var den ska ligga någonstans.
    • --exclude=<sökväg> - Detta berättar för tar vilka kataloger eller filer som vi inte ska ha med i arkivet.
    • --one-file-system - Ta inte med filer som ligger på andra in-monterade filsystem som tex /dev, /proc och /sys.

    När du har kört detta kommando så ska det finnas en backup-fil med denna sökväg /backup.tar.gz om du har gjort rätt.

    Alternativ backup

    Det finns självklart flera sätt att ta backup på. Ett problem med - --one-file-system är att den som sagt inte tar med in-monterade system som man kanske ibland vill ha. Du vill inte ha /proc men du kanske vill ha /boot eller /home som ibland ligger på olika partitioner. Om du bara har 1 partition så kan du köra kommandot ovan utan problem.

    Detta kan du köra om du vill ta med allt men istället exkludera det som inte skall med. Glöm inte att byta till katalogen / innan du kör detta.

    tar -cpvzf backup.tar.gz \
    --exclude=/backup.tar.gz \
    --exclude=/proc \
    --exclude=/tmp \
    --exclude=/mnt \
    --exclude=/dev \
    --exclude=/sys \
    --exclude=/run \ 
    --exclude=/media \ 
    --exclude=/var/log \
    --exclude=/var/cache/apt/archives \
    --exclude=/usr/src/linux-headers* \ 
    --exclude=/home/*/.gvfs \
    --exclude=/home/*/.cache \ 
    --exclude=/home/*/.local/share/Trash /
    

    Även detta kommer att skapa en backup-fil med denna sökväg /backup.tar.gz om du har gjort rätt. Du kan exkludera vad du vill från denna backup genom att använda --exclude som du ser ovan. Detta är mest hur min kommandorad skulle kunna se ut.

    Återställning av backupen

    När du återställer ett system så vill du göra detta från en Live CD. Jag rekommenderar att man använder sig av SystemRescueCD. Börja med att formatera och fixa till disken där systemet skall återställas till. Kör sedan detta kommando för att återställa dina filer.

    tar -pvxzf <sökväg till backup-fil> -C <sökväg där det ska packas upp> --numeric-owner
    
    • C <katalog> - Detta berättar för tar vilken katalog du skall byta till innan du börjar packa upp filen.
    • x - Detta berättar för tar att du skall packa upp en tar-fil med sökvägen som du anger med -f växeln.
    • --numeric-owner - Detta gör så att tar sätter numeriska värden för ägarskap av filer och kataloger. Detta är nödvändigt eftersom systemet du packar upp på kanske inte har alla användare och grupper som du hade när du gjorde backupen.

    Men detta så har ni allt som behövs. Har ni något annat sätt ni använder tar på så får ni gärna komma med förslag i denna tråd 😉


 

Jenkler IT AB org.nr: 559082-6938   073-731 76 64   [email protected]

Ser ut som din anslutning till Jenkler IT AB gick förlorad, vänta medan vi försöker att återansluta.