Come salvare e ripristinare un sito Joomla con JoomlaPack

In un precedente articolo abbiamo spiegato quali sono le opzioni a disposizione quando ci serve di trasferire (o semplicemente di salvare e poi ripristinare) un sito Joomla. Abbiamo parlato di un backup manuale dei file e del database, oppure dell’utilizzo di uno strumento quale JoomlaPack, una famosa estensione per fare backup di Joomla.

In questo articolo vediamo una panoramica dell’utilizzo di questa estensione.

Installazione e configurazione

Il componente è scaricabile da questa pagina del sito degli autori del progetto, e si installa poi come una qualunque altra estensione Joomla. Nelle opzioni di configurazione, è necessario impostare almeno:

  • il percorso per i backup : deve essere scrivibile dal sito, ed è preferibile che tale percorso sia situato all’esterno della root del sito, un po’ come per il percorso dei download elettronici con VirtueMart;
  • il formato dei backup : si può scegliere tra l”archiviazione nativa JPA (Joomla Pack Archive) e il formato ZIP. Il componente consiglia di usare il formato nativo.

Backup

Realizzare un backup è semplicissimo: basta cliccare sul pulsante “Backup now“. Se tutte le configurazioni sono corrette, verrà creato un file compresso contenente tutti i nostri file, il dump del database e un apposito installer da usare durante un eventuale ripristino.

A ciascun file di backup è possibile associare un breve commento, che poi può essere utilizzato per distinguerli l’uno dall’altro nella apposita sezione di gestione dei file di backup.

Ripristino

Il ripristino richiede la presenza di una cartella vuota. Quindi se state migrando il vostro sito non c’è problema, ma se state ripristinando un sito nella stessa posizione dovrete prima preoccuparvi di svuotare la cartella root del sito.

Nella cartella vuota dovrete caricare il contenuto del file di backup; in altre parole, il file compresso generato dal backup dovrà essere scompattato prima di essere caricato nella vostra cartella del sito. Una volta caricato tale contenuto, se richiamate il sito vi trovere di fronte un wizard di installazione molto simile a quello originale di Joomla, ma che in realtà carica i dati (sia file, che db) corrispondenti al vostro backup.

Una volta completata questa installazione il vostro sito tornerà esattamente nello stesso stato di quando avevate effettuato il backup. L’ultima operazione necessaria – che vi viene ricordata dal wizard stesso – è quella di cancellare la cartella “Installation”, per evitare di riavviare un’altra volta il wizard.

Ringraziamenti

A Massimo che ha svolto la maggior parte dei test – rischiando stoicamente di distruggere il suo stesso sito 🙂 – e ci ha lasciato tutti gli appunti necessari per scrivere questo post.

joomla, sicurezza, sistemista

Commenti (12)

  • ho provato a ripristinare un sito che avevo backuppato con joomlapack 2.4.1, ma purtroppo mi dà un errore quando voglio aprire il sito dopo aver copiato il contenuto del mio backup .
    l’errore è ” Database Error: Unable to connect to the database:Could not connect to MySQL ” ….
    potete dirmi da che cosa è dovuto ????
    premetto che ho cambiato la versione del mio easyphp da 3.0 a 5.3.0 .
    vi sarei molto grato se mi poteste dare una buona indicazione per uscire fuori da questa situazione ( da considerare che il sito era quasi completato offline con easyphp 3.0 )
    Grazie .

  • @lucky:
    il messaggio di errore che vedi significa che è cambiato qualcosa nel database. Prima di tutto verifica se il database è attivo (accedendo con la funzione “phpMyAdmin” di EasyPHP.
    Poi verifica i dati di accesso (utente e password) che magari dopo la reinstallazione non sono più gli stessi. In tal caso, modifica il file “configuration.php” contenuto nella root del sito Joomla modificando i campi user e password di conseguenza.

  • Ciao, andando a decomprimere il file di Backup dà una serie infinita di errori tipo “CRC errato in… file danneggiato”, qundi le cartelle generate sono vuote ed è impossibile effettuale un ripristino manuale 🙁

  • @Massimo:
    questo ovviamente significa che il file ZIP è danneggiato. Se l’hai scaricato via FTP, prova a riscaricarlo da capo.
    Se è stato creato danneggiato fin dall’inizio, potrebbero essere stati problemi di disco o di ram. In questo caso, ho paura che non ci siano soluzioni.

  • sto ricaricando il backup sullo stesso server che era in precedenza.

    il vecchio database con le relative cartelle esiste ancora…devo cancellarlo?

  • @Paolo:
    la procedura di ripristino dovrebbe chiederti se vuoi cancellare o rinominare le vecchie tabelle, quindi non è obbligatorio cancellarle prima. Attenzione: se vuoi essere molto prudente, un ulteriore backup tramite phpMyAdmin (o qualunque strumento simile che il tuo hosting ti mette a disposizione) è sempre buona cosa.

  • Volevo portare il sito remoto sul mio portatile mac dove avevo già funzionante apache, php,mysql e phpmyadmin.
    Ho seguito tutte e due le vie suggerite, ma con nessuna ottengo risultati positivi.
    Con joomlapack, che in passato avevo usato senza problemi, al momento di salvare i files quando chiedo un backup mi dà errore, ma il file di log è vuoto e nella directory di joomlapack c’è un file .jpa con un nome di default. L’equivalente .sql viene invece chiamato joomla.sql mentre in passato aveva lo stesso nome del .jpa Scaricato il file sul mio computer, non viene però scompattato. Ho provato con un file .zip, ma non funziona lo scompattamento e il file è molto piccolo rispetto a quello che compare nella directory di joomlapack. Insomma non funziona niente!
    Cona la modalità di copiare i files ho operato come segue:
    nel sito remoto ho esporatto il database e in locale l’ho importato con il comando di linea source come root di mysql, perchè phpMyAdmin non lo faceva in quanto troppo grande il file e pur avendo cambiato le impostazioni nel php.ini non lo fa lo stesso. Ho copiao i files e le cartelle che stavano nella home nella directory Sites/home. Puntando con il browser entra in joomla ma come se non ci fosse niente; ho cambiato il file configuration.php nel seguente modo
    var $log_path = ‘/localhost/~maurizio/home/logs’;
    var $tmp_path = ‘/localhost/~maurizio/home/tmp’;
    var $host = ‘localhost’;
    var $user = ‘root’;
    var $password = ‘rootpassword’;
    Non so più cosa provare; se potete darmi una mano….grazie

  • @Daniela:
    una cosa per volta. Ripartirei da JoomlaPack, segnandomi l’esatto messaggio di errore e andando poi sui forum di assistenza di JoomlaPack (che nel frattempo è diventato “Akeeba Backup”) per trovare la soluzione. Mi sembra la via più semplice.
    Immagino che in locale sul tuo Mac tu usi qualcosa tipo XAMPP?

  • uso un pacchetto scaricato da http://www.entropy.ch/software/macosx/php/ e seguito delle indicazioni trovate su internet, ma l’ho fatto un anno fa e non ricordo bene; so solo che non avevo incontrato difficoltà e l’installazione sembra aver funzionato visto che riesco ad usare phpMyAdmin ed accedere ai database.
    Per quanto riguarda JoomlaPack al punto in cui dovrebbe salvare i dati mi dice che rileva un errore, ma non mi dice quale e mi invita a scaricare il file log, ma tale file è vuoto.

  • @Daniela:
    allora, i problemi sono due distinti.
    Per il malfunzionamento di JoomlaPack / Akeeba Backup, non mi viene in mente nulla per cui ti invito di nuovo a consultare il supporto sul loro sito ufficiale. Tanto prima o poi ti servirà comunque di risolverlo.
    Per il malfunzionamento del sito locale, procedi per gradi: prova a chiamare nel browser ad esempio “http://localhost/CREDITS.php”: è una pagina che non richiede l’uso del database quindi ti serve solo per capire se stai usando la “root” giusta. Se non vedi niente nemmeno così, devi controllare meglio la configurazione del tuo webserver locale (magari devi solo spostare i file in un’altra cartella).

  • ho chiesto livello di logs: tutte le informazioni e questo è quanto ottengo
    [100810 16:27] ——————————————————————————–
    [100810 16:27] JoomlaPack
    [100810 16:27] Your one for all backup solution
    [100810 16:27] ——————————————————————————–
    [100810 16:27] — PHP Configuration Values —
    [100810 16:27] PHP Version :5.2.13
    [100810 16:27] OS Version :Linux
    [100810 16:27] Safe mode :
    [100810 16:27] Display errors :1
    [100810 16:27] Disabled functions :system,popen,dl,passthru,proc_open,shell_exec
    [100810 16:27] open_basedir restr.:
    [100810 16:27] Max. exec. time :120
    [100810 16:27] Memory limit :64M
    [100810 16:27] Current mem. usage :5831424
    [100810 16:27] GZIP Compression : available (good)
    [100810 16:27] ——————————————————————————–
    [100810 16:27] JoomlaPack is starting a new full site backup
    [100810 16:27] Empty directory /components/com_babackup
    [100810 16:27] Empty directory /components/com_swmenufree
    [100810 16:27] Empty directory /components/com_noixacl
    [100810 16:27] Empty directory /images/archivi_pdf/isituto
    [100810 16:27] Empty directory /plugins/content/plugin_jw_ts
    [100810 16:27] Skipping directory /administrator/components/com_joomlapack/temp
    [100810 16:28] Skipping table jos_jp_packvars
    [100810 16:28] Database has been successfully dumped to SQL file(s)
    [100810 16:28] Archiving fragment #1
    [100810 16:28] Archiving fragment #2
    [100810 16:28] Archiving fragment #3
    [100810 16:28] Archiving fragment #4
    [100810 16:28] Archiving fragment #5
    [100810 16:28] Archiving fragment #6
    [100810 16:28] Archiving fragment #7
    [100810 16:28] Archiving fragment #8
    [100810 16:28] Archiving fragment #9
    [100810 16:28] Archiving fragment #10
    [100810 16:28] Archiving fragment #11
    [100810 16:28] Archiving fragment #12
    [100810 16:28] Archiving fragment #13
    [100810 16:28] Archiving fragment #14
    [100810 16:28] Archiving fragment #15
    [100810 16:28] Archiving fragment #16
    [100810 16:28] Archiving fragment #17
    [100810 16:28] Archiving fragment #18
    [100810 16:28] Archiving fragment #19
    [100810 16:28] Archiving fragment #20
    [100810 16:28] Archiving fragment #21
    [100810 16:28] Archiving fragment #22
    [100810 16:28] Archiving fragment #23
    [100810 16:28] Archiving fragment #24
    [100810 16:28] Archiving fragment #25
    [100810 16:28] Archiving fragment #26
    [100810 16:28] Archiving fragment #27
    [100810 16:28] Archiving fragment #28
    [100810 16:28] Archiving fragment #29
    [100810 16:28] Archiving fragment #30
    [100810 16:28] Archiving fragment #31
    [100810 16:29] Archiving fragment #32
    [100810 16:29] Archiving fragment #33
    [100810 16:29] Archiving fragment #34
    [100810 16:29] Archiving fragment #35
    [100810 16:29] Archiving fragment #36
    [100810 16:29] Archiving fragment #37
    [100810 16:29] Archiving fragment #38
    [100810 16:29] Archiving fragment #39
    [100810 16:29] Archiving fragment #40
    [100810 16:29] Archiving fragment #41
    [100810 16:29] Archiving fragment #42
    [100810 16:29] Archiving fragment #43
    [100810 16:29] Archiving fragment #44
    [100810 16:29] Archiving fragment #45
    [100810 16:29] Archiving fragment #46
    [100810 16:29] Archiving fragment #47
    [100810 16:29] Archiving fragment #48
    [100810 16:29] Archiving fragment #49
    [100810 16:29] Archiving fragment #50
    [100810 16:29] Archiving fragment #51
    [100810 16:29] Archiving fragment #52
    [100810 16:29] Archiving fragment #53
    [100810 16:29] Archiving fragment #54
    [100810 16:29] Archiving fragment #55
    [100810 16:29] Archiving fragment #56
    [100810 16:29] Archiving fragment #57
    [100810 16:29] Archiving fragment #58
    [100810 16:29] Archiving fragment #59
    [100810 16:29] Archiving fragment #60
    [100810 16:29] Archiving fragment #61
    [100810 16:29] Archiving fragment #62
    [100810 16:29] Archiving fragment #63
    [100810 16:30] Archiving fragment #64
    [100810 16:30] Archiving fragment #65
    [100810 16:30] Archiving fragment #66
    [100810 16:30] Archiving fragment #67
    [100810 16:30] Archiving fragment #68
    [100810 16:30] Archiving fragment #69
    [100810 16:30] Archiving fragment #70
    [100810 16:30] Archiving fragment #71
    [100810 16:30] Archiving fragment #72
    [100810 16:30] Archiving fragment #73
    [100810 16:30] Archiving fragment #74
    [100810 16:30] Archiving fragment #75
    [100810 16:30] Archiving fragment #76
    [100810 16:30] Archiving fragment #77
    [100810 16:30] Archiving fragment #78
    [100810 16:30] Archiving fragment #79
    [100810 16:30] Archiving fragment #80
    [100810 16:30] Archiving fragment #81
    [100810 16:30] Archiving fragment #82
    [100810 16:30] Archiving fragment #83
    [100810 16:30] Archiving fragment #84
    [100810 16:30] Archiving fragment #85
    [100810 16:30] Archiving fragment #86
    [100810 16:30] Archiving fragment #87
    [100810 16:30] Archiving fragment #88
    [100810 16:30] Archiving fragment #89
    [100810 16:30] Archiving fragment #90
    [100810 16:30] Archiving fragment #91
    [100810 16:30] Archiving fragment #92
    [100810 16:30] Archiving fragment #93
    [100810 16:30] Archiving fragment #94
    [100810 16:30] Archiving fragment #95
    [100810 16:30] Archiving fragment #96
    [100810 16:30] Archiving fragment #97
    [100810 16:30] Archiving fragment #98
    [100810 16:30] Archiving fragment #99
    [100810 16:30] Archiving fragment #100
    [100810 16:30] Archiving fragment #101
    [100810 16:30] Archiving fragment #102
    [100810 16:30] Archiving fragment #103
    [100810 16:30] Archiving fragment #104
    [100810 16:31] Archiving fragment #105
    [100810 16:31] Archiving fragment #106
    [100810 16:31] Archiving fragment #107
    [100810 16:31] Archiving fragment #108
    [100810 16:31] Archiving fragment #109
    [100810 16:31] Archiving fragment #110
    [100810 16:31] Archiving fragment #111
    [100810 16:31] Archiving fragment #112
    [100810 16:31] Archiving fragment #113
    [100810 16:31] Archiving fragment #114
    [100810 16:31] Archiving fragment #115
    [100810 16:31] Archiving fragment #116
    [100810 16:31] Archiving fragment #117
    [100810 16:31] Archiving fragment #118
    [100810 16:31] Archiving fragment #119
    [100810 16:31] Archiving fragment #120
    [100810 16:31] Archiving fragment #121
    [100810 16:31] Archiving fragment #122
    [100810 16:31] Archiving fragment #123
    [100810 16:31] Archiving fragment #124
    [100810 16:31] Archiving fragment #125
    [100810 16:31] Archiving fragment #126
    [100810 16:31] Archiving fragment #127
    [100810 16:31] Archiving fragment #128
    [100810 16:31] Archiving fragment #129
    [100810 16:31] Archiving fragment #130
    [100810 16:31] Archiving fragment #131
    [100810 16:31] Archiving fragment #132
    [100810 16:31] Archiving fragment #133
    [100810 16:31] Archiving fragment #134
    [100810 16:31] Archiving fragment #135
    [100810 16:31] Archiving fragment #136
    [100810 16:31] Archiving fragment #137
    [100810 16:31] Archiving fragment #138
    [100810 16:31] Archiving fragment #139
    [100810 16:31] Archiving fragment #140
    [100810 16:31] Archiving fragment #141
    [100810 16:31] Archiving fragment #142
    [100810 16:31] Archiving fragment #143
    [100810 16:31] Archiving fragment #144
    [100810 16:31] Archiving fragment #145
    [100810 16:32] Archiving fragment #146
    [100810 16:32] Archiving fragment #147
    [100810 16:32] Archiving fragment #148

I commenti sono chiusi.