Chapitre 213 minIntermédiaire
Sauvegarde complète, incrémentale et différentielle
Par Josselyn C., prof de BTS SIO. Mis à jour le .
À la fin de ce chapitre, tu sauras
- distinguer sauvegarde complète, incrémentale et différentielle ;
- calculer les jeux nécessaires pour restaurer après une panne ;
- estimer le volume et la durée d'une semaine de sauvegardes ;
- expliquer l'incrémentale permanente, la complète synthétique et la déduplication ;
- obtenir une copie cohérente d'un fichier ouvert ou d'une base de données.
4 exercices corrigés1 schéma
Il existe trois grands types de sauvegarde. La sauvegarde complète copie toutes les données à chaque fois ; la sauvegarde incrémentale (on écrit aussi incrémentielle) copie ce qui a changé depuis la dernière sauvegarde, quelle qu'elle soit ; la sauvegarde différentielle copie ce qui a changé depuis la dernière sauvegarde complète. Le choix se fait entre le temps et la place nécessaires pour sauvegarder, et la simplicité de la restauration. Ce chapitre explique les trois, montre comment calculer les jeux nécessaires pour restaurer, les volumes et les durées, puis présente les variantes des logiciels actuels.
La sauvegarde complète
La sauvegarde complète (full backup), aussi appelée totale, copie l'intégralité des données sélectionnées, qu'elles aient changé ou non.
- Avantage : chaque complète se suffit à elle-même. Pour restaurer, un seul jeu suffit.
- Inconvénients : elle est longue et occupe autant de place que les données à chaque exécution. Sur un serveur de 400 Go, sept complètes par semaine occupent 2,8 To.
On la fait rarement seule, sauf pour de petits volumes. Elle sert de base aux deux autres types.
La sauvegarde incrémentale (ou incrémentielle)
La sauvegarde incrémentale copie uniquement ce qui a changé depuis la dernière sauvegarde, qu'elle soit complète ou incrémentale.
- Avantages : chaque incrémentale est petite et rapide ; c'est le type qui consomme le moins de place.
- Inconvénient : pour restaurer, il faut la dernière complète et toutes les incrémentales qui ont suivi, dans l'ordre. C'est une chaîne : si un maillon manque ou est corrompu, les incrémentales suivantes ne permettent plus de reconstituer un état cohérent.
La sauvegarde différentielle
La sauvegarde différentielle copie tout ce qui a changé depuis la dernière sauvegarde complète. Chaque jour, elle reprend donc les changements de la veille, plus ceux du jour.
- Avantage : pour restaurer, deux jeux suffisent : la dernière complète et la dernière différentielle.
- Inconvénient : elle grossit chaque jour jusqu'à la complète suivante, donc elle est plus longue et plus volumineuse que l'incrémentale.
Comment le logiciel sait ce qui a changé
Pour faire une incrémentale ou une différentielle, le logiciel doit savoir quels fichiers ou quels blocs ont changé. Trois mécanismes existent.
- La date de modification : le logiciel compare la date de dernière modification de chaque fichier à la date de la sauvegarde de référence. C'est ce que fait
rsync(avec la taille) outar --listed-incremental. - L'attribut d'archive de Windows : le système le positionne sur tout fichier modifié. Une sauvegarde complète ou incrémentale l'efface après avoir copié le fichier ; une différentielle le laisse, d'où le fait qu'elle reprend chaque jour tous les fichiers modifiés depuis la complète.
- Le suivi des blocs modifiés : pour les machines virtuelles et les disques entiers, l'hyperviseur tient la liste des blocs écrits depuis la dernière sauvegarde (Changed Block Tracking chez VMware, bitmap des blocs modifiés chez Proxmox). La sauvegarde ne lit que ces blocs, ce qui rend une incrémentale de VM très rapide.
Les logiciels récents qui dédupliquent (Proxmox Backup Server, BorgBackup, restic, Veeam) découpent les données en morceaux, calculent l'empreinte de chacun et ne stockent un morceau qu'une fois. Chaque sauvegarde apparaît comme complète, mais seuls les morceaux nouveaux sont envoyés et stockés. On y revient plus bas.
Le comparatif
| Critère | Complète | Incrémentale | Différentielle |
|---|---|---|---|
| Ce qui est copié | Tout | Les changements depuis la dernière sauvegarde | Les changements depuis la dernière complète |
| Durée de sauvegarde | Longue | Courte | Croissante au fil des jours |
| Place occupée | Maximale | Minimale | Intermédiaire, croissante |
| Jeux pour restaurer | 1 | La complète + toutes les incrémentales suivantes | La complète + la dernière différentielle |
| Durée de restauration | Courte | La plus longue (beaucoup de jeux à enchaîner) | Intermédiaire |
| Risque | Faible | Un maillon perdu casse la suite de la chaîne | Faible : seules deux pièces comptent |
Calculer les jeux nécessaires pour restaurer
C'est l'exercice le plus classique. Prenons le serveur de fichiers d'Alvéa, SRV-FIC, et un plan simple : une complète le dimanche à 22 h, puis une sauvegarde chaque soir à 22 h du lundi au samedi.
Une panne survient le jeudi à 15 h. La dernière sauvegarde réussie est celle du mercredi à 22 h.
- En incrémental, il faut la complète du dimanche, puis les incrémentales du lundi, du mardi et du mercredi, restaurées dans cet ordre : 4 jeux.
- En différentiel, il faut la complète du dimanche, puis la différentielle du mercredi : 2 jeux.
- Dans les deux cas, le travail fait entre mercredi 22 h et jeudi 15 h est perdu : 17 heures de modifications. Le type de sauvegarde ne change pas la perte de données ; c'est la fréquence qui la fixe (chapitre 3).
Calculer les volumes et les durées
Les données de SRV-FIC occupent 400 Go. Chaque jour, les utilisateurs modifient environ 20 Go de fichiers. Pour simplifier, on suppose que ce ne sont pas les mêmes fichiers d'un jour à l'autre (c'est le cas le plus défavorable pour la différentielle). La sauvegarde écrit sur le NAS à 100 Mo/s en moyenne, et l'on compte 1 Go = 1 000 Mo.
| Soir | Incrémentale | Différentielle |
|---|---|---|
| Dimanche | Complète : 400 Go | Complète : 400 Go |
| Lundi | 20 Go | 20 Go |
| Mardi | 20 Go | 40 Go |
| Mercredi | 20 Go | 60 Go |
| Jeudi | 20 Go | 80 Go |
| Vendredi | 20 Go | 100 Go |
| Samedi | 20 Go | 120 Go |
| Total de la semaine | 520 Go | 820 Go |
Les durées se calculent avec durée = volume ÷ débit :
- la complète : 400 000 Mo ÷ 100 Mo/s = 4 000 s, soit 1 h 6 min 40 s ;
- une incrémentale : 20 000 Mo ÷ 100 Mo/s = 200 s, soit 3 min 20 s ;
- la différentielle du samedi, la plus grosse : 120 000 Mo ÷ 100 Mo/s = 1 200 s, soit 20 min.
Pour la restauration du jeudi, les deux méthodes relisent ici le même volume : 400 + 3 × 20 = 460 Go en incrémental, 400 + 60 = 460 Go en différentiel, soit 4 600 s ou 1 h 16 min 40 s à 100 Mo/s. Dans la réalité, l'incrémentale prend un peu plus de temps : il faut ouvrir et enchaîner quatre jeux, et un fichier modifié trois fois est restauré trois fois. Et si un même fichier est modifié tous les jours, la différentielle grossit moins vite que dans le tableau.
Les variantes des logiciels actuels
Les trois types de base restent au programme, mais les logiciels de 2026 les combinent autrement.
L'incrémentale permanente (forever incremental). Une seule complète, au départ, puis uniquement des incrémentales. Pour éviter une chaîne interminable, le logiciel fusionne régulièrement les plus anciennes incrémentales dans la complète, au fil de la rétention. C'est le mode par défaut de Veeam pour les sauvegardes sur disque.
La complète synthétique. Au lieu de relire tout le serveur, le logiciel fabrique une nouvelle complète sur le stockage de sauvegarde en combinant la dernière complète et les incrémentales qui suivent. La production n'est pas sollicitée, et la chaîne repart à zéro.
La déduplication. Le logiciel découpe les données en morceaux, ne stocke chaque morceau qu'une seule fois et garde, pour chaque sauvegarde, la liste des morceaux qui la composent. Chaque sauvegarde est donc une complète du point de vue de la restauration, mais elle ne coûte que les morceaux nouveaux. C'est le fonctionnement de Proxmox Backup Server, BorgBackup et restic. Le gain dépend des données : énorme pour des VM qui partagent le même système, faible pour des vidéos ou des archives déjà compressées.
La sauvegarde au niveau image ou au niveau fichiers. Une sauvegarde image copie le disque entier d'une VM ou d'un serveur (système, applications, données) et permet de le redémarrer tel quel. Une sauvegarde fichiers copie une sélection de dossiers. On combine souvent les deux : l'image pour repartir vite, les fichiers pour restaurer finement (chapitre 10).
La cohérence : sauvegarder ce qui est en cours d'utilisation
Copier un fichier pendant qu'on écrit dedans donne une copie incohérente : le début est ancien, la fin est nouvelle. C'est particulièrement grave pour une base de données, dont les fichiers changent sans arrêt.
- Sous Windows, le service de clichés instantanés (VSS, Volume Shadow Copy Service) fige le volume le temps de la sauvegarde. Les applications compatibles (SQL Server, Active Directory) écrivent leurs données en attente avant le cliché : la sauvegarde est cohérente du point de vue de l'application.
- Pour une VM, l'agent invité (QEMU Guest Agent sous Proxmox, VMware Tools) gèle les systèmes de fichiers pendant le snapshot de sauvegarde.
- Pour une base de données, le plus sûr reste l'outil du SGBD :
mysqldump --single-transactionpour MySQL ou MariaDB,pg_dumppour PostgreSQL. Ils produisent une copie cohérente sans arrêter la base. Le chapitre Sauvegarder une base MySQL du cours SQL le montre pas à pas.
Exercices
Exercice 1 sur 4 Quels jeux pour restaurer ? Réussi À revoir
Une entreprise fait une complète le dimanche à 23 h, puis une sauvegarde chaque soir à 23 h du lundi au samedi.
- Le disque du serveur meurt le mardi à 10 h. Quels jeux faut-il en incrémental ? En différentiel ? Combien d'heures de travail sont perdues ?
- Même question pour une panne le samedi à 16 h.
Voir la réponseMasquer la réponse de l'exercice 1
- Dernière sauvegarde réussie : lundi 23 h. En incrémental : complète du dimanche + incrémentale du lundi, 2 jeux. En différentiel : complète du dimanche + différentielle du lundi, 2 jeux aussi (le lendemain d'une complète, les deux méthodes se rejoignent). Perte : de lundi 23 h à mardi 10 h, 11 heures.
- Dernière sauvegarde réussie : vendredi 23 h. En incrémental : complète du dimanche + incrémentales du lundi, mardi, mercredi, jeudi et vendredi, 6 jeux. En différentiel : complète du dimanche + différentielle du vendredi, 2 jeux. Perte : de vendredi 23 h à samedi 16 h, 17 heures.
Tu avais trouvé ?
Exercice 2 sur 4 Volumes et durées d'une semaine Réussi À revoir
Un serveur contient 600 Go de données. Chaque jour, 30 Go de fichiers différents sont modifiés. Le plan prévoit une complète le dimanche, puis six sauvegardes du lundi au samedi. La sauvegarde écrit à 120 Mo/s (1 Go = 1 000 Mo).
- Quel volume occupe la semaine en incrémental ? En différentiel ?
- Combien de temps durent la complète, une incrémentale et la différentielle du samedi ?
Voir la réponseMasquer la réponse de l'exercice 2
- Incrémental : 600 + 6 × 30 = 780 Go. Différentiel : les différentielles font 30, 60, 90, 120, 150 et 180 Go, soit 30 × (1 + 2 + 3 + 4 + 5 + 6) = 30 × 21 = 630 Go, plus la complète : 1 230 Go.
- Complète : 600 000 ÷ 120 = 5 000 s = 1 h 23 min 20 s. Incrémentale : 30 000 ÷ 120 = 250 s = 4 min 10 s. Différentielle du samedi : 180 000 ÷ 120 = 1 500 s = 25 min.
Tu avais trouvé ?
Exercice 3 sur 4 Le maillon manquant Réussi À revoir
Même plan qu'au premier exercice, en incrémental. Le vendredi à 9 h, on doit tout restaurer, et l'on découvre que l'incrémentale du mercredi est illisible. Jusqu'à quel état peut-on restaurer le serveur de façon cohérente ? Que perd-on ? Que se serait-il passé en différentiel ?
Voir la réponseMasquer la réponse de l'exercice 3
En incrémental, la chaîne est coupée au mercredi : l'état cohérent le plus récent est celui du mardi 23 h (complète + lundi + mardi). On perd les modifications du mercredi et du jeudi, soit près de deux jours et demi de travail jusqu'au vendredi 9 h. L'incrémentale du jeudi reste lisible : on peut en extraire, un par un, les fichiers modifiés le jeudi, mais pas ceux qui n'ont changé que le mercredi.
En différentiel, la différentielle du mercredi n'aurait servi à rien : seule celle du jeudi est nécessaire. Avec la complète, on revient au jeudi 23 h, et l'on ne perd que la matinée du vendredi. C'est pour ce risque de chaîne cassée qu'on vérifie les sauvegardes (chapitre 11).
Tu avais trouvé ?
Exercice 4 sur 4 L'attribut d'archive Réussi À revoir
Sous Windows, un fichier devis.xlsx est modifié le lundi à 10 h, puis plus jamais de la semaine. Le plan est le même qu'au premier exercice.
- En incrémental, dans quelles sauvegardes de la semaine ce fichier est-il copié ?
- En différentiel ?
Voir la réponseMasquer la réponse de l'exercice 4
- En incrémental, le fichier est copié dans l'incrémentale du lundi seulement : elle efface l'attribut d'archive, et le fichier ne change plus ensuite.
- En différentiel, il est copié du lundi au samedi : la différentielle laisse l'attribut, donc le fichier reste « modifié depuis la complète » jusqu'à la complète suivante, qui l'efface.
Tu avais trouvé ?