En el blog anterior realizamos una respaldo completo de un sistema linux con el comando tar, donde se restauro el sistema despues de un error en una carpeta del sistema.
Ahora veremos como restaurar nuestro sistema si también se nos daña el sistema de arranque.
Generamos nuestro respaldo
su -
mkdir /mnt/backup
mount /dev/vdb /mnt/backup
Podemos automatizar el proceso con el siguiente script el cual guardaremos como fullsystemBackup.sh
vim fullsystemBackup.sh
#!/bin/bash
TODAY=`/bin/date +%Y%m%d-%H%M`
FILENAME="FullBackup-${TODAY}"
tar -cvpzf /mnt/backup/${FILENAME}.tar.gz --exclude=proc --exclude=sys --exclude=dev/pts --exclude=tmp --exclude=mnt --exclude=media /
exit 0
Asignamos permisos de ejecución y ejecutamos el script
chmod 750 /fullsystemBackup.sh
./fullsystemBackup.sh
Revisamos que la copia se haya realizado satisfactoriamente.
ls -lah /mnt/backup
La copia se ha realizado correctamente.
Ahora provocaremos un error en el sistema borrando la carpeta bin y la carpeta boot para simular un problema con el arranque.
rm -rf /bin /boot
4.- Restauramos nuestra copia
Arrancamos nuestro sistema mediante una iso live de linux, en mi caso utilizare una iso de gentoo.
Verificamos donde se encuentra nuestro sistema de archivos con lsblk
lsblk
En mi caso para este sistema yo solo cuento con 3 particiones / /boot y swap, dependiendo si cuentas con mas particiones deberías montarlas para garantizar que se restauren todos los archivos de tu copia, en mi caso solo montare / y /boot
Se crean las carpetas correspondientes para montar el sistema de archivos
mkdir /mnt/sistema
mkdir /mnt/sistema/boot
mkdir /mnt/sistema/boot/efi
Ahora montamos las particiones
mount /dev/vda /mnt1/sistema
mount /dev/vda3 /mnt/sistema/boot/efi
Se crea la carpeta de respaldo y se monta la unidad donde tenemos el respaldo
mkdir /mnt/respaldo
mnt /dev/sdb /mnt/respaldo
Ya podemos restaurar el respaldo desde el archivo tar hacia el sistema de archivos con el comando tar -xvzf /ruta/respaldo.tar.gz -C /ruta/sistema de archivos
tar -xvzf /mnt/respaldo/FullBackup.tar.bz -C /mnt/sistema --numeric-owner
Al reiniciar podemos observar que existe un daño en el gestor de arranque por lo que procedemos a repararlo.
lsblk
mount /dev/sdb2 /mnt/
mount /dev/sdb1 /mnt/boot/efi
montamos los sistemas de archivos virtuales
for i in /dev /dev/pts /proc /sys /sys/firmware/efi/efivars /run; do sudo mount -B $i /mnt$i; done
Entramos al sistema corrupto con chroot
chroot /mnt
reinstalamos el grub
grub-install /dev/sdb
Hacemos una actualizacoin del grub
update-grub