Snapshots et sauvegardes
Cette page s’adresse à toute personne qui administre un VPS CloudFive et qui veut pouvoir revenir en arrière : avant une mise à jour majeure, avant de toucher à la configuration du serveur web, ou simplement pour ne pas perdre des mois de travail. Elle explique la différence entre un snapshot et une sauvegarde, et comment mettre les deux en place.
Un VPS vous donne un accès root complet. Vous en êtes donc aussi l’administrateur : CloudFive héberge la machine, lui fournit son réseau et la protège des attaques, mais le contenu du disque relève de vous. C’est la différence principale avec un serveur de jeu, où le panel propose ses propres sauvegardes (voir le guide), et avec l’hébergement web (voir le guide).
Snapshot ou sauvegarde : que choisir
Section intitulée « Snapshot ou sauvegarde : que choisir »Les deux mots sont souvent employés l’un pour l’autre. Ce ne sont pas les mêmes outils, et ils ne protègent pas des mêmes accidents.
| Snapshot | Sauvegarde | |
|---|---|---|
| Ce que c’est | une photo de l’état de la machine à un instant donné | une copie de vos données rangée ailleurs |
| Vitesse | quasi immédiat à créer, rapide à restaurer | long à créer, long à restaurer |
| Granularité | tout ou rien : vous revenez à l’instant T | fichier par fichier, base par base |
| Protège de | une manipulation qui a mal tourné | une perte du serveur, une suppression ancienne, un piratage |
| Ne protège pas de | la perte de la machine elle-même | une erreur faite juste après la dernière copie |
| Durée de vie utile | quelques heures à quelques jours | plusieurs semaines, plusieurs versions |
La règle tient en une phrase : le snapshot est un filet pour les trente prochaines minutes, la sauvegarde est votre assurance.
Créer un snapshot avant une opération risquée
Section intitulée « Créer un snapshot avant une opération risquée »Le réflexe à prendre : avant une montée de version de distribution, un changement de version de PHP, une migration de base de données ou une modification du pare-feu, figez l’état de la machine.
-
Notez par écrit ce que vous allez modifier, et comment vous saurez que ça a marché. Un snapshot ne sert à rien si vous ne savez plus quel était l’état correct.
-
Arrêtez proprement les services qui écrivent des données, en particulier les bases. Un snapshot pris pendant une écriture peut contenir une base incohérente.
Fenêtre de terminal systemctl stop mariadb -
Créez le snapshot depuis la fiche de votre service dans l’espace client, dans la section qui liste les actions disponibles sur le VPS (comment la retrouver). Donnez-lui un nom qui dit la date et la raison, par exemple
avant-maj-php-2026-11-09. -
Relancez vos services, puis faites votre modification.
Fenêtre de terminal systemctl start mariadb -
Vérifiez que tout fonctionne. Si oui, supprimez le snapshot : un snapshot qu’on garde « au cas où » occupe du stockage et finit par poser plus de problèmes qu’il n’en résout.
Restaurer un snapshot
Section intitulée « Restaurer un snapshot »Restaurer, c’est revenir à l’instant de la prise. Tout ce qui a été écrit depuis disparaît : commandes passées, fichiers déposés, commandes enregistrées par vos utilisateurs, emails reçus.
-
Mesurez d’abord ce que vous allez perdre. Si des données utiles sont arrivées depuis le snapshot, copiez-les hors du VPS tant qu’il est encore accessible.
-
Arrêtez les services pour ne pas restaurer par-dessus une machine en train d’écrire.
-
Lancez la restauration depuis la fiche du service, en vérifiant la date du snapshot sélectionné. Deux snapshots mal nommés se ressemblent beaucoup.
-
Attendez la fin de l’opération sans redémarrer la machine entre-temps.
-
Reconnectez-vous en SSH et vérifiez dans l’ordre : les services actifs (
systemctl --failed), l’espace disque (df -h), et le fonctionnement réel de votre application.
Automatiser ses sauvegardes
Section intitulée « Automatiser ses sauvegardes »Une sauvegarde qu’il faut penser à lancer n’est pas lancée. Voici un script minimal qui sauvegarde les bases, les fichiers et la configuration, puis les envoie sur une autre machine.
#!/bin/shset -euDATE=$(date +%F)DEST=/var/backups/cloudfivemkdir -p "$DEST"
# Bases MySQL / MariaDB, à chaud et cohérentesmysqldump --all-databases --single-transaction | gzip > "$DEST/bases-$DATE.sql.gz"
# Fichiers du site, comptes et configuration systèmetar -czf "$DEST/fichiers-$DATE.tar.gz" /etc /var/www /home
# Copie vers une machine extérieure au VPSrsync -az --delete "$DEST/" sauvegarde@203.0.113.20:/srv/vps-exemple/
# Rotation locale : on ne garde pas plus de 14 jours sur le VPSfind "$DEST" -type f -mtime +14 -deleteRendez-le exécutable, puis programmez-le :
chmod 700 /usr/local/bin/sauvegarde.shcrontab -e20 3 * * * /usr/local/bin/sauvegarde.sh >> /var/log/sauvegarde.log 2>&1Quelques points qui font la différence entre un script qui tourne et un script qui protège :
- Les identifiants MySQL vont dans
/root/.my.cnfavec les droits600, pas dans la ligne de commande. Voir aussi Bases de données MySQL pour la logique des accès. - La destination doit être ailleurs. Un autre VPS, un NAS chez vous, un espace de stockage externe. Une copie dans
/var/backupsne survit pas à la perte du disque. - Chiffrez si les données sont sensibles. Des outils comme
resticouborgfont l’incrémental et le chiffrement, pour un coût d’apprentissage d’une soirée. - Surveillez le journal. Un
cronsilencieux qui échoue depuis trois mois est le scénario classique. Voir Surveiller les ressources pour poser une alerte simple.
Limites et durée de conservation
Section intitulée « Limites et durée de conservation »Trois choses à garder en tête :
- Un snapshot occupe du stockage. Le disque de votre VPS est celui de votre palier — 64 Go sur un VPS Start, 200 Go sur un VPS Ultra, voir la page de l’offre. Empiler les snapshots sur un disque presque plein mène à un VPS qui ne démarre plus.
- Un snapshot n’est pas une archive. Il n’est pas prévu pour retrouver un fichier supprimé il y a six semaines. Cela, c’est le travail des sauvegardes versionnées.
- Le nombre de snapshots et leur conservation dépendent de votre offre. Nous ne publions pas de durée garantie ici : fiez-vous à ce qu’affiche la fiche de votre service, ou posez la question par ticket. Ne construisez pas votre plan de reprise sur une hypothèse.
Si votre plan de sauvegarde commence à peser sur les ressources du VPS, c’est souvent le signe que la machine est juste dimensionnée : voyez Changer de formule et VPS ou serveur dédié.
Si ça ne marche pas
Section intitulée « Si ça ne marche pas »L’action de snapshot n’apparaît pas sur la fiche du service. Elle dépend de l’offre. Ouvrez un ticket en indiquant l’identifiant du service et l’opération que vous préparez : c’est plus rapide que de chercher, et le support peut la prendre pour vous.
Le snapshot échoue avec une erreur d’espace. Le disque est trop plein pour figer son état. Faites de la place d’abord : df -h pour voir, journalctl --vacuum-size=200M et le nettoyage du cache de paquets libèrent souvent plusieurs gigaoctets. La méthode complète est dans Surveiller les ressources.
Après restauration, un service refuse de démarrer. Regardez son journal avec journalctl -u nom-du-service -n 50. Le cas classique est une base restaurée dans un état incohérent parce que le snapshot a été pris machine allumée, sans arrêt des services. Restaurez alors le dernier export mysqldump par-dessus.
Le serveur ne répond plus après l’opération. Passez par la console, qui fonctionne même sans SSH, puis suivez Dépannage : mon VPS est inaccessible.
Vous n’avez ni snapshot ni sauvegarde et les données ont disparu. Arrêtez toute écriture sur le disque immédiatement et ouvrez un ticket en décrivant précisément ce qui s’est passé et à quelle heure. Les chances dépendent du cas, mais elles diminuent à chaque minute d’écriture supplémentaire.