Ripristinare un backup da un file ZIP – come quelli generati dalla nostra funzionalità di backup scaricabili – può richiedere a volte una procedura lunga. Se si decomprime un file ZIP localmente sul proprio computer prima di caricare il backup con SFTP, è probabile che ci si trovi in un collo di bottiglia perché SFTP può trasferire solo un numero limitato di file contemporaneamente.

Fortunatamente, esiste un metodo più veloce che può ridurre significativamente il tempo di ripristino del backup.

Invece di decomprimere un file ZIP localmente e caricare la cartella decompressa, spesso è più veloce caricare un file ZIP sul server prima di decomprimerlo.

In questo post spiegheremo come decomprimere un file caricato su un server utilizzando SSH. Per il nostro esempio, decomprimeremo un file di backup su un server Kinsta, ma la stessa tecnica può essere utilizzata per decomprimere qualsiasi file ZIP su qualsiasi server Linux.

Passo 1 – Accedete al Vostro Server con SSH

Il primo passo è quello di accedere al server con SSH. Per farlo, avrete bisogno di un client SSH come l’app integrata del Terminale in macOS e Linux o il client gratuito PuTTY su Windows, e i dati di accesso SSH – indirizzo IP, nome utente, password (opzionale), e porta.

Password o Autenticazione a Chiave Pubblica

Vi starete chiedendo perché la password sia opzionale. Quando accedete al server con SSH, ci sono due metodi di autenticazione: la password e l’autenticazione a chiave pubblica. Il metodo di autenticazione con password utilizza una password a testo semplice.

L’autenticazione a chiave pubblica è ampiamente considerata un’alternativa più sicura all’autenticazione con password. Il metodo di autenticazione a chiave pubblica richiede la generazione di una coppia di chiavi – chiave pubblica e chiave privata. La chiave pubblica viene caricata sul server, mentre la chiave privata viene memorizzata localmente sul vostro computer. Durante il processo di login SSH, viene verificato il collegamento crittografico tra le due chiavi per autenticare l’utente.

Gli utenti di Kinsta possono caricare le chiavi pubbliche SSH nel cruscotto di MyKinsta. Se utilizzate un altro server provider, vi consigliamo di consultare la relativa documentazione per caricare le chiavi SSH sul server.

Ora che abbiamo descritto le differenze tra password e autenticazione a chiave pubblica, passiamo alla procedura di login SSH. Per gli utenti di Kinsta, i dati di login SSH, con il comando completo del terminale SSH, sono forniti nel cruscotto di MyKinsta.

Comando terminale SSH in MyKinsta.
Comando terminale SSH in MyKinsta.

Se utilizzate un altro web host o un diverso server provider, i dati SSH si trovano di solito anche nel cruscotto.

Dopo aver trovato i dati di accesso, potete effettuare il login con il seguente comando SSH.

ssh username@ip-address -p port

Con i dati di login dell’esempio qui sotto, il comando del terminale SSH sarebbe ssh [email protected] -p 24910. Se non si utilizza l’autenticazione a chiave pubblica, dopo l’esecuzione del comando di login verrà richiesta anche la password SSH.

  • Indirizzo IP: 146.148.59.197
  • Nome utente: kinstasite
  • Porta: 24910

Dopo un login SSH riuscito, dovreste vedere qualcosa di simile nella vostra finestra del Terminale.

Finestra del terminale SSH.
Finestra del terminale SSH.

Passo 2 – Installare il Pacchetto Unzip (opzionale)

In alcune distribuzioni Linux, il pacchetto unzip non è installato di default. Gli utenti di Kinsta non devono preoccuparsi di installare il pacchetto unzip perché questo viene installato automaticamente su tutti i container dei siti. Se gestite un server su cui non è installato il pacchetto unzip, potete installarlo con il seguente comando – si noti che sono richiesti i permessi a livello sudo.

Ubuntu e Debian

`sudo apt install unzip`

CentOS e Fedora

`sudo yum install unzip`

Passo 3 – Decomprimere il File ZIP Utilizzando il Terminale

Il passo successivo è quello di navigare fino al file ZIP e decomprimerlo. Per navigare alla cartella corretta, possiamo utilizzare il comando cd, come mostrato di seguito.

cd directory

Abbiamo caricato il nostro file di backup.zip nella directory ~/private, quindi useremo il comando qui sotto.

cd ~/private

Notate come il nostro prompt del terminale mostra ora la directory ~/private.

Navigare fino alla directory contenente il file ZIP.
Navigare fino alla directory contenente il file ZIP.

Possiamo usare il comando ls per elencare i file e le cartelle nella directory corrente. Nella schermata qui sotto, potete vedere il file backup.zip nella nostra directory ~/private.

Elencare i file nel terminale.
Elencare i file nel terminale.

Ci sono due modi per decomprimere un file ZIP. Potete decomprimerlo nella directory corrente o in un’altra directory.

Per decomprimere il file nella directory corrente, utilizzate il comando seguente.

unzip your-file.zip

Per decomprimere il file in un’altra directory, utilizzate questo comando.

unzip your-file.zip -d directory

Vogliamo decomprimere il nostro file backup.zip nella nostra cartella ~/public e possiamo farlo con il comando qui sotto.

unzip backup.zip -d ~/public

Dopo aver eseguito il comando di unzip, si dovrebbe vedere una serie di linee che iniziano con “inflating”. Ciò indica che la procedura di decompressione è stata avviata con successo.

Decomprimere i file nel terminale.
Decomprimere i file nel terminale.

Al termine della procedura di decompressione, navigate verso la directory di destinazione con il comando cd ed elencare i file con il comando ls per verificare che i file decompressi siano nel posto giusto.

Verificare i file decompressi.
Verificare i file decompressi.

Se volete rimuovere il file ZIP originale dopo averlo decompresso, potete utilizzare il comando rm in questo modo.

rm /path/to/your-file.zip

In generale, se avete a che fare con un file ZIP di dimensioni superiori a 50 MB, la decompressione sul server invece che localmente sul vostro computer sarà di solito più veloce. Ma c’è di più per decomprimere i file ZIP, in quanto l’utilizzo di SSH e Terminale è utile per una serie di casi d’uso oltre al ripristino dei backup.

Riepilogo

La possibilità di decomprimere un file ZIP nel Terminale utilizzando SSH può velocizzare notevolmente il vostro flusso di lavoro – specialmente se state caricando un gran numero di file in massa. Con i comandi SSH elencati in questo post, sarete in grado di ripristinare rapidamente i backup e spostare i contenuti senza dover attendere lunghi upload SFTP.