Récemment, la bande de sauvegarde de la nuit précédente, lancé NTBackup, et commencé à regarder si le fichier apparaissait dans la fenêtre de restauration de NTBackup. J’ai ainsi appris à mes dépens que NTBackup ne donne pas le moyen d’explorer un catalogue de sauvegarde.
Collecter les données des systemes de fichiers

Face à ce problème, ma première idée a été de créer des rapports de sauvegarde détaillés en utilisant l’option /L:f de NTBackup. (Vous pouvez lire et télécharger mes scripts NTBackup dans l’article « Want a Flexible Automated Backup Solution? », sur le Club abonnés) Quand vous exécutez des sauvegardes avec cette option, NTBackup journalise le chemin complet et le nom de fichier pour chaque fichier dans la sauvegarde.
Cette méthode souffre néanmoins de quelques lacunes. La première est que les fichiers log peuvent être très volumineux, selon le genre de sauvegarde. Si vous envoyez par courriel ou imprimez un grand fichier log après une sauvegarde, vous risquez d’alourdir le trafic du réseau ou de consommer beaucoup de papier. Autre limitation, le fichier log ne donne pas la liste des tailles ou des dernières dates de modification des fichiers.
C’est pourquoi j’ai décidé de scripter ma propre solution qui construirait une base de données de fichiers en se basant sur le fichier backup selection (.bks) du job de sauvegarde. Quand vous créez un job NTBackup planifié, il crée un fichier texte Unicode avec une exception .bks qui contient la liste des fichiers et dossiers sélectionnés pour le job. Vous pouvez aussi créer un fichier .bks manuellement dans la GUI NTBackup si vous choisissez l’option Save Selections dans le menu Job.
J’ai décidé de voir si je pouvais ouvrir un fichier .bks, passer par chaque fichier et dossier sélectionné, et sauvegarder les noms de ces fichiers dans un fichier CSV (comma-separated value). Je pouvais utiliser l’objet File- SystemObject pour me connecter à chaque dossier ou fichier nommé dans le fichier .bks et utiliser les méthodes Write et WriteLine de l’objet TextStream pour sauvegarder les noms de ces fichiers dans un fichier de sortie. Mais j’ai constaté que les méthodes Write et WriteLine causent certains problèmes avec le contenu de la base de données.
Après avoir écrit une ligne dans un fichier texte, vous ne pouvez pas revenir en arrière et accéder à nouveau à la ligne sans fermer le fichier texte, le réouvrir et lire chaque ligne à partir du début du fichier. Cela pose un problème parce que les fichiers .bks contiennent des lignes qui finissent par la chaîne /Exclude pour indiquer que le dossier ou le fichier doit être exclu de la sauvegarde. Si mon script utilisait l’objet FileSystemObject pour consulter le fichier .bks, ligne par ligne, en ajoutant des fichiers et des dossiers à un fichier texte, que ferait le script quand il rencontrerait une ligne /Exclude ?
En n’utilisant que l’objet FileSystemObject, le script devrait fermer le fichier de sortie, le réouvrir, rechercher les fichiers et les dossiers correspondant à la ligne /Exclude et écrire un second fichier texte sans les noms de fichiers exclus. Plutôt lourd, non ?
Téléchargez cette ressource

Rapport mondial 2025 sur la réponse à incident
Dans ce nouveau rapport, les experts de Palo Alto Networks, Unit 42 livrent la synthèse des attaques ayant le plus impacté l'activité des entreprises au niveau mondial. Quel est visage actuel de la réponse aux incidents ? Quelles sont les tendances majeures qui redessinent le champ des menaces ? Quels sont les défis auxquels doivent faire face les entreprises ? Découvrez les top priorités des équipes de sécurité en 2025.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- SI sous pression : 3 signes que vos flux sont mal orientés
- Transformation numérique : les entreprises françaises changent de méthode de gestion de projet en cours de route
- Innover de manière responsable et rapide avec l’IA en Europe
- Analyse Microsoft Patch Tuesday Août 2025
- L’essor des agents IA préfigure-t-il l’avenir des opérations en entreprise ?
