
¿Puede alguien ayudarme con esto? He estado usando deja-dup para hacer una copia de seguridad de mi máquina Ubuntu 14.04 por un tiempo. Tengo duplicity versión 0.6.23, deja-dup versión 30.0. No importa qué copia de seguridad seleccione, obtengo errores.
Cuando uso la interfaz de usuario deja-dup, simplemente aparece este error: "BackendException: Error listng s3+http
[Estoy poniendo un espacio aquí porque no me deja publicar un enlace] //mybucketname1/computer-XPS13-9333"
(a los efectos de la publicación, estoy anonimizando toda la información de identificación en los mensajes de error y los comandos)
Probé algunas variaciones a través de la línea de comando, usando duplicidad, pero no tengo suerte.
Este comando:
AWS_ACCESS_KEY_ID=XXXXXXXX AWS_SECRET_ACCESS_KEY=XXXXXXX duplicity restore s3+http
[Estoy poniendo un espacio aquí porque no me permite publicar un enlace] ://mybucketname1/computer-XPS13-9333 /media/standard/Seagate\ Backup\ Plus\ Drive/restore/
devuelve este error:
PermanentRedirect The bucket you are attempting to access must be addressed using the specified endpoint. Please send all future requests to this endpoint.</Message><Bucket>mybucketname1</Bucket><Endpoint>mybucketname1.s3.amazonaws.com</Endpoint><RequestId>XXXXXXXX</RequestId><HostId>Pwl/XXXXXXXXXXXXXXXXXXXXXXXX=</HostId></Error>
Luego lo probé con un punto final diferente y ejecuté esto:
AWS_ACCESS_KEY_ID=XXXXXXXXX AWS_SECRET_ACCESS_KEY=XXXXXXXXX duplicity restore s3+http
[I'm putting a space heere because it won't let me post a link]
://mybucketname1.s3.amazonaws.com/computer-XPS13-9333 /media/standard/Seagate\ Backup\ Plus\ Drive/restore/
<Error><Code>NoSuchBucket</Code><Message>The specified bucket does not exist</Message><BucketName>mybucketname1.s3.amazonaws.com</BucketName><RequestId>XXXXXXXXX</RequestId><HostId>XXXXXXXXXXXXXXX</HostId></Error>
Pensé que tal vez el punto final que me decía estaba equivocado, así que probé lo que encontré en el sitio S3 y ejecuté esto:
AWS_ACCESS_KEY_ID=XXXXXXXX AWS_SECRET_ACCESS_KEY=XXXXXXXXXXXXX duplicity restore s3+https
[I'm putting a space bere because it won't let me post a link]
://s3-us-west-2.amazonaws.com/mybucket1/computer-XPS13-9333 /media/standard/Seagate\ Backup\ Plus\ Drive/restore/
y obtuve este error:
UnsupportedBackendScheme: scheme not supported in url: s3
Pensé que esto podría ser un problema de http/https, así que probé el mismo comando que http y obtuve este error, pero estoy bastante seguro de que este punto final no es una URL real que debería usar:
PermanentRedirect
El depósito al que intenta acceder debe abordarse mediante el punto final especificado. Envíe todas las solicitudes futuras a este endpoint.s3-us-west-2.amazonaws.coms3-us-west-2.amazonaws.com.s3.amazonaws.comXXXXXXXXXXXXXXXXXXXXX
¿Alguien tiene alguna recomendación? Perdí una gran cantidad de datos y espero recuperarlos y comenzar a hacer una copia de seguridad usando Dropbox o algo así. Llevo un tiempo investigando este problema y aparentemente la duplicidad tiene todo tipo de problemas, pero todavía no he encontrado una solución a este.
Respuesta1
Descubrí esto y estoy respondiendo mis propias preguntas en beneficio de cualquier otra persona con problemas similares. Primero, descubrí que no puedo restaurar una copia de seguridad completa a la vez. Simplemente es demasiado grande y se agota el tiempo de espera. La estrategia que tuve que tomar fue hacer subdirectorios a la vez. Además, cuando intenté enumerar los archivos actuales, no devolvió nada. Aunque los archivos de respaldo eran enormes, decía que no tenía archivos para restaurar. Descubrí que si usaba la -t
bandera, funcionaría. Esto probablemente significa que mi última copia de seguridad estaba dañada, pero al mirar hacia atrás en el tiempo (6 meses en mi caso), pude encontrar algunos archivos para restaurar. Primero tenía que obtener esa lista de archivos, para saber qué archivos restaurar:
AWS_ACCESS_KEY_ID=xxxxxxxxxxxxxxx AWS_SECRET_ACCESS_KEY=xxxxxxxxxxxxxxxx PASSPHRASE=xxxxxxxxx duplicity list-current-files --timeout=2400 --tempdir /path/path/path/ --num-retries=500 -t 6M s3://s3-us-west-2.amazonaws.com/mybucketname1/computer-name | tee -a restore_file_list-6M.txt
Esto le proporciona un archivo restore_file_list-6M.txt
que deberá utilizar para encontrar qué archivos hay en su copia de seguridad.
También notarás que, a pesar de lo que dice la documentación, el s3+http://
error es incorrecto, en su lugar lo deseas s3://
.
Una vez que obtuve la lista de archivos en la copia de seguridad restore_file_list-6M.txt
, pude restaurarlos un directorio a la vez usando este comando:
AWS_ACCESS_KEY_ID=XXXXXXXXXXX AWS_SECRET_ACCESS_KEY=XXXXXXXXXXXXX PASSPHRASE=XXXXXXXXXXXX duplicity restore --timeout=2400 --tempdir /path/path/path/ --allow-source-mismatch --file-to-restore source/in/backup --num-retries=500 -t 6M s3://s3-us-west-2.amazonaws.com/mybucketname1/computer-name /place/I/want/to/restore/to/
No sé si el indicador --timeout tenía alguna función, pero --num-retries es definitivamente importante, porque se agota aproximadamente una vez por archivo y, a veces, se agota más de cien veces antes de descargar exitosamente un archivo.
Ahora, he terminado para siempre con la duplicidad.