Comment utiliser Systemd et Crontab pour sauvegarder régulièrement les données sur les systèmes Linux

WBOY
Libérer: 2023-09-27 19:31:41
original
1565 Les gens l'ont consulté

Comment utiliser Systemd et Crontab pour sauvegarder régulièrement les données sur les systèmes Linux

Comment utiliser Systemd et Crontab pour sauvegarder régulièrement des données dans un système Linux

Dans le travail et la vie quotidienne, la sauvegarde des données est très importante. Que vous soyez un utilisateur individuel ou un utilisateur professionnel, une sauvegarde régulière des données peut éviter le risque de perte et de dommage des données. Dans les systèmes Linux, nous pouvons utiliser Systemd et Crontab pour sauvegarder automatiquement et régulièrement les données. Cet article utilisera des exemples de code spécifiques pour présenter comment utiliser Systemd et Crontab pour implémenter une sauvegarde planifiée.

Systemd est un système et un gestionnaire d'initialisation du système Linux, qui fournit un moyen plus avancé de gérer les processus système. En utilisant la fonction timer de Systemd, nous pouvons implémenter des tâches planifiées. Crontab est un programme permettant d'exécuter des tâches sur une base planifiée. Nous pouvons mettre en œuvre une sauvegarde planifiée en modifiant le fichier de configuration Crontab.

Voici les étapes spécifiques et des exemples de code :

  1. Créer un script de sauvegarde
    Tout d'abord, nous devons créer un script pour sauvegarder les données. Le script peut être n'importe quel fichier de script exécutable, tel qu'un script Shell, un script Python, etc. Veuillez vous assurer que le script peut implémenter la fonction de sauvegarde des données et être enregistré dans un emplacement approprié.

Par exemple, nous créons un script Shell nommé backup.sh pour sauvegarder tous les fichiers du répertoire /data :

#!/bin/bash

backup_dir="/path/to/backup/"
source_dir="/data/"

timestamp=$(date +%Y%m%d%H%M%S)
backup_file="${backup_dir}/backup_${timestamp}.tar.gz"

tar -czvf ${backup_file} ${source_dir}
Copier après la connexion

Ce script regroupera tous les fichiers du répertoire /data dans un fichier nommé d'après l'horodatage actuel. .tar.gz et enregistrez le fichier de sauvegarde dans le répertoire spécifié.

Veuillez modifier le chemin et le nom du fichier dans le script de sauvegarde en fonction des besoins réels.

  1. Créer une minuterie Systemd
    Ensuite, nous devons créer un fichier d'unité de minuterie Systemd pour exécuter régulièrement le script de sauvegarde.

Exécutez la commande suivante dans le terminal pour créer un fichier d'unité de minuterie Systemd nommé backup.timer :

sudo nano /etc/systemd/system/backup.timer
Copier après la connexion

Dans le fichier ouvert, saisissez ce qui suit :

[Unit]
Description=Backup Service Timer

[Timer]
OnCalendar=daily
Persistent=true

[Install]
WantedBy=timers.target
Copier après la connexion

Enregistrez et fermez le fichier.

Cette minuterie effectuera une tâche de sauvegarde une fois par jour. Si vous devez personnaliser le temps d'exécution des tâches planifiées, veuillez modifier les paramètres derrière OnCalendar en fonction de vos besoins.

  1. Créer un service Systemd
    Ensuite, nous devons créer un fichier d'unité de service Systemd pour spécifier le script de sauvegarde à exécuter.

Exécutez la commande suivante dans le terminal pour créer un fichier d'unité de service Systemd nommé backup.service :

sudo nano /etc/systemd/system/backup.service
Copier après la connexion

Dans le fichier ouvert, entrez ce qui suit :

[Unit]
Description=Backup Service

[Service]
ExecStart=/path/to/backup.sh

[Install]
WantedBy=multi-user.target
Copier après la connexion

Veuillez remplacer le chemin dans ExecStart par le chemin réel du script de sauvegarde.

Enregistrez et fermez le fichier.

  1. Activer et démarrer les minuteries et les services
    Après avoir terminé les étapes ci-dessus, nous devons activer et démarrer les minuteries et les services.

Exécutez la commande suivante dans le terminal pour activer et démarrer la minuterie et le service :

sudo systemctl daemon-reload
sudo systemctl enable backup.timer
sudo systemctl start backup.timer
Copier après la connexion

Maintenant, la minuterie Systemd effectuera automatiquement la tâche de sauvegarde en fonction de l'heure configurée.

  1. Utilisez Crontab pour sauvegarder régulièrement
    En plus d'utiliser le minuteur Systemd, nous pouvons également utiliser Crontab pour sauvegarder régulièrement les données.

Exécutez la commande suivante dans le terminal pour modifier le profil Crontab de l'utilisateur actuel :

crontab -e
Copier après la connexion

Ajoutez le contenu suivant à la fin du fichier :

0 0 * * * /path/to/backup.sh
Copier après la connexion

Enregistrez et fermez le fichier.

Cette configuration Crontab exécutera la tâche de sauvegarde à minuit tous les jours. Vous pouvez personnaliser le temps d'exécution des tâches de sauvegarde en fonction de vos besoins.

Maintenant, nous avons terminé les étapes d'utilisation de Systemd et Crontab pour sauvegarder régulièrement les données du système Linux. Que vous utilisiez la minuterie Systemd ou Crontab, vous pouvez mettre en œuvre une sauvegarde automatique planifiée. Choisissez simplement la méthode appropriée en fonction des besoins réels.

J'espère que cet article vous sera utile et je vous souhaite bonne chance dans votre travail de sauvegarde de données !

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!