<?xml version="1.0" encoding="utf-8"?>
<page xmlns="http://projectmallard.org/1.0/" xmlns:its="http://www.w3.org/2005/11/its" its:version="1.0" type="topic" id="restore-worst-case" xml:lang="es">
<info>
  <desc>Qué hacer si no puede restaurar sus archivos</desc>
  <link type="guide" xref="index#restore"/>
</info>

<title>Cuando todo va mal</title>

<p><app>Déjà Dup</app> puede fallar. Quizás se cuelgue o le de un error al tratar de restaurar. Cuando en verdad necesite restaurar sus archivos, lo último que necesita es un error. Considere informar de <link href="https://launchpad.net/deja-dup/+filebug">un error</link> pero mientras tanto, aquí tiene algunos medios para solucionar un mal comportamiento de <app>Déjà Dup</app> y recuperar sus archivos.</p>

<note><p>Lo que sigue podría ser de nivel técnico. Si no lo entiende, no dude en <link xref="support">pedir ayuda</link>.</p></note>

<steps>
  <item><p>Abra una ventana de <app>terminal</app> pulsando <keyseq><key>Ctrl</key><key>Alt</key><key>T</key></keyseq>.</p></item>
  <item><p>Create the directory in which you will place your restored files.  This guide will use <file its:translate="no">/tmp/restore</file>:</p>
<screen its:translate="no">mkdir -p /tmp/restore</screen></item>
</steps>

<section id="duplicity">
<title>Restaurar con Duplicity</title>

<p>Asumiendo que  <app>Déjà Dup</app> no está funcionando en este momento, usará la herramienta por línea de órdenes <app>duplicity</app> que es usada por <app>Déjà Dup</app> internamente para respaldar y restaurar sus datos.</p>

<note style="advanced"><p>Si quiere más información sobre <app>duplicity</app> que la que hay aquí, ejecute <cmd>man duplicity</cmd>.</p></note>

<p>The first thing we’ll try is a simple restore of all your data.  Assuming your files are on an external drive mounted as <file its:translate="no">/media/backup</file> and you chose to encrypt the backup, try this:</p>
<screen its:translate="no">duplicity --gio file:///media/backup /tmp/restore</screen>

<p>If you didn’t encrypt the backup, add <cmd its:translate="no">--no-encryption</cmd> to the command.</p>

<section id="locations">
<title>Otras ubicaciones de la copia de seguridad</title>
<p>Si respaldó sus datos en un servidor remoto o un servidor en la nube, la sintaxis que debe usar con <app>duplicity</app> será diferente a la del ejemplo anterior del disco duro externo. Mire debajo para ver cómo conectarse a la ubicación de respaldo que ha elegido.</p>
<note><p>Remember to add <cmd its:translate="no">--no-encryption</cmd> to any example commands if your backup is not encrypted.</p></note>
<p>Si <app>duplicity</app> tiene problemas para conectarse a su servidor, pruebe a descargar todos los archivos de <app>duplicity</app> manualmente a una carpeta local y siga el ejemplo que se detalla arriba.</p>
<terms>
  <item>
    <title>Amazon S3</title>
    <p>Busque su ID de acceso y clave secreta de Amazon S3 y reemplace <var>ID</var> y <var>SECRET</var> en el siguiente ejemplo con los valores correspondientes.</p>
    <p>Es posible que haya especificado una carpeta donde colocar los archivos de copia de seguridad. En el ejemplo siguiente, reemplace <var>FOLDER</var> con esa ruta.</p>
    <screen its:translate="no">
export AWS_ACCESS_KEY_ID=<var its:translate="yes">ID</var>
export AWS_SECRET_ACCESS_KEY=<var its:translate="yes">SECRET</var>
duplicity s3+http://deja-dup-auto-<var its:translate="yes">LOWERCASE_ID</var>/<var its:translate="yes">FOLDER</var> /tmp/restore</screen>
  </item>
  <item>
    <title>Archivos en la nube de Rackspace</title>
    <p>Busque su nombre de usuario y clave API de Rackspace y cambie los valores de <var>USERNAME</var> y <var>KEY</var> en el ejemplo de abajo con sus respectivos valores.</p>
    <p>Es posible que haya especificado un contenedor en el que colocar los archivos de copia de seguridad. En el siguiente ejemplo, reemplace <var>CONTAINER</var> con ese nombre.</p>
    <screen its:translate="no">
export CLOUDFILES_USERNAME=<var its:translate="yes">USERNAME</var>
export CLOUDFILES_APIKEY=<var its:translate="yes">KEY</var>
duplicity cf+http://<var its:translate="yes">CONTAINER</var> /tmp/restore</screen>
  </item>
  <item>
    <title>FTP</title>
    <p>Busque la dirección de su servidor, puerto, usuario y contraseña y reemplace <var>SERVER</var>, <var>PORT</var>, <var>USERNAME</var> y <var>PASSWORD</var> en el siguiente ejemplo con los valores correspondientes.</p>
    <p>Es posible que haya especificado una carpeta donde colocar los archivos de copia de seguridad. En el ejemplo siguiente, reemplace <var>FOLDER</var> con esa ruta.</p>
    <p>If you chose to not log in with a username, use <var its:translate="no">anonymous</var> as your <var>USERNAME</var> below.</p>
    <screen its:translate="no">
gvfs-mount ftp://<var its:translate="yes">USERNAME</var>@<var its:translate="yes">SERVER</var>:<var its:translate="yes">PORT</var>/<var its:translate="yes">FOLDER</var>
duplicity --gio ftp://<var its:translate="yes">USERNAME</var>@<var its:translate="yes">SERVER</var>:<var its:translate="yes">PORT</var>/<var its:translate="yes">FOLDER</var> /tmp/restore</screen>
  </item>
  <item>
    <title>SSH</title>
    <p>Busque la dirección de su servidor, puerto, usuario y contraseña y reemplace <var>SERVER</var>, <var>PORT</var>, <var>USERNAME</var> y <var>PASSWORD</var> en el siguiente ejemplo con los valores correspondientes.</p>
    <p>Es posible que haya especificado una carpeta donde colocar los archivos de copia de seguridad. En el ejemplo siguiente, reemplace <var>FOLDER</var> con esa ruta.</p>
    <screen its:translate="no">
gvfs-mount ssh://<var its:translate="yes">USERNAME</var>@<var its:translate="yes">SERVER</var>:<var its:translate="yes">PORT</var>/<var its:translate="yes">FOLDER</var>
duplicity --gio ssh://<var its:translate="yes">USERNAME</var>@<var its:translate="yes">SERVER</var>:<var its:translate="yes">PORT</var>/<var its:translate="yes">FOLDER</var> /tmp/restore</screen>
  </item>
  <item>
    <title>WebDAV</title>
    <p>Busque la dirección de su servidor, puerto, usuario y contraseña y reemplace <var>SERVER</var>, <var>PORT</var>, <var>USERNAME</var> y <var>PASSWORD</var> en el siguiente ejemplo con los valores correspondientes.</p>
    <p>Es posible que haya especificado una carpeta donde colocar los archivos de copia de seguridad. En el ejemplo siguiente, reemplace <var>FOLDER</var> con esa ruta.</p>
    <p>If you chose to use a secure connection (HTTPS) when backing up, use <var its:translate="no">davs://</var> instead of <var its:translate="no">dav://</var> in the example below.</p>
    <screen its:translate="no">
gvfs-mount dav://<var its:translate="yes">USERNAME</var>@<var its:translate="yes">SERVER</var>:<var its:translate="yes">PORT</var>/<var its:translate="yes">FOLDER</var>
duplicity --gio dav://<var its:translate="yes">USERNAME</var>@<var its:translate="yes">SERVER</var>:<var its:translate="yes">PORT</var>/<var its:translate="yes">FOLDER</var> /tmp/restore</screen>
  </item>
  <item>
    <title>Compartido por Windows</title>
    <p>Busque la dirección de su servidor, puerto, usuario y contraseña y reemplace <var>SERVER</var>, <var>PORT</var>, <var>USERNAME</var> y <var>PASSWORD</var> en el siguiente ejemplo con los valores correspondientes.</p>
    <p>Es posible que haya especificado una carpeta donde colocar los archivos de copia de seguridad. En el ejemplo siguiente, reemplace <var>FOLDER</var> con esa ruta.</p>
    <p>Si especificó un dominio para su servidor de Windows, añádalo al principio de <var>USERNAME</var> con un punto y coma entre ellos. Por ejemplo, <var>domain;username</var>.</p>
    <screen its:translate="no">
gvfs-mount smb://<var its:translate="yes">USERNAME</var>@<var its:translate="yes">SERVER</var>/<var its:translate="yes">FOLDER</var>
duplicity --gio smb://<var its:translate="yes">USERNAME</var>@<var its:translate="yes">SERVER</var>/<var its:translate="yes">FOLDER</var> /tmp/restore</screen>
  </item>
</terms>
</section>

</section>

<section id="by-hand">
<title>Restaurar a mano</title>

<p>Si ni siquiera <app>duplicity</app> funciona, quedan pocas esperanzas. El formato de la copia de seguridad es complicado y difícilmente manipulable. Pero si está desesperado, merece la pena intentarlo.</p>

<p>Si usó un servidor remoto o un servidor en la nube para guardar su copia de seguridad, primero descargue todos los archivos de <app>duplicity</app> a una carpeta de su equipo. Luego entre en dicha carpeta a través de su terminal.</p>

<p><app>Duplicity</app> 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.</p>

<p>If you encrypted your backup, first you must decrypt the volume with <cmd its:translate="no">gpg</cmd>.  Say you have <file its:translate="no">duplicity-full.20110127T131352Z.vol1.difftar.gpg</file>:</p>
<screen its:translate="no">gpg --output duplicity-full.20110127T131352Z.vol1.difftar --decrypt duplicity-full.20110127T131352Z.vol1.difftar.gpg</screen>

<p>O haga todo a la vez (asegúrese de contar con el espacio en disco suficiente):</p>
<screen its:translate="no">gpg --multifile --decrypt duplicity-full.20110127T131352Z.*.difftar.gpg</screen>

<p>Now you have either a <file its:translate="no">.difftar</file> or a <file its:translate="no">.difftar.gz</file> volume (depending on whether you had to decrypt it or not).  Use <cmd its:translate="no">tar</cmd> on whichever one you have to extract the individual patch files:</p>
<screen its:translate="no">tar xf duplicity-full.20110127T131352Z.vol1.difftar</screen>

<p>O de nuevo, para hacerlo todo a la vez:</p>
<screen its:translate="no">for t in duplicity-full.20110127T131352Z.*.difftar; do tar xf $t; done</screen>

<p>Now the patch files will be in <file its:translate="no">multivolume_snapshot</file> and <file its:translate="no">snapshot</file> folders.  Each file that spanned multiple volumes will be in <file its:translate="no">multivolume_snapshot</file>. Let’s say you backed up <file its:translate="no">/home/jane/essay.txt</file>:</p>
<screen its:translate="no">cd multivolume_snapshot/home/jane/essay.txt
cat * &gt; essay.txt</screen>

<p>To recover data from incremental backups, use <cmd its:translate="no">rdiff</cmd> to stitch the files together. See <cmd its:translate="no">man rdiff</cmd> for usage.</p>

</section>

</page>
