Comprendre le service VSS (Volume Shadow Copy) sous Windows

Dans l’écosystème Windows, la sauvegarde de données en production pose un défi récurrent : comment copier des fichiers ouverts ou verrouillés par des applications en cours d’exécution sans corrompre les données ? C’est précisément le rôle de VSS (Volume Snapshot Service ou Volume Shadow Copy Service), un composant apparu avec Windows XP et Windows Server 2003, toujours omniprésent sur les systèmes d’exploitation Microsoft récents.

Qu’est-ce que le service VSS ?

VSS est une infrastructure logicielle intégrée à Windows qui permet de capturer des instantanés (snapshots ou clichés instantanés) de volumes entiers ou de fichiers spécifiques à un instant T. Contrairement à une simple copie de fichiers, le cliché instantané est cohérent, même si une base de données ou un utilisateur est en train d’écrire sur le disque.

Ce mécanisme repose sur le principe du Copy-on-Write (copie sur écriture). Lorsqu’un instantané est créé, VSS ne duplique pas l’ensemble des données du disque, ce qui évite de saturer l’espace de stockage. Il se contente de figer l’état du système de fichiers et d’enregistrer uniquement les blocs modifiés au fil du temps dans une zone dédiée (la zone de stockage des clichés instantanés).

Les trois acteurs clés de l’architecture VSS

Pour garantir l’intégrité des données pendant une sauvegarde à chaud, VSS coordonne trois entités distinctes :

  • Le VSS Requestor (demandeur) : c’est le logiciel de sauvegarde (l’outil de sauvegarde natif de Windows, Veeam, Commvault, etc.) qui sollicite la création d’un cliché instantané.
  • Le VSS Writer (rédacteur) : composant intégré aux applications (comme Microsoft Exchange, SQL Server ou l’Active Directory) chargé de geler temporairement les écritures, de vider les tampons de mémoire vers le disque et d’assurer la cohérence applicative au moment du cliché. Si un writer rencontre une anomalie, les sauvegardes échouent souvent ; il devient alors utile de vérifier l’état des VSS writers via l’outil en ligne de commande vssadmin.
  • Le VSS Provider (fournisseur) : le moteur qui génère et gère concrètement l’instantané, qu’il soit logiciel (fourni par défaut par Microsoft dans NTFS/ReFS) ou matériel (intégré aux baies de stockage SAN/NAS).

Utilisation concrète : sauvegardes et versions précédentes

Sur les postes clients comme sur les serveurs de fichiers, VSS alimente la fonctionnalité des Versions précédentes (Previous Versions). Cette option permet aux utilisateurs ou aux techniciens de restaurer un document modifié par erreur ou supprimé sans devoir recharger une sauvegarde complète depuis une bande ou un stockage distant.

Sur les postes de travail, le service est également lié aux points de restauration système. On retrouve par exemple son implémentation dès les environnements clients où il est possible d’activer VSS sous Windows 7 pour automatiser la protection des dossiers utilisateurs. Côté infrastructure, la mise en place de clichés réguliers sur des partages réseau est détaillée dans le mémo sur la configuration de VSS sous Windows Server.

Commandes utiles avec vssadmin

En tant qu’administrateur, la console en ligne de commande reste l’outil le plus rapide pour diagnostiquer le service VSS :

  • vssadmin list shadows : liste tous les clichés instantanés présents sur la machine.
  • vssadmin list shadowstorage : affiche l’espace disque réservé et utilisé pour stocker les instantanés.
  • vssadmin list writers : contrôle l’état de santé de chaque writer applicatif.

Maîtriser VSS est indispensable pour maintenir une stratégie de sauvegarde fiable sous Windows et dépanner efficacement les erreurs de gel de volume.