
La sauvegarde est l’assurance-vie de votre serveur. Que ce soit pour un VPS ou un serveur dédié, un crash disque, une mauvaise commande ou une attaque peuvent tout effacer en quelques secondes.
Avec BorgBackup, vous disposez d’un outil libre, puissant et ultra-efficace pour :
- 🔐 Chiffrer vos données,
- 📦 Les compresser et dédupliquer,
- 🔄 Restaurer rapidement des fichiers perdus,
- 🗓️ Planifier des sauvegardes automatiques.
🎯 Objectif
Mettre en place une stratégie de sauvegarde sécurisée, automatisée et optimisée avec :
- BorgBackup (aussi appelé
borg
), - Un dépôt local ou distant (via SSH),
- Un script facile à maintenir,
- Une planification quotidienne avec
cron
ousystemd
.
1. 🛠️ Installer BorgBackup
Sur Debian/Ubuntu :
sudo apt update
sudo apt install borgbackup
Vérifiez l’installation :
borg --version
2. 📁 Initialiser un dépôt de sauvegarde
A. Dépôt local
Créez un dossier :
mkdir -p /srv/backup/borg
borg init --encryption=repokey /srv/backup/borg
B. Dépôt distant (SSH)
Depuis le serveur source :
borg init --encryption=repokey user@remote-server:/home/user/backup/borg
💡 Vous serez invité à définir une passphrase : elle chiffre vos données.
3. 🧾 Créer un script de sauvegarde (avec exclusions)
Créez un fichier backup.sh
:
#!/bin/bash
export BORG_PASSPHRASE='votre_phrase_de_passe'
BACKUP_REPO="/srv/backup/borg" # ou "user@ip:/path"
BACKUP_NAME="srv-$(hostname)-$(date +%Y-%m-%d_%H-%M)"
EXCLUDES="--exclude /proc --exclude /dev --exclude /sys --exclude /tmp --exclude /mnt"
borg create -v --stats --compression lz4 \
$BACKUP_REPO::$BACKUP_NAME \
/etc /home /var/www \
$EXCLUDES
borg prune -v --keep-daily=7 --keep-weekly=4 --keep-monthly=3 $BACKUP_REPO
Rendez-le exécutable :
chmod +x backup.sh
4. 🔐 Chiffrement des données
Par défaut, --encryption=repokey
chiffre tout ce que vous sauvegardez avec une clé privée stockée dans le dépôt. Vous pouvez aussi utiliser :
keyfile
: la clé reste côté client,authenticated
: ajoute une vérification d’intégrité forte.
N’oubliez jamais votre mot de passe : sans lui, impossible de restaurer vos données.
5. 🧯 Restaurer une sauvegarde
Lister les archives :
borg list /srv/backup/borg
Restaurer un dossier :
borg extract /srv/backup/borg::srv-2025-06-15_02-00 home/user/docs
Restaurer dans un autre chemin :
borg extract --destination /tmp/restore /srv/backup/borg::srv-2025-06-15_02-00
6. 🕒 Planification automatique
A. Avec cron
(exécution quotidienne à 2h du matin) :
crontab -e
Ajoutez :
0 2 * * * /root/backup.sh >> /var/log/borgbackup.log 2>&1
B. Avec systemd-timer
(plus moderne) :
Créez un service /etc/systemd/system/borg-backup.service
:
[Unit]
Description=Borg Backup
[Service]
Type=oneshot
ExecStart=/root/backup.sh
Puis un timer /etc/systemd/system/borg-backup.timer
:
[Unit]
Description=Run BorgBackup daily
[Timer]
OnCalendar=daily
Persistent=true
[Install]
WantedBy=timers.target
Activez-les :
systemctl daemon-reexec
systemctl enable --now borg-backup.timer
✅ Résultat
Vous avez mis en place une solution de sauvegarde complète :
Fonction | État |
---|---|
🔐 Chiffrement des sauvegardes | ✅ |
📦 Déduplication + compression | ✅ |
🔄 Restauration rapide | ✅ |
🕒 Planification automatique | ✅ |
BorgBackup est léger, rapide, fiable et éprouvé. Un excellent choix pour tout serveur Linux.