Restaurer une sauvegarde à partir d’un fichier ZIP – comme ceux générés par notre fonction de sauvegarde téléchargeable – peut parfois être un processus long. Si vous décompressez un fichier ZIP localement sur votre ordinateur avant de télécharger la sauvegarde par SFTP, vous risquez de rencontrer un goulot d’étranglement car SFTP ne peut transférer qu’un nombre limité de fichiers simultanément.

Heureusement, il existe une méthode plus rapide qui permet de réduire considérablement le temps de restauration de la sauvegarde.

Au lieu de décompresser un fichier ZIP localement et de télécharger le dossier décompressé, il est souvent plus rapide de télécharger un fichier ZIP sur le serveur avant de le décompresser.

Dans cet article, nous expliquerons comment décompresser un fichier téléchargé sur un serveur utilisant SSH. Pour notre exemple, nous allons dézipper un fichier de sauvegarde sur un serveur Kinsta, mais la même technique peut être utilisée pour dézipper n’importe quel fichier ZIP sur n’importe quel serveur Linux.

Étape 1 – Connectez-vous à votre serveur avec SSH

La première étape consiste à se connecter à votre serveur avec SSH. Pour ce faire, vous aurez besoin d’un client SSH comme l’application Terminal intégrée dans macOS et Linux ou le client PuTTY gratuit sous Windows, et des informations de connexion SSH – adresse IP, nom d’utilisateur, mot de passe (facultatif) et port.

Authentification par mot de passe ou par clé publique

Vous vous demandez peut-être pourquoi le mot de passe est facultatif. Lorsque vous vous connectez à votre serveur avec SSH, il existe deux méthodes d’authentification : l’authentification par mot de passe et l’authentification par clé publique. La méthode d’authentification par mot de passe utilise un mot de passe en texte clair.

L’authentification par clé publique est largement considérée comme une alternative plus sûre à l’authentification par mot de passe. La méthode d’authentification par clé publique exige que vous génériez une paire de clés – clé publique et clé privée. La clé publique est téléchargée sur le serveur, tandis que la clé privée est stockée localement sur votre ordinateur. Lors du processus de connexion SSH, le lien cryptographique entre les deux clés est vérifié pour authentifier l’utilisateur.

Les utilisateurs de Kinsta peuvent télécharger des clés publiques SSH dans le tableau de bord MyKinsta. Si vous utilisez un autre fournisseur de serveur, nous vous recommandons de consulter la documentation pertinente sur la façon de télécharger les clés SSH sur le serveur.

Maintenant que nous avons couvert les différences entre l’authentification par mot de passe et par clé publique, passons au processus de connexion SSH. Pour les utilisateurs de Kinsta, les détails de connexion SSH ainsi que la commande complète du terminal SSH sont fournis dans le tableau de bord MyKinsta.

Commande SSH sur MyKinsta.
Commande SSH sur MyKinsta.

Si vous utilisez un autre hébergeur ou fournisseur de serveur, les détails SSH se trouvent généralement dans votre tableau de bord également.

Une fois que vous avez trouvé les détails de connexion, vous pouvez vous connecter avec la commande SSH suivante.

ssh username@ip-address -p port

Avec l’exemple d’identifiants de connexion ci-dessous, la commande du terminal SSH serait ssh [email protected] -p 24910. Si vous n’utilisez pas l’authentification par clé publique, le mot de passe SSH vous sera également demandé après l’exécution de la commande de connexion.

  • Adresse IP : 146.148.59.197
  • Nom d’utilisateur : kinstasite
  • Port : 24910

Après une connexion SSH réussie, vous devriez voir quelque chose comme ceci dans la fenêtre de votre terminal.

Fenêtre du terminal SSH.
Fenêtre du terminal SSH.

Étape 2 – Installez le paquet Unzip (facultatif)

Dans certaines distributions Linux, le paquet unzip n’est pas installé par défaut. Les utilisateurs de Kinsta n’ont pas à se soucier de l’installation du paquet unzip car il est automatiquement installé sur tous les conteneurs de site. Si vous gérez un serveur sur lequel le paquet unzip n’est pas installé, vous pouvez utiliser la commande suivante pour l’installer – notez que des autorisations de niveau sudo sont requises.

Ubuntu et Debian

`sudo apt install unzip`

CentOS et Fedora

`sudo yum install unzip`

Étape 3 – Dézippez le fichier ZIP à l’aide du terminal

L’étape suivante consiste à naviguer jusqu’au fichier ZIP et à le décompresser. Pour naviguer vers le bon dossier, nous pouvons utiliser la commande cd, comme indiqué ci-dessous.

cd directory

Nous avons téléchargé notre fichier backup.zip dans le répertoire ~/private, nous utiliserons donc la commande ci-dessous.

cd ~/private

Remarquez comment notre invite du terminal affiche maintenant le répertoire ~/private.

Naviguez vers le répertoire contenant votre fichier ZIP.
Naviguez vers le répertoire contenant votre fichier ZIP.

Nous pouvons utiliser la commande ls pour lister les fichiers et les dossiers du répertoire courant. Dans la capture d’écran ci-dessous, vous pouvez voir le fichier backup.zip dans notre répertoire ~/private

Liste des fichiers dans le Terminal.
Liste des fichiers dans le Terminal.

Il y a deux façons de décompresser un fichier ZIP. Vous pouvez soit le décompresser dans le répertoire actuel, soit dans un autre répertoire.

Pour décompresser le fichier dans le répertoire actuel, utilisez la commande ci-dessous.

unzip your-file.zip

Pour décompresser le fichier dans un autre répertoire, utilisez plutôt cette commande.

unzip your-file.zip -d directory

Pour notre fichier backup.zip, nous voulons le dézipper dans notre dossier ~/public, ce qui peut être fait avec la commande ci-dessous.

unzip backup.zip -d ~/public

Après avoir exécuté la commande unzip, vous devriez voir une série de lignes qui commencent à s’accumuler. Cela indique que le processus de décompression a été lancé avec succès.

Dézippez les fichiers dans le Terminal.
Dézippez les fichiers dans le Terminal.

Une fois le processus de décompression terminé, naviguez vers le répertoire de destination avec la commande cd, et listez les fichiers avec la commande ls pour vérifier que les fichiers décompressés sont au bon endroit.

Vérifiez les fichiers décompressés.
Vérifiez les fichiers décompressés.

Si vous souhaitez supprimer le fichier ZIP original après l’avoir décompressé, vous pouvez utiliser la commande rm comme ceci.

rm /path/to/your-file.zip

En général, si vous avez affaire à un fichier ZIP de plus de 50 Mo, le décompresser sur le serveur plutôt que localement sur votre ordinateur sera généralement plus rapide. Mais la décompression des fichiers ZIP ne se limite pas à cela, car l‘utilisation de SSH et du Terminal est utile dans un certain nombre de cas, au-delà de la restauration des sauvegardes.

Résumé

Pouvoir décompresser un fichier ZIP dans le Terminal en utilisant SSH peut accélérer considérablement votre flux de travail – surtout si vous téléchargez un grand nombre de fichiers en masse. Grâce aux commandes SSH énumérées dans ce post, vous pourrez restaurer rapidement les sauvegardes et déplacer le contenu sans attendre de longs téléchargements SFTP.