zwen_zwenson
Anmeldungsdatum: 30. Dezember 2008
Beiträge: 17
|
Hallo! Ich hab ein riesen Problem. Eine meiner Festplatten ist beschädigt und ich habe die Daten darauf verloren. Zum Glück hab ich ich mit Deja-Dup wöchentlich BackUps auf einer anderen Festplatte erstellt, allerdings verschlüsselt. Ich schaffe es allerdings nicht die Backups auch wieder herzustellen.
Deja-Dup fragt immer wieder nach dem Passwort obwohl ich mir sehr sicher bin das richtige ein zutippen. Wenn ich im duplicity versuch das Backup manuell herzustellen kommt es zu folgendem Fehler: 1
2
3
4
5
6
7
8
9
10
11
12
13 | Synchronizing remote metadata to local cache...
GnuPG passphrase:
Copying duplicity-full-signatures.20140421T110409Z.sigtar.gpg to local cache.
GPGError: GPG Failed, see log below:
===== Begin GnuPG log =====
gpg: CAST5 encrypted data
gpg: encrypted with 1 passphrase
gpg: packet(5) with unknown version 52
gpg: [don't know]: invalid packet (ctb=54)
gpg: mdc_packet with invalid encoding
gpg: decryption failed: invalid packet
gpg: [don't know]: invalid packet (ctb=71)
===== End GnuPG log =====
|
Google hat mir auf die schnelle nicht weiter geholfen aus dass es vielleicht ein Problem mit gpg ist. Hat irgendjemand eine Idee wie man da was retten kann? Ich bin wirklich sehr verzweifelt die Daten waren sehr wichtig ☹ Moderiert von Cruiz: Dieses Thema ist verschoben worden. Bitte beachte die als wichtig markierten Themen („Welche Themen gehören hier her und welche nicht?“)!
|
Benno-007
Anmeldungsdatum: 28. August 2007
Beiträge: 29240
Wohnort: Germany
|
gpg: packet(5) with unknown version 52
Eventuell "falsche" GPG-/ Ubuntu-Version? → alte per Live-CD testen? Ansonsten Backups natürlich auch mal öffnen und auf Lesbarkeit prüfen...
|
zwen_zwenson
(Themenstarter)
Anmeldungsdatum: 30. Dezember 2008
Beiträge: 17
|
Eigentlich wurde das Backup mit der gleichen Ubuntu-Version erstellt. Ich hangel mich gerade mit dieser Anleitung durch http://sashikasuren.blogspot.de/2013/01/duplicity-backup-restore-process.html Allerdings hab ich knapp 100GB also das dauert das Ganze recht lang ...
|
zwen_zwenson
(Themenstarter)
Anmeldungsdatum: 30. Dezember 2008
Beiträge: 17
|
So ich habe meine Daten wieder aber war doch eine ganze Menge arbeit. Warum Deja Dup das nicht selber hinbekommt bleibt mir aber ein Rätsel. Kurzes Anleitung: Zuerst die verschlüsselten Daten entschlüsseln mit | gpg --multifile --decrypt duplicity-*.*.*.difftar.gpg
|
und dann die Archive entpacken und die Daten wieder zusammenfügen z.B. mit dem Python Skript hier 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48 | #!/usr/bin/env python
import os
FROM = '/home/user/von_hier'
TO_TMP = '/home/user/nach_hier'
TO_MULTI = TO_TMP + '/multivol_snapshot'
TO_SNAP = TO_TMP + '/snapshot'
def do(stuff):
print stuff
os.system(stuff)
def m2s(path):
assert path.startswith(TO_MULTI), 'It must be a multivol path'
tmp = path.replace(TO_MULTI, TO_SNAP, 1)
if tmp.endswith('/'):
tmp = tmp[:-1]
return tmp
def main():
# restore broken dejadup / duplicity fullbackup without manifest
# Step One
# untar
# os.chdir(TO_TMP)
# do("for t in \"" + FROM + "/\"*.difftar; do echo $t; "
# "tar xvfi \"$t\"; done;")
# Step Two
# join multipart files
for (path, dirs, files) in os.walk(TO_MULTI):
print path
if len(dirs) == 0:
# add leading zeros for more than 10 parts
for f in files:
os.rename(os.path.join(path, f),os.path.join(path, str(f).zfill(10)))
# we need to combine all these elements
do("cat \"" + path + "\"/* > \"" + m2s(path) + "\"")
#do("rm *")
else:
do("mkdir -p \"" + m2s(path) + "\"")
if __name__ == '__main__':
main()
|
Das Ganze dauert dann aber schon mal länger als 10h bei 100GB.
|
Passphrase
Anmeldungsdatum: 26. August 2014
Beiträge: 2
|
Hallo zwen zwenson, habe dieses Script ausprobiert - PERFEKT. THX dafür! Deja Dup hatte mich auch verlassen, eine Wiederherstellung via GUI war nicht mehr möglich. Dank dem Script werden die Daten im Moment wieder hergestellt - Coole Sache! Deja Dup wird in Zukunft kein Backup von meinen Daten erstellen - es hat sich "aus-deja-dupt". 😉 Nochmals Danke an ALLE hier, für Eure wertvollen Vorschläge. Gruß
Passphrase
|
Benno-007
Anmeldungsdatum: 28. August 2007
Beiträge: 29240
Wohnort: Germany
|
Danke für euer beider Feedback und Engagement zur Problembehebung. Ich hab direkt einen Wikiabschnitt daraus gemacht: Déjà_Dup#Passwortfehler-beim-Wiederherstellen. Schaut bitte nochmal drüber, ob das so vollständig und in Ordnung ist. Grüße, Benno
|
Passphrase
Anmeldungsdatum: 26. August 2014
Beiträge: 2
|
Hallo Benno, vielleicht sollte ich noch anmerken, daß die Archiv-Dateien immer wiederhergestellt werden können,
egal was Deja-Dup für ein Problem hat - es sei denn, das Archiv hat selbst ein Problem. Lösungen sind hier beschrieben: https://wiki.gnome.org/DejaDup/Help/Restore/WorstCase Restoring by Hand: https://wiki.gnome.org/Apps/DejaDup/Help/Restore/WorstCase Das Archiv bzw. Sicherungs-Archiv kann von "Hand" entschlüsselt und entpackt werden -
das Script selbst - was "zwen zwenson" gepostet hat, kann auch entpacken,
dazu die Zeilen 28 | 29 | 30 auskommentieren, dann übernimmt das Script das Auspacken. Also: 1. entschlüsseln – (Siehe zwen zwenson) | gpg --multifile --decrypt duplicity-full.*.*.difftar.gpg
|
2. Script anpassen – (Path und Zeile 28-30) | FROM = '/home/user/von_hier'
TO_TMP = '/home/user/nach_hier'
|
- autom. entpacken
| 28 # os.chdir(TO_TMP)
29 # do("for t in \"" + FROM + "/\"*.difftar; do echo $t; "
30 # "tar xvfi \"$t\"; done;")
|
3. Script ausführen Oder Manuell: - entschlüsseln
| gpg --multifile --decrypt duplicity-full.*.*.difftar.gpg
|
- entpacken | for t in duplicity-full.*.*.difftar; do tar xf $t; done
|
2. Script anpassen – (Path) 3. Script ausführen (Siehe zwen zwenson) - fertig - Alle Daten sind wieder da! Damit sollte auch für "Linux-Einsteiger" alles beantwortet sein. Good luck!
|
Benno-007
Anmeldungsdatum: 28. August 2007
Beiträge: 29240
Wohnort: Germany
|
Danke für die ausführlichen Infos zum Nachlesen für alle, die dem Link folgen!
|
Xwarman
Anmeldungsdatum: 15. Juni 2007
Beiträge: Zähle...
Wohnort: Rostock
|
Hallo.
Ich bin unglaublich frustriert von Deja Dup. Wie auch immer.
Aktuell hab ich das Problem, dass, wenn ich das Skript ausführe, sich mein Mauszeiger in ein Kreuz verwandelt. Wirkt, als ob ich damit ein Fenster aufziehen könnte. Wenn ich irgedwas in der Richtung mache kommen folgende Fehler in der Konsole:
| user@PC:~/Downloads$ sh recover.sh
recover.sh: 4: recover.sh: FROM: not found
recover.sh: 6: recover.sh: TO_TMP: not found
recover.sh: 8: recover.sh: TO_MULTI: not found
recover.sh: 9: recover.sh: TO_SNAP: not found
recover.sh: 12: recover.sh: Syntax error: "(" unexpected
|
Das Skript selbst sieht so aus: 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47 | #!/usr/bin/env python
import os
FROM = '/media/user/DATENSICHERUNG/DejaDup'
TO_TMP = '/home/user/'
TO_MULTI = TO_TMP + '/multivol_snapshot'
TO_SNAP = TO_TMP + '/snapshot'
def do(stuff):
print stuff
os.system(stuff)
def m2s(path):
assert path.startswith(TO_MULTI), 'It must be a multivol path'
tmp = path.replace(TO_MULTI, TO_SNAP, 1)
if tmp.endswith('/'):
tmp = tmp[:-1]
return tmp
def main():
# restore broken dejadup / duplicity fullbackup without manifest
# Step One
# untar
os.chdir(TO_TMP)
do("for t in \"" + FROM + "/\"*.difftar; do echo $t; "
"tar xvfi \"$t\"; done;")
# Step Two
# join multipart files
for (path, dirs, files) in os.walk(TO_MULTI):
print path
if len(dirs) == 0:
# add leading zeros for more than 10 parts
for f in files:
os.rename(os.path.join(path, f),os.path.join(path, str(f).zfill(10)))
# we need to combine all these elements
do("cat \"" + path + "\"/* > \"" + m2s(path) + "\"")
#do("rm *")
else:
do("mkdir -p \"" + m2s(path) + "\"")
if __name__ == '__main__':
main()
|
Wo liegt mein Fehler? Vielen Dank!
|
Matthias-K
Anmeldungsdatum: 27. November 2009
Beiträge: 55
Wohnort: Herne
|
Hallo Xwarman,
dein Fehler liegt vermutlich darin, dass du versuchst, das Skript mit bash auszuführen statt mit python. In der ersten Zeile des Codes findest du den Hinweis: "#!/usr/bin/env python". Benenne das Skript also mit der Dateiendung ".py" und starte es mit Hilfe von Pyhton: | mv recover.sh
python recover.py
|
Python (Version 2.7) sollte natürlich installiert sein. Sollte das nicht klappt, dann mal mit python3 versuchen.
|
Bruder_Tack
Anmeldungsdatum: 15. Januar 2007
Beiträge: 64
Wohnort: Nieheim
|
Guten Morgen,
ich stehe auch vor dem Problem, meine verschluesselte Sicherung wieder herstellen zu muessen. Danke fuer diese Anleitung! Ich scheitere allerdings schon beim Entschluesseln: | ubuntu@ubuntu:/media/ubuntu/HITACHI/Datensicherung$ sudo gpg --multifile --decrypt duplicity-*.*.*.difftar.gpg
sudo: unable to execute /usr/bin/gpg: Argument list too long
Hangup
|
Wo liegt mein Fehler?
|
DNNM
Anmeldungsdatum: 18. November 2008
Beiträge: 20
|
Hallo Bruder_Tack Also ich würde sagen dass die Dateien zu groß sind und desshalb das ganze nichtmehr zusammen gebaut werden kann, ich denke wenn es mehr als 100 oder 1000 einzeldateien sind wird es dem Script zu viel ... Hatte das auch bei einigen größeren Video-Dateien. Bei den meisten Dokumenten und Bildern hat die Datenrettung funktioniert ...
|
Benno-007
Anmeldungsdatum: 28. August 2007
Beiträge: 29240
Wohnort: Germany
|
Die Fehlermeldung kommt offenbar nicht von der bash oder gpg, sondern von sudo. Also probiere es doch mal ohne sudo. Dazu musst du zuvor die Benutzer und Gruppen des Ordners ändern (auf deinen Benutzer statt root, rekursiv auf den ganzen betroffenen Sicherungsordner ausführen lassen).
|
FreiBert
Anmeldungsdatum: 1. Juli 2020
Beiträge: 1
|
Hallo, bei mir hatte nur ein teilweises WIederherstellen der Daten in "snapshot" geklappt, habe allerdings nicht das lange Skript von unten verwendet, sondern "for t in duplicity-*.*.*.difftar; do tar xf $t; done"
Jetzt sind eben noch die meisten Dateien in "multivol_snapshot". Man kann einzelne Dateien (sofern diese unter 10 Teilen bestehen im Ordner) wiederzusammenstückeln mit CAT, aber wie geht das mit abertausenden Dateien? Kann mir da jemand bitte helfen? Falls möglich würde ich es gerne vermeiden, alles neu von vorne wiederherzustellen, das hat bei mir neulich fast zwei Tage am Stück gedauert...Grüße bert
|