[Linux] Restauration du système d'exploitation avec la commande restore

L'histoire de la récupération de la zone système à l'aide de la commande dump / restore.

Le modèle d'image pouvant être utilisé dans IBM Cloud, il est facile de sauvegarder et de restaurer uniquement la zone du système d'exploitation en cliquant simplement sur le portail. Cependant, il y a les préoccupations suivantes. (Au 08/03/2018) ・ Il en coûte 25 $ / Go par mois pour stocker le modèle. ・ Le mot de passe du système d'exploitation passe au nouveau ・ Les paramètres autour du réseau tels que l'adresse IP sont initialisés. -Bien qu'il existe une mesure pour recharger l'OS, la zone du système sera complètement mise à jour et la version du noyau sera mise à jour de force. Comme mentionné ci-dessus, s'il est difficile d'utiliser le service de sauvegarde spécifique au cloud et qu'il n'y a qu'un seul serveur de sauvegarde Linux, que devez-vous faire lorsque le serveur de sauvegarde lui-même doit être restauré? Ce sera.

A propos, voici la "procédure de récupération à l'aide de la commande dump / restore au niveau de l'OS". En tant que flux,

-② Démarrez à partir du support et démarrez le mode de secours (en utilisant le démarrage de secours dans le cloud)

-③ Créer une partition en fonction de la destination de restauration

-④ Créer un système de fichiers pour / et / boot

-⑤ Monter et restaurer

-⑥ Lier / dev, / proc, / sys

--⑦ Système restauré / racine

--⑧ Réécrire /boot/grub2/grub.cfg

--⑨ Réécrire / etc / fstab

--⑩ Réinstaller GRUB2 sur le périphérique de démarrage PReP (/ dev / xvda)

--⑪ Retirez le support et redémarrez

~~ Non ~ C'est ennuyeux. ~~

Préparation préalable

-La zone OS est le périphérique IBM Cloud VSI "/ dev / xvda". -Il est supposé que le 2nd DISK FS est monté sur / bkup comme destination de sauvegarde.

Tout d'abord, obtenons à l'avance les informations de partition et LVM.

sfdisk -d /dev/xvda > /bkup/sfdis.dat
pvdisplay > /bkup/pvdis.dat
vgdisplay > /bkup/vgdis.dat
cat /etc/fstab > /bkup/fstab.dat
mount > /bkup/mount.dat
blkid > /bkup/blkid.dat
vgcfgbackup nom VG-f /bkup/vgcfg.dat (/Mis en œuvre lorsque LVM est construit dans la zone)

Installer s'il n'y a pas de commande de vidage

yum install dump

--- Mise en garde --- * Le vidage ne peut être utilisé que lorsque le type FS est "EXT". * Défini sur "EXT" dans cette procédure en fonction du type VSI d'IBM Cloud. * Vérifiez le type FS, et si "XFS", installez "xfsdump" . Les options changent également légèrement. -------------
# ① Faites une sauvegarde avec la commande dump. ``` dump 0 -f /bkup/root.dump /dev/xvda2 dump 0 -f /bkup/boot.dump /dev/xvda1 ``` Ceci termine la sauvegarde. Vérifiez sous / bkup pour vous assurer que vous disposez d'un fichier .dump.
# ② Démarrez à partir du support et démarrez le mode de secours Si c'est de la physique, lancez-vous dans les médias Montage ISO depuis l'écran de gestion dans un environnement virtuel Dans le cloud, récupérez le démarrage à partir du portail client. (IBM Cloud)

À propos, si la version du support est trop ancienne, elle sera interceptée dans les étapes suivantes, alors rendez-la aussi proche que possible du système à restaurer. C'est sûr s'il s'agit de la même version majeure. En outre, le support de secours et l'architecture du système de restauration (64, 32 bits) doivent correspondre.

③ Créer une partition

Amorçons ISO et entrons en mode de secours avec la console KVM. Pour CentOS7, sélectionnez "Rescue a CentOS system" dans "Dépannage". 20180615134900.jpg

sh-4.2#

OK si une invite telle que Vous devriez pouvoir voir le 2ème périphérique DISK, Créez un répertoire de fichiers de restauration approprié. (/ Bkup dans cette procédure)

Montez / bkup où se trouve le fichier de restauration

mount /dev/vg_bkup/lv_bkup /bkup

Activé si l'état de l'appareil n'est pas disponible et ne peut pas être effectué.

lvchange --available y /dev/vg_bkup/lv_bkup

Vérifiez si vous pouvez voir le fichier sauvegardé.

ls -l /bkup

Restaurer les informations de configuration à partir de sfdis.dat obtenues à l'avance

sfdisk --force /dev/xvda < /bkup/sfdis.dat
  • Si vgcfgbackup a été effectué à l'avance, les opérations suivantes sont également effectuées.
lvm vgscan
lvm vgcfgrestore -f /bkup/vgcfg.dat ${VGNAME}

# ④ Recréer le système de fichiers Recréez le système pour / et / boot. Associons le type FS à la machine réelle.
mkfs.ext3 -f /dev/xvda1
mkfs.ext3 -f /dev/xvda2

# ⑤ Monter et restaurer Étant donné que le système de fichiers à restaurer doit être monté, créez une destination de montage temporaire. Le nom et le chemin peuvent être n'importe quoi.
mkdir /restore

Monter et restaurer la racine

  • Faites attention au nom de l'appareil
mount /dev/xvda2 /restore
cd /restore
restore -rf /bkup/root.dump

Démontage de la zone principale

cd /
umount /restore

Monter et restaurer le démarrage

mount /dev/xvda1 /restore
cd /restore
restore -rf /bkup/boot.dump

Démonter

cd /
umount /restore

Montez à nouveau la racine

mount /dev/xvda2 /restore

# ⑥ Liez / dev, / proc, / sys Si vous ne le faites pas, il semble que la dernière relation grub2 ne fonctionnera pas, alors liez chaque
mount --bind /proc /mnt/sysimages/proc
mount --bind /sys /mnt/sysimages/sys
mount --bind /dev /mnt/sysimages/dev

# ⑦ Système restauré / racine Changer de route avec `chroot`
chroot /restore

Montage / démarrage

mount /dev/xvda1 /boot

# ⑧ Réécrire /boot/grub2/grub.cfg L'UUID a changé lorsque j'ai recréé le système de fichiers. Par conséquent, modifiez l'UUID de (/ boot) écrit dans /boot/grub2/grub.cfg . Il est nécessaire de le réécrire dans l'UUID de celui recréé. Puisque grub.cfg est NG pour l'édition directe, exécutez la commande suivante pour régénérer grub.cfg en fonction de l'environnement actuel.
/sbin/grub2-mkconfig -o /boot/grub2/grub.cfg 

# ⑨ Réécrire / etc / fstab Le / etc / fstab doit également être réécrit. Cela peut être modifié directement, mais j'ai peur de l'écriture manuscrite, alors exécutez la commande suivante.
export NEWUUID=`blkid | grep /dev/xvda1 | awk '{print $2}' | cut -d '"' -f 2`
export OLDUUID=`cat /bkup/fstab.dat | grep /boot | awk '{print $1}' | cut -d '=' -f 2`
sed -i.org -e "s/UUID=${OLDUUID}/UUID=${NEWUUID}/g" /etc/fstab

# ⑩ Réinstaller GRUB2 sur le périphérique de démarrage PReP (/ dev / xvda)
/sbin/grub2-install /dev/xvda

"install finished. no error reported" Est affiché, OK

⑪ Retirez le support et redémarrez

Ensuite, redémarrez et démarrez à partir du système restauré.

Cette procédure est une procédure pour supprimer temporairement le FS dans la zone OS, donc soyez prudent lorsque vous l'exécutez. De plus, comme les commandes sont sur la console, je ne pense pas que vous puissiez les copier. Il peut être bon de créer un script de la commande ci-dessus avec la sauvegarde.
Au dessus de

Recommended Posts