Déjà Dup môže zlyhať. Možno zhavaruje alebo vypíše chybu pri obnovovaní súborov. Ak naozaj potrebujeme svoje údaje späť, posledná vec s ktorou sa potrebujeme zaoberať je nejaká chyba. Chybu síce môžeme nahlásiť vyplnením hlásenia o chybe, no zatiaľ môžeme vyskúšať ďalšie postupy ako opraviť nefunkčný Déjà Dup a získať svoje údaje späť.
Toto si vyžaduje technické znalosti. Ak niečomu nebudeme rozumieť, môžeme požiadať o pomoc.
Otvoríme Terminál stlačením klávesovej skratky Ctrl+Alt+T.
Vytvoríme adresár, do ktorého sa budú ukladať obnovené súbory. V tomto návode použijeme /tmp/restore:
mkdir -p /tmp/restore
V prípade, že program Déjà Dup nefunguje, môžeme miíesto neho použiť nástroj pre príkazový riadok duplicity, ktorý skryte používa na zálohovanie a obnovu aj program Déjà Dup.
Ak chceme viaci informácií o programe duplicity, spustíme príkaz man duplicity.
Prvou vecou, ktorú môžeme skúsiť, je jednoduché obnovenie všetkých údajov. V návode budeme predpokladať, že súbory sú uložené na externom disku pripojenom do adresára /media/backup a že sme zálohu pri vytváraní zašifrovali:
duplicity --gio file:///media/backup /tmp/restore
Ak sme zálohu nezašifrovali, pridáme do príkazu voľbu --no-encryption.
Ak sme zálohu vytvárali na vzdialený server alebo do mraku, syntax príkazu duplicity bude iná, ako sme použili pri externom disku v predhchádzajúcom príklade. Teraz ukážeme ako sa dá pripojiť k niektorým vybraným úložiskám.
Ak sme pri vytváraní zálohy nepoužili šifrovanie, je potrebné ku každému z nasledujúcich príkazov pridať voľbu --no-encryption.
Ak sa zdá, že má nástroj duplicity problémy s pripojením na server, môžeme sa pokúsiť stiahnuť všetky súbory zálohy ručne do miestneho priečinka a použiť predchádzajúci jednoduchší príkaz.
Vyhľadáme Identifikátor kľúča (Amazon S3 access key ID) a tajný kľúč (secret access key) a v nasledujúcom príklade nahradíme položky IDENTIFIKÁTOR a TAJNÝ_KĽÚČ získanými hodnotami.
Zistíme do akého priečinka sme uložili zálohu. V nasledujúcom príklade nahradíme hodnotu PRIEČINOK zistenou cestou.
export AWS_ACCESS_KEY_ID=IDENTIFIKÁTO export AWS_SECRET_ACCESS_KEY=TAJNÝ_KĽÚČ duplicity s3+http://deja-dup-auto-IDENTIFIKÁTOR_MALÝMI_PÍSMENAMI/PRIEČINOK /tmp/restore
Zistíme používateľské meno a API kľúč k Rackspace a v nasledujúcom príklade nahradíme položky POUŽÍVATEĽSKÉ_MENO a KĽÚČ získanými hodnotami.
Zistíme do akého kontajnera sme uložili zálohu. V nasledujúcom príklade nahradíme hodnotu KONTAJNER zistenou hodnotou.
export CLOUDFILES_USERNAME=POUŽÍVATEĽSKÉ_MENO export CLOUDFILES_APIKEY=KĽÚČ duplicity cf+http://KONTAJNER /tmp/restore
Zistíme adresu servera, port, používateľské meno a heslo v nasledujúcom príklade nahradíme položky SERVER, PORT, POUŽÍVATEĽSKÉ_MENO a HESLO získanými hodnotami.
Zistíme do akého priečinka sme uložili zálohu. V nasledujúcom príklade nahradíme hodnotu PRIEČINOK zistenou cestou.
Ak ftp server vyžaduje anonymný prístup, môžeme hodnotu POUŽÍVATEĽSKÉ_MENO nahradiť hodnotou anonymous.
gvfs-mount ftp://POUŽÍVATEĽSKÉ_MENO@SERVER:PORT/PRIEČINOK duplicity --gio ftp://POUŽÍVATEĽSKÉ_MENO@SERVER:PORT/PRIEČINOK /tmp/restore
Zistíme adresu servera, port, používateľské meno a heslo v nasledujúcom príklade nahradíme položky SERVER, PORT, POUŽÍVATEĽSKÉ_MENO a HESLO získanými hodnotami.
Zistíme do akého priečinka sme uložili zálohu. V nasledujúcom príklade nahradíme hodnotu PRIEČINOK zistenou cestou.
gvfs-mount ssh://POUŽÍVATEĽSKÉ_MENO@SERVER:PORT/PRIEČINOK duplicity --gio ssh://POUŽÍVATEĽSKÉ_MENO@SERVER:PORT/PRIEČINOK /tmp/restore
Zistíme adresu servera, port, používateľské meno a heslo v nasledujúcom príklade nahradíme položky SERVER, PORT, POUŽÍVATEĽSKÉ_MENO a HESLO získanými hodnotami.
Zistíme do akého priečinka sme uložili zálohu. V nasledujúcom príklade nahradíme hodnotu PRIEČINOK zistenou cestou.
Ak sme sa rozhodli použiť zabezpečené spojenie (HTTPS) pri zálohovaní, použijeme v nasledujúcom príklade davs:// namiesto dav://.
gvfs-mount dav://POUŽÍVATEĽSKÉ_MENO@SERVER:PORT/PRIEČINOK duplicity --gio dav://POUŽÍVATEĽSKÉ_MENO@SERVER:PORT/PRIEČINOK /tmp/restore
Zistíme adresu servera, port, používateľské meno a heslo v nasledujúcom príklade nahradíme položky SERVER, POUŽÍVATEĽSKÉ_MENO a HESLO získanými hodnotami.
Zistíme do akého priečinka sme uložili zálohu. V nasledujúcom príklade nahradíme hodnotu PRIEČINOK zistenou cestou.
Ak je server Windows správca domény, pridáme jej názov na začiatok hodnoty POUŽÍVATEĽSKÉ_MENO a oddelíme ju bodkočiarkou v tvare doména;používateľské_meno.
gvfs-mount smb://POUŽÍVATEĽSKÉ_MENO@SERVER/PRIEČINOK duplicity --gio smb://POUŽÍVATEĽSKÉ_MENO@SERVER/PRIEČINOK /tmp/restore
Ak ani duplicity nefunguje, ešte existuje malá nádej. Formát záložných súborov je zložitý a nedá sa s ním ľahko manipulovať. Ak sme však zúfalý, stojí to za vyskúšanie.
Ak sme zálohu uložili na vzdialený server alebo úložisko v mraku, najskôr všetky súbory stiahneme a umiestnime ich do priečinka v našom počítači. Potom tento priečinok použijeme v príkazoch v termináli.
Program Duplicity ukladá údaje v malých súboroch, ktoré voláme zväzky. Niektoré zväzky patria celistvým alebo pravidelným zálohám a sú označené slovom „full” a iné patria prídavným zálohám a sú označené slovom „inc”. Začneme s prvým zväzkom sady úplnej zálohy a bude postupne obnovovať zväzok po zväzku.
Ak sme zálohu zašifrovali, naskôr musíme zväzky dešifrovať pomocou nástroja gpg. Ako príklad použijeme súbor duplicity-full.20110127T131352Z.vol1.difftar.gpg:
gpg --output duplicity-full.20110127T131352Z.vol1.difftar --decrypt duplicity-full.20110127T131352Z.vol1.difftar.gpg
Alebo ich môžeme dešifrovať všetky naraz (uistíme sa či máme dostatok miesta!):
gpg --multifile --decrypt duplicity-full.20110127T131352Z.*.difftar.gpg
Teraz (ak sa dešifrovanie podarilo) získame zväzky s príponou .difftar alebo .difftar.gz . Každý z nich jednotlivo rozbalíme pomocou nástroja tar:
tar xf duplicity-full.20110127T131352Z.vol1.difftar
Alebo ich opäť môžeme robaliť všetky naraz:
for t in duplicity-full.20110127T131352Z.*.difftar; do tar xf $t; done
Rozbalené súbory sa teraz budú nachádzať v priečinkoch multivolume_snapshot a snapshot. Každý súbor, ktorý bol rozdelený do viacerých zväzkov bude v multivolume_snapshot. Takto napríklad spojíme rozdelený súbor /home/jane/essay.txt:
cd multivolume_snapshot/home/jane/essay.txt cat * > essay.txt
Keď chceme obnoviť údaje z prídavných záloh, použijeme na to nástroj rdiff ktorý súbory zlúči. Návod na použitie získame zadaním príkazu man rdiff.