<?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> può non funzionare. Potrebbe bloccarsi o restituire degli errori durante il tentativo di ripristino. Quando è indispensabile recuperare i dati contenuti nei backup, l'ultima cosa che si vorrebbe è trovarsi davanti a un bug. Considerare l'ipotesi di <link href="https://gitlab.gnome.org/World/deja-dup/-/issues/new">inviare una richiesta di aiuto</link>, ma nel frattempo ecco alcuni modi per aggirare i comportamenti anomali di <app>Déjà Dup</app> e riottenere i propri dati.</p>

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

<note><p>Queste istruzioni presuppongono che si abbia a disposizione una riga di comando. Aprire innanzitutto una finestra di <app>Terminale</app>.</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>
