Co zrobić, jeśli nie można przywrócić plików

# Kiedy wszystko idzie źle

Déjà Dup może zakończyć się niepowodzeniem. Być może program zakańcza się lub informuje o błędzie kiedy próbujesz przywracać dane. Kiedy naprawdę potrzebujesz, aby dane powróciły, ostatnią rzeczą jaką możesz zrobić jest zgłoszenie błędu. Rozważ a zgłoszenie błędu, ale w międzyczasie jest też tutaj trochę sposobów obejścia niewłaściwego działania Déjà Dup i przywrócenia twoich danych.

To będzie wymagało wiedzy technicznej. Jeśli nic z tego nie ma dla Ciebie sensu, nie bój się i poproś o pomoc.

Otwórz Terminal przez naciśnięcie Ctrl Alt T .

Utwórz katalog, w którym umieścisz swoje przywrócone pliki. Ten poradnik będzie korzystać /tmp/restore:

    mkdir -p /tmp/restore

# Przywracanie przy użyciu programu Duplicity

Przy założeniu, że Déjà Dup po prostu nie działa w tej chwili poprawnie, użyj narzędzia linii poleceń duplicity, wykorzystywanego przez Déjà Dup do tworzenia kopii zapasowych i przywracania twoich danych.

Jeśli chcesz więcej informacji na temat duplicity niż przedstawione tutaj, uruchom man duplicity.

Pierwszą rzeczną, którą postaramy się zrobić to proste przywracanie wszystkich danych. Zakładając, że pliki są na zewnętrznym dysku zamontowanym jako /media/backup i zostało wybrane szyfrowanie kopii zapasowej, spróbuj tego:

    duplicity --gio file:///media/backup /tmp/restore

Jeśli kopia zapasowa nie została zaszyfrowana, dodaj --no-encryption do polecenia.

## Inne lokalizacje zapasowe

Jeśli wykonałeś kopię zapasową do zdalnego serwera lub chmury, składnia jaką używasz z duplicity będzie inna niż przykład zewnętrznego dysku powyżej. Zobacz poniżej, jak połączyć się z wybraną przez ciebie lokalizacją kopii zapasowej.

Pamiętaj aby dodać --no-encryption do każdego przykładu polecenia jeśli kopia zapasowa nie jest zaszyfrowana.

Jeśli duplicity ma problem z połączeniem się do Twojego serwera, spróbuj pobrać wszystkie pliki duplicityręcznie do folderu lokalnego jak w przykładzie podanym powyżej.

### Amazon S3

Look up your Amazon S3 access key ID and secret access key and replace instances of ID and SECRET in the example below with those respective values.

You may have specified a folder in which to put the backup files. In the example below, replace any instance of FOLDER with that path.

    export AWS_ACCESS_KEY_ID=ID
    export AWS_SECRET_ACCESS_KEY=SEKRET
    duplicity s3+http://deja-dup-auto-MAŁYMI LITERAMI_ID/KATALOG /tmp/restore

### Rackspace Cloud Files

Look up your Rackspace username and API key and replace instances of USERNAME and KEY in the example below with those respective values.

You may have specified a container in which to put the backup files. In the example below, replace any instance of CONTAINER with that name.

    export CLOUDFILES_USERNAME=NAZWA UŻYTKOWNIKA
    export CLOUDFILES_APIKEY=KEY
    duplicity cf+http://CONTAINER /tmp/restore

### FTP

Sprawdź swój adres serwera, port, nazwę użytkownika, hasło i zastąp SERVER, PORT, USERNAME, i PASSWORD w poniższym przykładzie z tymi odpowiednimi wartościami.

You may have specified a folder in which to put the backup files. In the example below, replace any instance of FOLDER with that path.

Jeśli zdecydujesz się logować nie używając nazwy użytkownika, należy użyć anonymous jak Twoja NAZWA UŻYTKOWNIKA poniżej.

    gvfs-mount ftp://NAZWA UŻYTKOWNIKA@SERWER:PORT/KATALOG
    duplicity --gio ftp://NAZWA UŻYTKOWNIKA@SERWER:PORT/KATALOG /tmp/restore

### SSH

Sprawdź swój adres serwera, port, nazwę użytkownika, hasło i zastąp SERVER, PORT, USERNAME, i PASSWORD w poniższym przykładzie z tymi odpowiednimi wartościami.

You may have specified a folder in which to put the backup files. In the example below, replace any instance of FOLDER with that path.

    gvfs-mount ssh://NAZWA UŻYTKOWNIKA@SERWER:PORT/KATALOG
    duplicity --gio ssh://NAZWA UŻYTKOWNIKA@SERWER:PORT/KATALOG /tmp/restore

### WebDAV

Sprawdź swój adres serwera, port, nazwę użytkownika, hasło i zastąp SERVER, PORT, USERNAME, i PASSWORD w poniższym przykładzie z tymi odpowiednimi wartościami.

You may have specified a folder in which to put the backup files. In the example below, replace any instance of FOLDER with that path.

Jeśli zdecydujesz się używać bezpiecznego połączenia (HTTPS) podczas tworzenia kopii zapasowej, należy użyć davs:// zamiast dav:// w poniższym przykładzie.

    gvfs-mount dav://NAZWA UŻYTKOWNIKA@SERWER:PORT/KATALOG
    duplicity --gio dav://NAZWA UŻYTKOWNIKA@SERWER:PORT/KATALOG /tmp/restore

### Zasób Windows

Sprawdź adres serwera, nazwę użytkownika, hasło i zastąp je SERWER, NAZWA UŻYTKOWNIKA, i HASŁO w poniższym przykładzie z odpowiednimi wartościami.

You may have specified a folder in which to put the backup files. In the example below, replace any instance of FOLDER with that path.

Jeśli została określona domena dla serwera Windows, należy dodać ją na początku NAZWY UŻYTKOWNIKA ze średnikiem między nimi. Na przykład, domena;nazwa użytkownika.

    gvfs-mount smb://NAZWA UŻYTKOWNIKA@SERWER/KATALOG
    duplicity --gio smb://NAZWA UŻYTKOWNIKA@SERWER/KATALOG /tmp/restore

# Restoring by Hand

Nawet jeśli duplicity nie działa, to i tak może być trochę nadziei. Format pliku kopii zapasowej jest skomplikowany i nie jest łatwo nim manipulować. Aczkolwiek jeśli jesteś zdesperowany, to warto spróbować.

Jeśli do kopi zapasowej został użyty serwer zdalny lub chumra, najpierw pobierz wszystkie pliki duplicity i umieść je w folderze na swoim komputerze. Następnie należy wejść do tego folderu przez terminal.

Duplicity stores your data in small chunks called volumes. Some volumes belong to the periodic ‘full’ or fresh backups and others to the ‘inc’ or incremental backups. Starting with a full backup set of volumes at volume 1, you’ll need to restore files volume by volume.

Jeśli kopia zapasowa została zaszyfrowana, najpierw musisz odszyfrować wolumen z gpg. Powiedzmy, że masz duplicity-full.20110127T131352Z.vol1.difftar.gpg:

    gpg --output duplicity-full.20110127T131352Z.vol1.difftar --decrypt duplicity-full.20110127T131352Z.vol1.difftar.gpg

Albo zrób wszystko na raz (upewnij się że masz wystarczająco miejsca!):

    gpg --multifile --decrypt duplicity-full.20110127T131352Z.*.difftar.gpg

Now you have either a .difftar or a .difftar.gz volume (depending on whether you had to decrypt it or not). Use tar on whichever one you have to extract the individual patch files:

    tar xf duplicity-full.20110127T131352Z.vol1.difftar

Lub ponownie, aby zrobić wszystko na raz:

    for t in duplicity-full.20110127T131352Z.*.difftar; do tar xf $t; done

Now the patch files will be in multivolume_snapshot and snapshot folders. Each file that spanned multiple volumes will be in multivolume_snapshot. Let’s say you backed up /home/jane/essay.txt:

    cd multivolume_snapshot/home/jane/essay.txt
    cat * > essay.txt

To recover data from incremental backups, use rdiff to stitch the files together. See man rdiff for usage.