Jak zrobić differentalny backup?

Witam, mam pytanie jak się robi differentalne backupy?

Chce tak zrobić:

Poniedziałek - pełny backup

Wtorek - diff backup z Poniedziałku

Środa - diff backup z Poniedziałku

Czwartek - diff backup z Poniedziałku

Piątek - diff backup z Poniedziałku

Sobota - diff backup z Poniedziałku

Niedziela - diff backup z Poniedziałku

Bardzo proszę o pomoc.

Pozdrawiam

Problem rozwiązany

Użyłem programu tar.

#backup.sh

#!/bin/sh


#omijanie katalogów

EXCLUDE='--exclude Download --exclude date --exclude smieci'


rm /backup/stan_home

rm /backup/stan_var


echo '=========================| /home |=========================' 

tar --listed-incremental=/backup/stan_home $EXCLUDE -cjpvf /backup/full_home_`date +"%F_%H_%M_%S"`.tar.bz2 /home


echo '=========================| /var |=========================' 

tar --listed-incremental=/backup/stan_var $EXCLUDE -cjpvf /backup/full_var_`date +"%F_%H_%M_%S"`.tar.bz2 /var


mkdir /backup/fullBackup_`date +"%F"`

mv /backup/full_* /backup/fullBackup_`date +"%F"`

#backup_update.sh

#!/bin/sh

EXCLUDE='--exclude Download --exclude date --exclude smieci'


echo '=========================| /home |=========================' 

tar --listed-incremental=/backup/stan_home $EXCLUDE -cjpvf /backup/diff_home_`date +"%F_%H_%M_%S"`.tar.bz2 /home


echo '=========================| /var |=========================' 

tar --listed-incremental=/backup/stan_var $EXCLUDE -cjpvf /backup/diff_var_`date +"%F_%H_%M_%S"`.tar.bz2 /var



mkdir /backup/diffBackup_`date +"%F"`

mv /backup/diff_* /backup/diffBackup_`date +"%F"`

http://www.dobreprogramy.pl/EASEUS-Todo … 22326.html

Ale ty chyba siedzisz na linux, to

http://www.dobreprogramy.pl/Clonezilla- … 21422.html

w języku polskim nie ma chyba słowa “differentalny” :wink: chodzi o kopie przyrostowe? najlepszym narzędziem do tego typu zadań jest Acronis True Image. cały proces tworzenia kopii można bardzo szybko i wygodnie zautomatyzować, łącznie z określeniem częstotliwości kasowania starych kopii. działa bardzo szybko, pracuje w tle i nie obciąża komputera. minus taki, że nie jest darmowy. O&O DiskImage 6 też potrafi robić automatycznie kopie przyrostowe, można użyć go spokojnie jako zamiennik dla ATI. O&O DiskImage 5 do użytku domowego można dostać za darmo (promocja chyba jeszcze trwa) tutaj http://www.oo-software.com/en/special/pvm1783 niestety bawiłem się nim krótko i nie znalazłem sposobu na zautomatyzowanie procesu tworzenia kopii przyrostowych (bez problemu można zrobić to ręcznie za pomocą kilku kliknięć).

Déja Dup

Ma tylko bardzo podstawowe możliwości konfiguracji, ale jeszcze nigdy mnie nie zawiódł. Jest domyślnie w Ubuntu.

Nie chce żadnych programów które są na ISO, chce program który sam automatycznie z crona robi backupy bez wyłączenia komputera.

Można jakoś tar skonfigurować z pracą z diff, tylko nie wiem jak, bardzo proszę o pomoc.

Saver w locie backup najbezpieczniej robić poprzez np. lvm, możliwej jest tworzenie przyrostowych kopi. Ale na domowe warunki jak wykorzystuje rsync, tylko by robić kopię w locie trzeba mieć pewność że w trakcie robienia kopi system nic ważnego nie zapisuje na dysk (np. nie robić backup podczas aktualizacji systemu).

Problem rozwiązany

Użyłem programu tar.

#backup.sh

#!/bin/sh


#omijanie katalogów

EXCLUDE='--exclude Download --exclude date --exclude smieci'


rm /backup/stan_home

rm /backup/stan_var


echo '=========================| /home |=========================' 

tar --listed-incremental=/backup/stan_home $EXCLUDE -cjpvf /backup/full_home_`date +"%F_%H_%M_%S"`.tar.bz2 /home


echo '=========================| /var |=========================' 

tar --listed-incremental=/backup/stan_var $EXCLUDE -cjpvf /backup/full_var_`date +"%F_%H_%M_%S"`.tar.bz2 /var


mkdir /backup/fullBackup_`date +"%F"`

mv /backup/full_* /backup/fullBackup_`date +"%F"`

#backup_update.sh

#!/bin/sh

EXCLUDE='--exclude Download --exclude date --exclude smieci'


echo '=========================| /home |=========================' 

tar --listed-incremental=/backup/stan_home $EXCLUDE -cjpvf /backup/diff_home_`date +"%F_%H_%M_%S"`.tar.bz2 /home


echo '=========================| /var |=========================' 

tar --listed-incremental=/backup/stan_var $EXCLUDE -cjpvf /backup/diff_var_`date +"%F_%H_%M_%S"`.tar.bz2 /var



mkdir /backup/diffBackup_`date +"%F"`

mv /backup/diff_* /backup/diffBackup_`date +"%F"`

Poczytaj sobie jeszcze o diff (porównywanie), czy rsync (synchronizowanie).

Pozdrawiam!

Tak się zastanawiam czy po polsku to się nie nazywa backup różnicowy?

Zajrzyj tutaj:

http://debian.linux.pl/entries/159-Pros … wa-systemu

Odpowiednie skrypty wrzuć do crona.

Myślę, że nie ma sensu bawić się w różnicowy backup tylko najprościej użyć rsynca.

A jeśli chciałbyś mieć osobno zmienione pliki poukładane według daty to można to zrobić w następujący sposób:

  1. Skopiowanie starego backupu do nowego miejsca

  2. Zaaktualizowanie backupu w nowym miejscu świeżymi danymi

  3. Porównanie sum kontrolnych starego i nowego backupu, usunięcie plików z takimi samymi sumami z nowego backupu

Trzeci punkt można wykonać bardzo prosto jakimś skryptem shellowym napisanym np. w pythonie, jeśli zdecydujesz się na tego typu sposób to mogę napisać dla Ciebie taki mały fragment kodu do tego.