Backup via rsync
Hej.
Jeg prøver at lave et scipt som skal tage backup til min eksterne HD på /media/disk-1/ vha. et rsync script. Scriptet ser sådan her ud:
#!/bin/bash
# backup af alle filer
# hvis backupdrevet er at finde... så
if [ -d /media/disk-1/ ]; then
rsync -avc /home/user/Documents/* . /media/disk-1/Backup/home/user/Documents/*
rsync -avc /home/user/Desktop/* . /media/disk-1/Backup/home/user/Desktop/*
rsync -avc /home/user/texmf/* . /media/disk-1/Backup/home/user/texmf/*
echo Rsync backup udført
else # Konstaterer at den ikke er der
echo Jeg kan ikke finde den eksterne harddisk.
echo Prøvede på /media/disk-1/ ...
echo Kør evt. backup manuelt.
fi
Af én eller anden grund afvikler den scriptet, laver en stor liste over alle filer i /home, og kopierer hele home til /media/disk-1/Backup/. Ikke nok med det, det gør den 3 gange -en gang for hver "rsync -avc", og det tager en krig!!!
Hvad er der galt med mit script?
- Log in to post comments
Kommentarer4
-tu
du kunne overveje at bruge -tu så er det kun de filer der er blevet redigeret/ændre der vil blive kopieret...
Men hvorfor kopierer den flere gange?
Det er en brugbart tilføjelse, men den bliver ved med at kopiere hele home!
Hvad skal jeg ændre for at den ikke gør det?
syntax
så vidt jeg lige kan se er der fejl i syntaxen
der er ikke brug for * når du bruger -a og aldrig en stjerne i destinationen. Endvidere vil jeg gætte på at du står i din home mappe når du kører scriptet for . er jo tegnet for den mappe man står i.
Hvis du vil dele en komandolinie i bash skal du bruge \
altså, for Documents ville jeg skrive
rsync -avc /home/user/Documents/ \
/media/disk-1/Backup/home/user/Documents/
Når du bruger -c laves der tjecksum på alle filer og det kan godt tage lang tid. Så vidt jeg ved er det kun nødvendigt hvis du vil sikre dig mod harddiskfejl - til gengæld risikerer du at miste din backup hvis der er sektorfejl på source harddisken.
Re: Backup via rsync
Det hjalp! Det var det . der var i vejen, så nu fungerer det!
Tak for hjælpen Aleister og johnnyec!