Comment effectuer une sauvegarde et une récupération à distance des systèmes Linux
Avec la popularité des systèmes Linux et l'expansion de leur champ d'application, la demande de sauvegarde et de récupération de données devient de plus en plus importante. Dans la plupart des cas, nous souhaitons pouvoir sauvegarder les données importantes sur un serveur distant pour éviter toute perte de données causée par une panne matérielle locale ou d'autres situations inattendues. Cet article explique comment effectuer une sauvegarde et une récupération à distance sur un système Linux via le protocole SSH (Secure Shell) et fournit des exemples de code pertinents.
Étape 1 : Créer une paire de clés SSH
Avant d'effectuer une sauvegarde et une récupération à distance, vous devez d'abord générer une paire de clés SSH sur la machine locale pour établir une connexion de communication sécurisée avec le serveur distant. Vous pouvez utiliser la commande suivante pour générer une paire de clés SSH :
$ ssh-keygen -t rsa -b 4096
Selon les invites, vous pouvez choisir l'emplacement où enregistrer la clé et lui donner un nom. Par défaut, la clé sera enregistrée dans le répertoire .ssh du répertoire personnel de l'utilisateur.
Étape 2 : Ajouter la clé publique au serveur distant
Après avoir généré la paire de clés SSH, vous devez ajouter la clé publique au serveur distant pour permettre à la machine locale de se connecter via le protocole SSH. La clé publique peut être copiée sur le serveur distant à l'aide de la commande suivante :
$ ssh-copy-id user@remote_server
où user et remote_server sont respectivement le nom d'utilisateur et l'adresse du serveur distant. Après avoir exécuté cette commande, il vous sera demandé de saisir le mot de passe du serveur distant pour vérification.
Étape 3 : Écrire un script de sauvegarde
Le script de sauvegarde peut être implémenté à l'aide de la commande rsync. rsync est un puissant outil de synchronisation de fichiers qui peut effectuer une sauvegarde et une récupération de fichiers entre des machines locales et des serveurs distants. Voici un exemple de script de sauvegarde :
SRC_DIR="/path/to/source/directory"
DEST_DIR="/path/to/destination/directory"
REMOTE_SERVER="user@remote_server"
rsync -avz --delete $SRC_DIR $REMOTE_SERVER:$DEST_DIR
Parmi eux, SRC_DIR est le répertoire local qui doit être sauvegardé, DEST_DIR est le répertoire où la sauvegarde est enregistrée sur le serveur distant et REMOTE_SERVER est l'utilisateur nom et adresse du serveur distant. Le script utilise la commande rsync pour synchroniser le répertoire local avec le serveur distant et enregistrer la structure de répertoires sauvegardée sur le serveur distant.
Étape 4 : Configurer une tâche planifiée
Afin d'effectuer une sauvegarde automatique de manière régulière, vous pouvez ajouter le script de sauvegarde à la tâche planifiée. Sur les systèmes Linux, vous pouvez utiliser la commande crontab pour gérer les tâches planifiées. Voici un exemple d'ajout d'une tâche planifiée :
$ crontab -e
Ajoutez le contenu suivant dans le fichier de configuration ouvert :
0 0 * /path/to/backup-script.sh
où, /path /to/backup-script.sh est le chemin d'accès au script de sauvegarde. Cet exemple indique que le script de sauvegarde est exécuté tous les jours à minuit.
Étape 5 : Restaurer les données de sauvegarde
Lorsque vous devez restaurer les données de sauvegarde, vous pouvez utiliser la commande rsync pour synchroniser les données de sauvegarde du serveur distant vers la machine locale. Voici un exemple pour restaurer les données de sauvegarde :
DEST_DIR="/path/to/destination/directory"
SRC_DIR="/path/to/source/directory"
REMOTE_SERVER="user@remote_server "
rsync -avz --delete $REMOTE_SERVER:$DEST_DIR $SRC_DIR
Ce script synchronise les données de sauvegarde sur le serveur distant avec le répertoire local.
Résumé :
La sauvegarde et la récupération à distance des systèmes Linux via le protocole SSH peuvent protéger les données importantes contre les pannes matérielles locales et d'autres situations inattendues. Cet article fournit des méthodes pour générer des paires de clés SSH, ajouter des clés publiques aux serveurs distants et donne des exemples de scripts de sauvegarde et de récupération. En utilisation réelle, les modifications et ajustements correspondants peuvent être effectués en fonction des besoins et des environnements réels pour répondre aux besoins de sauvegarde et de restauration dans différents scénarios.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!