====== Fare il backup completo di un intero sistema Gnu/Linux ======
Autore: **//Fabio Di Matteo//** \\ Ultima revisione: **// 11/07/2024 - 12:47 //** // //
L'idea è quella di fare un backup file per file di un intero sistema Gnu/Linux in esecuzione. Sul disco di destinazione ricreare partizioni aggiustare **/etc/fstab** in modo opportuno e installare il bootloader Grub. Per copiare i file useremo il tool Rsync in modalità archivio. In questa modalità conserverà gli attributi dei file e terra conto dei link senza risolverli. \\
===== Sistemi BIOS =====
Ecco un esempio del comando per file root che contengono la directory boot all'interno:
sudo rsync -aAXv / --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} /mnt/root_fs
//Una volta copiata tutta la root dobbiamo modificare **/etc/fstab** aggiustando gli uuid delle partizioni originali con quelli della nuova partizione. E' utile a tale scopo il comando **blkid**. Procediamo in seguito all'installazione del bootloader GRUB.//
Entriamo in chroot nella cartella montata per la copia della root appena fatta /mnt/root_fs. Io ho usato una archLinux e quindi ho a disposizione lo script arch-chroot.
arch-chroot /mnt/root_fs
grub-install --target=i386-pc /dev/sdx
grub-mkconfig -o /boot/grub/grub.cfg
Dove /dev/sdx deve essere cambiato con il device del disco che conterrà grub. Dico disco, non partizione. Quindi non includere un numero tipo /dev/sd1 per esempio.
===== Sistemi EFI =====
Se invece volessimo backuppare sistemi efi con la directory boot su un'altra partizione dobbiamo aggiustare il comando come segue:
sudo rsync -aAXv / --exclude={"/dev/*","/boot/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} /mnt/root_fs
sudo rsync -aAXv /boot/ /mnt/boot_fs
//Una volta copiata tutta la root dobbiamo modificare **/etc/fstab** aggiustando gli uuid delle partizioni originali con quelli della nuova partizione. E' utile a tale scopo il comando **blkid**. Procediamo in seguito all'installazione del bootloader GRUB.//
arch-chroot /mnt/root_fs/
mount -t vfat /dev/(partizione dove c'è boot) /boot/
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=grub
grub-mkconfig -o /boot/grub/grub.cfg