Dump

De wiki.nexiat.fr
Aller à la navigation Aller à la recherche
Fiche express
Domaine Sauvegarde de systèmes de fichiers
Commande dump
Contexte Unix/Linux, sauvegarde niveau système de fichiers (par opposition à niveau fichier) vers bande, disque ou fichier
Voir aussi Restore (restauration), Tar (sauvegarde niveau fichier)

dump effectue des sauvegardes complètes ou incrémentales d'un système de fichiers et les écrit sur une bande magnétique, un disque ou un fichier. Contrairement à tar, dump travaille directement au niveau du système de fichiers (inodes) plutôt qu'au niveau des fichiers, ce qui lui permet de gérer des sauvegardes incrémentales fiables par niveaux numérotés et un fichier d'archive décrivant le contenu et la position physique des données sauvegardées. La restauration se fait avec la commande complémentaire restore.

Syntaxe et exemple

dump -0 -A archfile -L label -f device filestosave

# exemple
dump -0 -A /opt/tape/serveur.arch -L "serveur" -f /dev/st0 /srv/

Paramètres principaux

  • -0 à -9 : niveau de sauvegarde (voir ci-dessous) ; -0 sauvegarde tout le système de fichiers
  • -A archfile : chemin du fichier d'archive, qui contient l'arborescence sauvegardée et la position physique de chaque fichier sur le support, ce qui permet de cibler une restauration sans dérouler toute la bande
  • -L label : étiquette écrite sur le support (16 caractères maximum), toujours entre guillemets
  • -f device : support de destination (lecteur de bande SCSI, fichier, disque…)
  • dernier argument : point de montage ou système de fichiers à sauvegarder

Niveaux de sauvegarde

Une sauvegarde se fait toujours à un niveau donné, de 0 à 9. Le niveau 0 sauvegarde l'intégralité du système de fichiers. Un niveau i ne sauvegarde que ce qui a changé depuis la dernière sauvegarde à un niveau strictement inférieur, ce qui permet de construire des chaînes de sauvegardes incrémentales à partir d'un niveau 0 initial.

Cloner un serveur physique

Sauvegarde locale de chaque système de fichiers dans un fichier, pratique pour cloner un serveur avant une opération risquée :

mkdir /root/dump
dump -0uf /root/dump/boot.dump /dev/sda1
dump -0uf /root/dump/root.dump /dev/rootvg/rootlv
# répéter pour chaque système de fichiers à sauvegarder

Restauration complète sur nouveau matériel

Procédure de reconstruction d'un serveur à partir des fichiers dump réalisés ci-dessus, typiquement après une panne matérielle.

Partitionnement et volumes

Démarrer sur un support de secours (mode emergency) puis recréer le partitionnement et les volumes LVM :

fdisk /dev/sda
pvcreate /dev/sda2
tune2fs -L /boot /dev/sda1
vgcreate rootvg /dev/sda2
lvcreate -L 10G -n rootlv rootvg
mkfs.ext4 /dev/rootvg/rootlv
mkswap /dev/rootvg/swaplv

Restauration des données

Monter chaque système de fichiers reconstruit et y restaurer le dump correspondant avec restore (répéter pour chaque point de montage, /boot compris) :

mkdir /mnt/sysimage
mount /dev/rootvg/rootlv /mnt/sysimage
cd /mnt/sysimage
restore -rf /root/dump/root.dump

mount /dev/sda1 /mnt/sysimage/boot
cd /mnt/sysimage/boot
restore -rf /root/dump/boot.dump

Reconfiguration réseau et identité

Avant de redémarrer sur le nouveau matériel, adapter l'adresse IP et l'adresse MAC dans la configuration réseau, et vérifier le nom d'hôte :

vi /mnt/sysimage/etc/sysconfig/network-scripts/ifcfg-eth0
vi /mnt/sysimage/etc/sysconfig/network

Chroot et réinstallation de GRUB

mount -o bind /dev /mnt/sysimage/dev
mount -o bind /proc /mnt/sysimage/proc
mount -o bind /sys /mnt/sysimage/sys
chroot /mnt/sysimage /bin/bash

grub-install /dev/sda

Si grub-install échoue, réinstaller GRUB manuellement en console GRUB :

grub
grub> device (hd0) /dev/sda
grub> root (hd0,0)
grub> setup (hd0)

Swap et nettoyage

Recréer le swap et purger les traces de restauration ainsi que les anciens logs avant le redémarrage :

swapoff /dev/rootvg/swaplv
mkswap /dev/rootvg/swaplv
swapon /dev/rootvg/swaplv

find / -name restoresymtable -exec rm {} \;
cd /var/log
rm -rf *.log *.gz */*.gz *.pru */*.pru */*.nmon

reboot

Après redémarrage, en cas de systèmes de fichiers multipath, revalider la découverte des chemins et régénérer l'image initrd si nécessaire :

scsi-scan
multipath -r
multipath -ll
dracut --force

Voir aussi

  • Restore — commande complémentaire de restauration des dumps
  • Tar — outil complémentaire de sauvegarde, au niveau fichier plutôt qu'au niveau système de fichiers