# Sauvegarde et restauration des systèmes de fichiers XFS {{INLINETOC}} La sauvegarde et la restauration du système de fichiers XFS impliquent ces utilitaires: * **xfsdump** pour créer la sauvegarde * **xfsrestore** pour la restauration à partir d'une sauvegarde ## Fonctionnalités de la sauvegarde et de la restauration XFS ### Sauvegarde On peut utiliser l'utilitaire **xfsdump** pour: * Effectuer des sauvegardes sur des images de fichiers ordinaires. * Une seule sauvegarde peut être écrite dans un fichier normal. * Effectuer des sauvegardes sur des lecteurs de bande. * L'utilitaire **xfsdump** permet également d'écrire plusieurs sauvegardes sur la même bande. Une sauvegarde peut s'étendre sur plusieurs bandes. * Pour sauvegarder plusieurs systèmes de fichiers sur une seule unité de bande, simplement en sauvegardant sur une bande contenant déjà une sauvegarde XFS. Cela ajoute la nouvelle sauvegarde à la précédente. Par défaut, **xfsdump** ne remplace jamais les sauvegardes existantes. * Créer des sauvegardes incrémentielles. * L'utilitaire **xfsdump** utilise des niveaux de vidage pour déterminer une sauvegarde de base à laquelle les autres sauvegardes sont relatives. Les nombres de 0 à 9 rapportent aux niveaux croissants de vidage. Une sauvegarde incrémentielle ne sauvegarde que les fichiers modifiés depuis le dernier vidage d'un niveau inférieur: * Pour effectuer une sauvegarde complète, effectuez un vidage de niveau 0 sur le système de fichiers. * Un vidage de niveau 1 est la première sauvegarde incrémentielle après une sauvegarde complète. La sauvegarde incrémentielle suivante serait le niveau 2, qui ne sauvegarde que les fichiers modifiés depuis le dernier vidage de niveau 1; et ainsi de suite jusqu'à un niveau maximal de 9. * Exclure des fichiers d'une sauvegarde en utilisant des indicateurs de taille, de sous-arbre ou d'inode pour les filtrer. ### Restauration L'utilitaire **xfsrestore** restaure les systèmes de fichiers à partir de sauvegardes produites par xfsdump . L'utilitaire **xfsrestore** a deux modes: * Le mode simple permet aux utilisateurs de restaurer un système de fichiers entier à partir d'un vidage de niveau 0. C'est le mode par défaut. * Le mode cumulatif permet la restauration du système de fichiers à partir d'une sauvegarde incrémentielle: c'est-à-dire du niveau 1 au niveau 9. Un identifiant de session ou une étiquette de session unique identifie chaque sauvegarde. La restauration d'une sauvegarde à partir d'une bande contenant plusieurs sauvegardes nécessite son ID de session ou son étiquette correspondante. Pour extraire, ajouter ou supprimer des fichiers spécifiques d'une sauvegarde, entrer dans le mode interactif **xfsrestore** . Le mode interactif fournit un ensemble de commandes permettant de manipuler les fichiers de sauvegarde. ## Sauvegarde d'un système de fichiers XFS Cette section explique comment sauvegarder le contenu d'un système de fichiers XFS dans un fichier ou une bande. ### Sauvegarde d'un système de fichiers XFS Utiliser la commande suivante pour sauvegarder un système de fichiers XFS: ``` # xfsdump -l level [-L label] -f backup-destination path-to-xfs-filesystem ``` * **level**: niveau de vidage de votre sauvegarde. Utilisez 0 pour effectuer une sauvegarde complète ou de 1 à 9 pour effectuer des sauvegardes incrémentielles conséquentes. * **backup-destination**: chemin où on souhaite stocker la sauvegarde. La destination peut être un fichier normal, un lecteur de bande ou un lecteur de bande distant. Par exemple, `/backup-files/Data.xfsdump` pour un fichier ou `/dev/st0` pour un lecteur de bande. * **path-to-xfs-filesystem**: point de montage du système de fichiers XFS que l'on souhaite sauvegarder. Par exemple, `/mnt/data/` . Le système de fichiers doit être monté. * l'option **-L label** permet d'identifier plus facilement lors de la restauration quand on sauvegarde plusieurs systèmes de fichiers sur une seule unité de bande. Ajouter une étiquette de session à chaque sauvegarde. Remplacer `label` par un nom quelconque pour identifier la sauvegarde: par exemple, `backup_data`. ### Sauvegarde de plusieurs systèmes de fichiers XFS Par exemple pour sauvegarder les systèmes de fichiers XFS montés dans les répertoires `/boot/` et /data/ et les enregistrer sous forme de fichiers dans le répertoire `/backup-files/` : ``` # xfsdump -l 0 -f /backup-files/boot.xfsdump /boot # xfsdump -l 0 -f /backup-files/data.xfsdump /data ``` Pour sauvegarder plusieurs systèmes de fichiers sur une seule unité de bande, ajouter une étiquette de session à chaque sauvegarde à l'aide de l'option `-L label` : ``` # xfsdump -l 0 -L "backup_boot" -f /dev/st0 /boot # xfsdump -l 0 -L "backup_data" -f /dev/st0 /data ``` ### Freeze et unfreeze d’un système de fichiers XFS Pour prendre un instantané basé sur le matériel d'un système de fichiers XFS, on peut arrêter temporairement les opérations d'écriture sur ce système. : Il n'est pas besoin de suspendre explicitement les opérations d'écriture lorsqu'on utilise la commande `lvcreate` pour prendre un instantané LVM. Pour geler et libérer un système de fichiers XFS, utiliser les options `-f` et `-u` avec la commande **xfs\_freeze**, par exemple: ``` # xfs_freeze -f /myxfs # # ... Take snapshot of file system ... # xfs_freeze -u /myxfs ``` On peut également utiliser la commande **xfs\_freeze** avec les systèmes de fichiers btrfs, ext3 et ext4. ## Restauration d'un système de fichiers XFS Cette section explique comment restaurer le contenu d'un système de fichiers XFS à partir d'une sauvegarde de fichier ou sur bande. ### Restauration d'un système de fichiers XFS à partir d'une sauvegarde La commande de restauration de la sauvegarde varie selon que l'on restaure une sauvegarde complète ou incrémentielle, ou si on restaure plusieurs sauvegardes à partir d'un seul lecteur de bande: ``` # xfsrestore [-r] [-S session-id] [-L session-label] [-i] -f backup-location restoration-path ``` * **-f backup-location**: emplacement de la sauvegarde. Cela peut être un fichier normal, un lecteur de bande ou un lecteur de bande distant. Par exemple, `/backup-files/Data.xfsdump` pour un fichier ou `/dev/st0` pour un lecteur de bande. * **restoration-path**: chemin du répertoire dans lequel on souhaite restaurer le système de fichiers. Par exemple, `/mnt/data/`. * **option -r**: pour restaurer un système de fichiers à partir d'une sauvegarde incrémentielle (niveaux 1 à 9) * **options -S ou -L**: pour restaurer une sauvegarde à partir d'un lecteur de bande contenant plusieurs sauvegardes, spécifiez la sauvegarde à l'aide des . * `-S` permet de choisir une sauvegarde en fonction de son ID de session, tandis que le `-L` permet de choisir en fonction de l’étiquette de la session. Pour obtenir l'ID de session et les étiquettes de session, utiliser la commande `xfsrestore -I`. * Remplacer `session-id` par l'identifiant de session de la sauvegarde. Par exemple, `b74a3586-e52e-4a4a-8775-c3334fa8ea2c`. Remplacer `session-label` par l'étiquette de session de la sauvegarde. Par exemple, `\my_backup_session_label` . Pour utiliser xfsrestore interactive, utilisez l'option -i. La boîte de dialogue interactive commence après la fin de la lecture par `xfsrestore` du périphérique spécifié. Les commandes disponibles dans le shell interactif `xfsrestore` incluent `cd`, `ls`, `add`, `delete` et `extract` ; pour une liste complète des commandes, utiliser la commande help . ### Restauration de plusieurs systèmes de fichiers XFS Pour restaurer les fichiers de sauvegarde XFS et enregistrer leur contenu dans des répertoires sous `/mnt/` : ``` # xfsrestore -f /backup-files/boot.xfsdump /mnt/boot/ # xfsrestore -f /backup-files/data.xfsdump /mnt/data/ ``` Pour restaurer depuis une unité de bande contenant plusieurs sauvegardes, spécifiez chaque sauvegarde par son étiquette de session ou son ID de session: ``` # xfsrestore -f /dev/st0 -L "backup_boot" /mnt/boot/ # xfsrestore -f /dev/st0 -S "45e9af35-efd2-4244-87bc-4762e476cbab" /mnt/data/ ``` ### Messages d'information lors de la restauration à partir d'une bande Lors de la restauration d'une sauvegarde à partir d'une bande avec des sauvegardes de plusieurs systèmes de fichiers, l'utilitaire **xfsrestore** peut retourner divers messages. Les messages indiquent si une correspondance de la sauvegarde demandée a été trouvée lorsque **xfsrestore** examine chaque sauvegarde sur la bande dans un ordre séquentiel. Par exemple: ``` xfsrestore: préparation du lecteur xfsrestore: examen du fichier multimédia 0 xfsrestore: la session d'inventaire (8590224e-3c93-469c-a311-fc8f23029b2a) ne correspond pas à la session de l'en-tête de média (7eda9f86-f1e9-4dfd-b1d4-c50467912408) xfsrestore: examen du fichier multimédia 1 xfsrestore: la session d'inventaire (8590224e-3c93-469c-a311-fc8f23029b2a) ne correspond pas à la session de l'en-tête de média (7eda9f86-f1e9-4dfd-b1d4-c50467912408) [...] ``` Les messages d'information continuent à apparaître jusqu'à ce que la sauvegarde correspondante soit trouvée.