Ripristino del backup fallito a causa dell'estensione del file .tar versus .tar.gz

Ciao, puoi per favore farmi sapere quale potrebbe essere il problema durante il ripristino del backup.
Il backup è stato creato il 2019-09-03

Qualsiasi consiglio sarebbe molto apprezzato :heart:

> root@discourse-beta-ubuntu-s-1vcpu-1gb-sgp1-01-app:/var/www/discourse# discourse restore entc-bme-forum-2019-09-03-194746-v20190603134013.tar.gz
> Starting restore: entc-bme-forum-2019-09-03-194746-v20190603134013.tar.gz
> [STARTED]
> 'system' ha avviato il ripristino!
> Segnalo il ripristino come in corso...
> Verifica che esista /var/www/discourse/tmp/restores/default/2020-03-28-174121...
> Copia dell'archivio nella directory tmp...
> Decompressione dell'archivio, questo potrebbe richiedere del tempo...
> ECCEZIONE: Il file esiste - /shared/tmp/restores/default/2020-03-28-174121/PaxHeader
> /usr/local/lib/ruby/2.6.0/fileutils.rb:525:in `block in mv'
> /usr/local/lib/ruby/2.6.0/fileutils.rb:1557:in `block in fu_each_src_dest'
> /usr/local/lib/ruby/2.6.0/fileutils.rb:1566:in `block in fu_each_src_dest0'
> /usr/local/lib/ruby/2.6.0/fileutils.rb:1564:in `each'
> /usr/local/lib/ruby/2.6.0/fileutils.rb:1564:in `fu_each_src_dest0'
> /usr/local/lib/ruby/2.6.0/fileutils.rb:1555:in `fu_each_src_dest'
> /usr/local/lib/ruby/2.6.0/fileutils.rb:520:in `mv'
> /var/www/discourse/lib/compression/strategy.rb:41:in `strip_directory'
> /var/www/discourse/lib/backup_restore/backup_file_handler.rb:70:in `decompress_archive'
> /var/www/discourse/lib/backup_restore/backup_file_handler.rb:22:in `decompress'
> /var/www/discourse/lib/backup_restore/restorer.rb:42:in `run'
> script/discourse:143:in `restore'
> /var/www/discourse/vendor/bundle/ruby/2.6.0/gems/thor-1.0.1/lib/thor/command.rb:27:in `run'
> /var/www/discourse/vendor/bundle/ruby/2.6.0/gems/thor-1.0.1/lib/thor/invocation.rb:127:in `invoke_command'
> /var/www/discourse/vendor/bundle/ruby/2.6.0/gems/thor-1.0.1/lib/thor.rb:392:in `dispatch'
> /var/www/discourse/vendor/bundle/ruby/2.6.0/gems/thor-1.0.1/lib/thor/base.rb:485:in `start'
> script/discourse:284:in `<top (required)>'
> /usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/cli/exec.rb:63:in `load'
> /usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/cli/exec.rb:63:in `kernel_load'
> /usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/cli/exec.rb:28:in `run'
> /usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/cli.rb:476:in `exec'
> /usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
> /usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
> /usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor.rb:399:in `dispatch'
> /usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/cli.rb:30:in `dispatch'
> /usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor/base.rb:476:in `start'
> /usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/cli.rb:24:in `start'
> /usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/exe/bundle:46:in `block in <top (required)>'
> /usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/friendly_errors.rb:123:in `with_friendly_errors'
> /usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/exe/bundle:34:in `<top (required)>'
> /usr/local/bin/bundle:23:in `load'
> /usr/local/bin/bundle:23:in `<main>'
> Tentativo di rollback...
> Non era necessario eseguire un rollback
> Pulizia dei file temporanei...
> Rimozione della directory tmp '/var/www/discourse/tmp/restores/default/2020-03-28-174121'...
> Ripresa di sidekiq...
> Segnalo il ripristino come completato...
> Notifica al 'system' della fine del ripristino...
> Completato!
> [FAILED]
> Ripristino terminato.

Inizialmente c’era un problema con l’archivio in formato .tar, ma l’ho ricompresso in .tar.gz

Perché hai dovuto apportare modifiche al file di backup creato da Discourse? Hai creato manualmente il file tar (su MacOS)? Ho visto segnalazioni in cui viene utilizzato un formato tar diverso, che causa problemi durante la decompressione.

Potrebbe essere necessario creare un nuovo file tar con l’opzione --format ustar o, ancora meglio, creare un nuovo backup direttamente in un contenitore Docker di Discourse.

Ho scaricato il backup dal mio Discourse ospitato mesi fa… quando l’ho trovato, aveva l’estensione .tar (non ho idea del perché - nei miei email vedevo .tar.gz)

Proverò il tuo suggerimento!
Grazie mille @gerhard!

Sto riscontrando lo stesso problema e ho provato questo. Il file viene caricato correttamente, ma il ripristino non trova il dump del database:

[2025-01-23 18:39:45] EXCEPTION: No such file or directory @ rb_check_realpath_internal - /var/www/discourse/tmp/restores/default/2025-01-23-183945/dump.sql.gz

Qualche suggerimento? Grazie

Ciao Martim,

Vedo il tuo nuovo argomento Locked out of my forum after restore, significa che sei riuscito a superare questo specifico problema con successo?

Lo fa! Mi dispiace, pensavo di aver cancellato il mio commento poiché sono riuscito a ripristinarlo poco dopo.