<?xml version="1.0" encoding="utf-8"?>
<!--
SPDX-License-Identifier: CC-BY-SA-4.0
SPDX-FileCopyrightText: Michael Terry
-->
<page xmlns="http://projectmallard.org/1.0/" xmlns:its="http://www.w3.org/2005/11/its" its:version="2.0" type="topic" style="task" id="restore-worst-case" xml:lang="it">
<info>
  <desc>Cosa fare se non è possibile ripristinare i file</desc>
  <link type="guide" xref="index#restore"/>
  <credit type="author" its:translate="no">
    <name>Michael Terry</name>
  </credit>
  <license href="http://creativecommons.org/licenses/by-sa/4.0/"><p>Licenza Creative Commons Attribuzione - Condividi allo stesso modo 4.0 Internazionale</p></license>

    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Calogero Bonasia</mal:name>
      <mal:email>https://launchpad.net/~0disse0</mal:email>
      <mal:years/>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Claudio Arseni</mal:name>
      <mal:email>https://launchpad.net/~claudio.arseni</mal:email>
      <mal:years/>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Francesco</mal:name>
      <mal:email>https://launchpad.net/~ceskobassman</mal:email>
      <mal:years/>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Francesco</mal:name>
      <mal:email>https://launchpad.net/~fcapano</mal:email>
      <mal:years/>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Gianmarco Brocchi</mal:name>
      <mal:email>https://launchpad.net/~gimmy</mal:email>
      <mal:years/>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Ivan Guido Martucci</mal:name>
      <mal:email>https://launchpad.net/~kymya</mal:email>
      <mal:years/>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>LoReNicolò</mal:name>
      <mal:email>https://launchpad.net/~god121-p-l</mal:email>
      <mal:years/>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Marco Ciampa</mal:name>
      <mal:email>https://launchpad.net/~ciampix</mal:email>
      <mal:years/>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>albano</mal:name>
      <mal:email>https://launchpad.net/~albano-battistella</mal:email>
      <mal:years/>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>enubuntu</mal:name>
      <mal:email>https://launchpad.net/~mr.tennents</mal:email>
      <mal:years/>
    </mal:credit>
  </info>

<title>Quando tutti i tentativi falliscono</title>

<p><app>Déjà Dup</app> may fail.  Maybe it crashes or gives you an error when you try to restore.  When you really need your data back, the last thing you want do deal with is a bug.  Consider filing a <link href="https://gitlab.gnome.org/World/deja-dup/-/work_items/new">help request</link> but in the meantime, here are some approaches to workaround a misbehaving <app>Déjà Dup</app> and get your data back.</p>

<note><p>Questa è una parte molto tecnica. Se qualcosa sembra senza senso, è possibile <link xref="support">chiedere aiuto</link>.</p></note>

<note><p>These instructions assume you have a command line available. Open a <app>Terminal</app> window first.</p></note>

<section id="which-backend">
<title>Restic o Duplicity?</title>

<p>Nel tempo, <app>Déjà Dup</app> ha utilizzato diversi strumenti di backup. In origine, usava <app>Duplicity</app>. Oggigiorno, utilizza <app>Restic</app>.</p>
<p>Il proprio backup potrebbe essere in uno dei due formati, a seconda di quando è stato creato.</p>
<p>Controllare nella cartella in cui è conservato il backup:</p>
<list>
  <item><p>Se tutti i nomi dei file iniziano con <cmd its:translate="no">duplicity-</cmd>, allora si tratta di un backup di <app>Duplicity</app>. Leggere le sezioni dedicate a <app>Duplicity</app> di seguito.</p></item>
  <item><p>Se si visualizza un file <cmd its:translate="no">config</cmd> e alcune cartelle come <cmd its:translate="no">keys</cmd>, allora si tratta di un backup di <app>Restic</app>. Leggere le sezioni dedicate a <app>Restic</app> di seguito.</p></item>
</list>
</section>

<section id="restic">
<title>Ripristino con Restic</title>

<p>Partendo dal presupposto che <app>Déjà Dup</app> non stia funzionando correttamente, utilizzeremo lo strumento a riga di comando <app>Restic</app> che viene usato da <app>Déjà Dup</app> per eseguire il backup e il ripristino dei dati.</p>

<note style="advanced"><p>Per maggiori informazioni su <app>Restic</app> non presenti in questa guida, eseguire <cmd its:translate="no">restic --help</cmd>.</p></note>

<p>La prima cosa che si tenterà di fare sarà di ripristinare tutti i dati. Presupponendo che i file siano su un dispositivo esterno montato come <file its:translate="no">/media/backup</file> e si sia scelto di cifrare il backup, provare:</p>
<screen its:translate="no">restic restore --repo=/media/backup --target=/tmp/restore latest</screen>

<p>Se il backup non è stato cifrato, aggiungere <cmd its:translate="no">--insecure-no-password</cmd> al comando.</p>

<p>Se è necessario eseguire un debug più avanzato, leggere la loro <link href="https://restic.readthedocs.io/en/stable/077_troubleshooting.html">guida alla risoluzione dei problemi</link>.</p>
</section>

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

<p>Partendo dal presupposto che <app>Déjà Dup</app> non stia funzionando correttamente, utilizzeremo lo strumento a riga di comando <app>duplicity</app> che viene usato da <app>Déjà Dup</app> per eseguire il backup e il ripristino dei dati.</p>

<note style="advanced"><p>Per maggiori informazioni su <app>Duplicity</app> non presenti in questa guida, leggere <link href="http://duplicity.gitlab.io/docs.html">la sua documentazione online</link>.</p></note>

<p>La prima cosa che si tenterà di fare sarà di ripristinare tutti i dati. Presupponendo che i file siano su un dispositivo esterno montato come <file its:translate="no">/media/backup</file> e si sia scelto di cifrare il backup, provare:</p>
<screen its:translate="no">duplicity restore file:///media/backup /tmp/restore</screen>

<p>Se il backup non è stato cifrato, aggiungere <cmd its:translate="no">--no-encryption</cmd> al comando.</p>

<section id="duplicity-locations">
<title>Altre posizioni di archiviazione</title>
<p>Se è stato eseguito un backup su un server remoto o cloud, la sintassi da utilizzare con <app>Duplicity</app> sarà diversa dall'esempio del disco esterno riportato sopra.</p>
<p>Leggere la documentazione di <app>Duplicity</app> per istruzioni su come connettersi al proprio server, oppure provare a scaricare tutti i file di <app>Duplicity</app> in una cartella locale e seguire l'esempio più semplice riportato sopra.</p>
</section>

<section id="duplicity-by-hand">
<title>Ripristino manuale dei file di Duplicity</title>

<p>Se anche <app>duplicity</app> non sta funzionando correttamente, potrebbe esserci poca speranza. Il formato del file di backup è complesso e non è semplice manipolarlo. Ma se non si può fare a meno di recuperare i dati, vale la pena provare.</p>

<p>Se si utilizza un server remoto o cloud per archiviare i backup, prima di tutto scaricare tutti i file <app>duplicity</app> e posizionarli in una cartella sul proprio computer. Quindi accedere alla cartella utilizzando un terminale.</p>

<p><app>Duplicity</app> archivia i dati in piccole parti chiamate volumi. Alcuni volumi fanno parte di backup completi o del primo backup eseguito, altri fanno parte dei backup incrementali. Partendo dal primo dei volumi di un backup completo, sarà necessario ripristinare i file un volume per volta.</p>

<p>Se si hanno backup cifrati, prima si deve decifrare il volume con <cmd its:translate="no">gpg</cmd>. Supponiamo sia presente <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>Oppure tutti contemporaneamente (assicurarsi di avere abbastanza spazio):</p>
<screen its:translate="no">gpg --multifile --decrypt duplicity-full.20110127T131352Z.*.difftar.gpg</screen>

<p>Ora si ha o un volume <file its:translate="no">.difftar</file> o un volume <file its:translate="no">.difftar.gz</file> (a seconda che fosse da decifrare o meno). Usare <cmd its:translate="no">tar</cmd> su ognuno dei file per estrarre il singolo file patch:</p>
<screen its:translate="no">tar xf duplicity-full.20110127T131352Z.vol1.difftar</screen>

<p>O ancora, tutti contemporaneamente:</p>
<screen its:translate="no">for t in duplicity-full.20110127T131352Z.*.difftar; do tar xf $t; done</screen>

<p>Ora i file patch saranno nelle cartelle <file its:translate="no">multivolume_snapshot</file> e <file its:translate="no">snapshot</file>. Ogni file che era diviso in più volumi sarà ora in <file its:translate="no">multivolume_snapshot</file>. Supponendo che sia stato eseguito il backup di <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>Per ripristinare i dati dai backup incrementali, usare <cmd its:translate="no">rdiff</cmd> per unire i file insieme. Consultare <cmd its:translate="no">man rdiff</cmd> per l'utilizzo.</p>

</section>
</section>

</page>
