SuSE 15 SP3 BMR Restore and Disaster Recovery
by Ramses Soto-Navarro ramses@sotosystems.com, 8/16/2021
Overview
Rescue Boot
Rescue Network
Backup Rsync
Backup Squashfs
Recovery Format
Overview
Brief bulletpoints on BMR backup restore and disaster recovery for SuSE 15 SP3. The procedure is the same for the previous release SuSE 12 SP5. Audience is experienced Linux systems administrators.
Rescue Boot
Very brief steps for cold backup:
Boot to DVD, select More, Rescue.
vgscan vgchange -ay lvs mkdir /mnt/root mount /dev/vg1/lvroot /mnt/root mount /dev/sda1 /mnt/root/boot
Rescue Network
dhcpd eth0
[Alternative] configure IP Address manually:
ip addr add 172.24.176.196/16 dev eth0 ip link set eth0 up ip route add 172.24.1.1 dev eth0 ip route add default via 172.24.1.1 echo -ne "nameserver 172.24.1.1nsearch example.com" > /etc/resolv.conf
Backup Rsync
Brief steps for cold remote backup:
time rsync -auv . -e ssh user1@remotepc:/backup/suse153/
Backup Squashfs
Squashfs the entire system on remotepc then mount:
cd /backup/suse153/ mksquashfs . /backup/suse153.sqfs mount /backup/suse153.sqfs /backup/rescue/
Recovery Format
Brief BMR format, restore, recovery.
* Create VM
* Boot to DVD in Rescue Mode.
* Format boot partition; fdisk /dev/sda
* Format logical volumes lvswap and lvroot; pvcreate, vgcreate, lvcreate
* mkswap -f /dev/vg1/lvswap; mkfs.ext4 /dev/vg1/lvroot; mkfs.ext4 /dev/sda1
* Mount boot and root; mount /dev/vg1/lvroot /mnt/root; mount /dev/sda1 /mnt/root/boot/
* Rsync restore: cd /mnt/root; rsync -au -e ssh remotepc:/backup/rescue/ .
* [Alternative] Make the pseudo directories:
cd /mnt/root mkdir dev mnt proc run selinux srv sys tmp chmod 1777 tmp
* Mount chroot:
cd /mnt/root for a in dev sys proc; do mount -o bind /$a $a ; done chroot . /bin/bash
* Mount new /boot UUID (edit the new UUID for boot):
ls -l /dev/disk/by-uuid | grep sda1 >> etc/fstab vi etc/fstab
* Remove network persistent rules:
rm -f /etc/udev/rules.d/70-persistent-net.rules
* Verify GRUB device:
vi /boot/grub2/device.map
* Modify and initialize grub then rebuild ramdisk:
vi etc/defaults/grub #GRUB_CMDLINE_LINUX_DEFAULT="root=/dev/vg1/lvroot" GRUB_CMDLINE_LINUX_DEFAULT="resume=/dev/vg1/lvswap" GRUB_CMDLINE_LINUX"biosdevname=0 net.ifnames=0"
* Initialize GRUB and the ramdisk:
grub2-install /dev/sda /usr/sbin/grub2-mkconfig -o /boot/grub2/grub.cfg dracut -o "dbus" -f
* Unmount, checkdisk and reboot:
cd umount -a fsck /dev/vg1/lvroot reboot
The End.