Извлечь файлы двойственности вручную

Я потерял диск и на нем установлена ​​ОС Ubuntu, из которой я создал резервную копию с помощью Duplicity, и я не знаю, как восстановить архивные файлы, которые я до сих пор храню на другом диске. Все они следуют этим 4 обозначениям

duplicity-full.20140106T111233Z.manifest
duplicity-full-signatures.20140106T111233Z.sigtar.gz
duplicity-full.20140106T111233Z.volxxx.difftar.gz (multiple volumes)
duplicity-full.20140106T111233Z.volxxx.difftar (multiple volumes)

Есть важные данные, которые мне нужно восстановить. Что я могу сделать? Было бы достаточно использовать gzip? И если да, то как я мог бы легко извлечь их все?

РЕДАКТИРОВАТЬ 1 Испытывая ваши предложения, как с опциями восстановления, так и с параметром --gio, я получаю следующий текст:

duplicity restore file://media/ubuntu/Toshiba\ HDD/BACKUPS/Documents/ /media/ubuntu/9fb63c8e-ecb5-4c55-b4e0-282e7b4a82ff/tmp/docs/
Local and Remote metadata are synchronized, no sync needed.
Last full backup date: none
GnuPG passphrase: 
Traceback (most recent call last):
  File "/usr/bin/duplicity", line 1494, in <module>
    with_tempdir(main)
  File "/usr/bin/duplicity", line 1488, in with_tempdir
    fn()
  File "/usr/bin/duplicity", line 1337, in main
    do_backup(action)
  File "/usr/bin/duplicity", line 1422, in do_backup
    restore(col_stats)
  File "/usr/bin/duplicity", line 697, in restore
    restore_get_patched_rop_iter(col_stats)):
  File "/usr/bin/duplicity", line 719, in restore_get_patched_rop_iter
    backup_chain = col_stats.get_backup_chain_at_time(time)
  File "/usr/lib/python2.7/dist-packages/duplicity/collections.py", line 952, in get_backup_chain_at_time
    raise CollectionsError("No backup chains found")
CollectionsError: No backup chains found

/ media / ubuntu / Toshiba \ HDD / BACKUPS / Documents / - это место, где находятся все файлы дубликатов, и / media / ubuntu / 9fb63c8e-ecb5-4c55-b4e0-282e7b4a82ff / tmp / docs / временная папка назначения, в которую я хочу восстановить файлы.

РЕДАКТИРОВАТЬ 2 Исправлена ​​недостающая косая черта в файле: // media .... Теперь я получаю восстановленные файлы, но не совсем то, что ожидала. Отсутствует много файлов (до 24 ГБ!)

root@ubuntu:/media/ubuntu/Toshiba HDD/BACKUPS/Documents# ls -la /tmp/docs/home/luis/
total 4176
drwx------ 16 root root    1000 Jun 30 19:13 .
drwx------  3 root root      60 Jun 30 19:13 ..
drwx------  3 1000 1000      60 Oct 23  2013 .activestate
drwxr-xr-x  2 1000 1000      60 Oct 23  2013 .ActiveState
drwx------  3 1000 1000      60 Dec 28  2012 .adobe
-rw-------  1 1000 1000   32120 Jan  4 12:56 .bash_history
-rw-r--r--  1 1000 1000     220 Dec 28  2012 .bash_logout
-rw-r--r--  1 1000 1000    3637 Dec 28  2012 .bashrc
drwx------  3 1000 1000      60 Jan  3 14:01 .cache
drwxr-xr-x  3 1000 1000      60 Nov 16  2013 .cddb
-rw-rw-r--  1 1000 1000     740 Jan 10  2013 .cola
drwx------  3 1000 1000      60 Dec 29  2012 .compiz
drwxrwxr-x  3 1000 1000      80 Oct  1  2013 .composer
drwx------ 46 1000 1000    1020 Dec  8  2013 .config
drwx------  3 1000 1000      60 Dec 28  2012 .dbus
-rw-r--r--  1 1000 1000      25 Jul 13  2013 .dmrc
drwx------  3 1000 1000     380 Jan  6 10:31 .dropbox
drwxr-xr-x  6 1000 1000    1660 Dec 17  2013 .dropbox-dist
drwx------  3 root root      60 Jun 30 19:13 .eclipse
-rw-------  1 1000 1000   50282 Jan  6 10:29 .ICEauthority
drwxrwxr-x 14 1000 1000     340 Dec  7  2013 .PlayOnLinux
-rw-r--r--  1 root root 2077491 Nov 23  2013 .Soulseek.1385165090491
-rw-r--r--  1 root root 2076644 Nov 23  2013 .Soulseek.1385166430938
-rw-r--r--  1 1000 1000    9986 Dec 30 20:02 .Soulseek.1388433748295
drwxrwxr-x  2 1000 1000      60 Oct 13  2013 .SyncWall
-rw-------  1 1000 1000     109 Jan  6 10:29 .Xauthority
-rw-rw-r--  1 1000 1000       0 Jul 29  2013 .Xauthority.25Y20W
-rw-rw-r--  1 1000 1000       0 Jul 13  2013 .Xauthority.7K14ZW
-rw-rw-r--  1 1000 1000       0 Jul  7  2013 .Xauthority.7K7SZW
-rw-rw-r--  1 1000 1000       0 Jul 13  2013 .Xauthority.9X1E0W
-rw-rw-r--  1 1000 1000       0 Sep  1  2013 .Xauthority.A3D52W
-rw-rw-r--  1 1000 1000       0 Sep  1  2013 .Xauthority.CEUV2W
-rw-rw-r--  1 1000 1000       0 Jul 27  2013 .Xauthority.CP7Q0W
-rw-rw-r--  1 1000 1000       0 Sep  8  2013 .Xauthority.E1ET2W
-rw-rw-r--  1 1000 1000       0 Aug 26  2013 .Xauthority.E32K2W
-rw-rw-r--  1 1000 1000       0 Sep 14  2013 .Xauthority.EKK92W
-rw-rw-r--  1 1000 1000       0 Jul 12  2013 .Xauthority.F4QRZW
-rw-rw-r--  1 1000 1000       0 Jul 25  2013 .Xauthority.ISVZ0W
-rw-rw-r--  1 1000 1000       0 Jul 11  2013 .Xauthority.JU3UZW
-rw-rw-r--  1 1000 1000       0 Aug 31  2013 .Xauthority.M30S2W
-rw-rw-r--  1 1000 1000       0 Aug  1  2013 .Xauthority.M3H20W
-rw-rw-r--  1 1000 1000       0 Sep  9  2013 .Xauthority.MKIN2W
-rw-rw-r--  1 1000 1000       0 Aug 28  2013 .Xauthority.RWHB2W
-rw-rw-r--  1 1000 1000       0 Jul 15  2013 .Xauthority.SN85ZW
-rw-rw-r--  1 1000 1000       0 Sep 15  2013 .Xauthority.T22C3W
-rw-rw-r--  1 1000 1000       0 Jul 14  2013 .Xauthority.T6CB0W
-rw-rw-r--  1 1000 1000       0 Jul 31  2013 .Xauthority.VF7Q0W
-rw-rw-r--  1 1000 1000       0 Sep  9  2013 .Xauthority.WGEX2W
-rw-rw-r--  1 1000 1000       0 Aug 31  2013 .Xauthority.WZR52W
-rw-rw-r--  1 1000 1000       0 Jul 25  2013 .Xauthority.YQIR0W

Самое странное, что помимо всех файлов, начинающихся с точки, я не могу просматривать каталоги home / luis с помощью Наутилус, где на самом деле были все мои резервные копии.

6
задан 30 June 2014 в 23:35

3 ответа

  1. Использование duplicity для извлечения его:

    duplicity restore file:///path_to_folder_contains_backups/ path_where_to_extract_it/
    
  2. Вводят пароль GnuPG, Нажатие Вводят

По умолчанию, восстановления Двуличности в последний раз резервное копирование (сравнение времени) в исходной папке даже не резервное копирование для той же папки. Если у Вас есть несколько резервных копий для различных папок, или Вы хотите определенное время той же папки, используете --time пример опции:

duplicity restore --time 20140106T111233Z file:///path_to_folder_contains_backups/ path_where_to_extract_it/

Неспособный видеть файлы Вы ищете, пробуете:

  1. Создают функцию, которые перечисляют все файлы, содержавшиеся во всех резервных копиях full/inc, доступных в исходной папке:

    ldup () {
        for f in $(ls $1/duplicity-*.manifest.gpg); do
            echo "========================================================================"; 
            echo $f;
            n=$(basename $f .manifest.gpg);
            prefix=$(echo $n | awk 'BEGIN { FS = "." } ;{ print $1 }');
            if [[ "$prefix" == "duplicity-full" ]]; then
                t=$(echo $n | awk 'BEGIN { FS = "." } ;{ print $2 }');
            else
                t=$(echo $n | awk 'BEGIN { FS = "." } ;{ print $4 }');
            fi;
            echo -e "Creation time:\t" $t;
            echo "------------------------------------------------------------------------";
            duplicity list-current-files --time $t file://$1/ | grep "$2";
        done;
    }
    
  2. Для списка всех файлов (отмечают без хвоста /):

    ldup /path_to_folder_contains_backups
    
  3. ищут шаблон в именах файлов:

    ldup /path_to_folder_contains_backups pattern
    

Ссылка: man duplicity

0
ответ дан 30 June 2014 в 23:35

Сначала попытайтесь восстановить с двуличностью.
duplicity --gio file:///media/backup /tmp/restore

Существуют некоторые обоснованно детализированные (и главным образом корректны) шаги здесь.

Ключевые детали

Ключевой пункт должен распаковать весь из duplicity-full.*.difftar.gz файлы в том же месте, так, чтобы с Вами оставили всего два snapshot/ и multivol_snapshot/ каталоги.

Если Ваш файл находится в snapshot/ затем Вы сделаны. Иначе найдите каталог в multivol_snapshot/ в пути, где Ваш файл раньше был: необходимо объединиться все файлы в этом каталоге для воссоздания исходного файла. Файлы пронумерованы и могут быть объединены с помощью cat команда. В зависимости от того, насколько большой оригинал был, может быть много частей.

Проблема с исходными инструкциями

Направления, связанные выше, предлагают использовать cat * > rescued-file. К сожалению, этот простой подход перестал работать, если у Вас есть больше чем 9 частей. С тех пор * расширяется в лексикографическом порядке, не числовом порядке, 10 был бы перечислен прежде 2, и файл был бы восстановлен в неправильном порядке.

Обходное решение

Один простой подход должен помнить, что лексикографический порядок действительно работает, когда числа являются той же длиной, и что ? соответствует отдельному символу. Таким образом, если Ваш самый большой файл имеет три цифры, можно вручную войти:

cat ? ?? ??? > rescued-file

Добавьте или удалите ? шаблоны по мере необходимости, в зависимости от самого большого номера документа.

Сценарий

Если у Вас есть много файлов, чтобы восстановить и сделать не необычный ввод, что для всех них, Вы могли бы предпочесть использовать сценарий, такой как это. Это перечисляет содержание каталога для каждого файла, удаляет дубликаты из списка, затем переходит к каждому каталогу и создает a content файл от фрагментов там. (spacer должен только сделать $1 работа.)

find multivol_snapshot/ -type f -printf '%h\0' | \
  sort -uz | \
  xargs -0 -n 1 sh -c 'cd "$1" ; cat $(ls | sort -n) > content' spacer

Теперь просто необходимо добавить /content в конец любого имени файла Вы искали, и необходимо найти его.

Ограничения

Это не восстанавливает ни одних из исходных полномочий файла или владения. Это также не имеет дело с возрастающими резервными копиями, но затем связанные инструкции также поражают что-то вроде тупика по этому вопросу — они просто предлагают использовать rdiff 'чтобы сшить файлы вместе' и отослать читателя к man rdiff.

источник: SF SE
здесь можно найти программу Java для легкого восстановления сложного резервного копирования.

6
ответ дан 30 June 2014 в 23:35

Дубликат DГ©jГ использование непрозрачный формат для файлов сохранен в Вашем местоположении резервирных копий. Необходимо использовать Дубликат DГ©jГ или другой основанный на двуличности инструмент для восстановления файлов (См. это руководство по восстановлению ).

0
ответ дан 30 June 2014 в 23:35

Другие вопросы по тегам:

Похожие вопросы: