How-To :: Backup de Sistemas com o FSArchiver


Veremos aqui como realizar um backup de qualquer distribuição (como exemplo, o Gentoo), de qualquer sistema de arquivos, para qualquer partição seja de que tamanho for (desde que atenda a capacidade necessária para os dados), a ferramenta para tal será o FSArchiver.

Provavelmente disponível em qualquer distribuição decente, e dentre elas cito: Arch Linux, Debian, Slackware e Gentoo, veremos então como instalar a versão mais atualizada no Slackware no modo hard-core:

 
# wget https://slackbuilds.org/slackbuilds/14.2/system/fsarchiver.tar.gz
# tar xvf fsarchiver.tar.gz
# cd fsarchiver
# chmod +x fsarchiver.SlackBuild
# wget -nv https://github.com/fdupoux/fsarchiver/releases/download/0.8.4/fsarchiver-0.8.4.tar.gz
# sbopkg -r
# sbopkg -k -i "lz4 zstd"
# VERSION=0.8.4 sh fsarchiver.SlackBuild
# installpkg /tmp/fsarchiver-0.8.4-x86_64-1_SBo.tgz

Ou se quiserem o modo tetinha, usem a versão padrão do SlackBuilds, a 0.8.0, assim:

 
# sbopkg -r
# sbopkg -k -i fsarchiver

Utilização:

Execute o comando abaixo para ver as opções do programa, incluindo alguns exemplos:

 
$ fsarchiver -h

Este slideshow necessita de JavaScript.

Backup!

Porque será que o sistema de testes foi justamente o Gentoo?, ganhará um doce aquele que disser que é devido ao tempo necessário para instalar, configurar, etc, certo? bingo!

No exemplo abaixo, como dito farei uma cópia da partição onde está instalado o Gentoo e salvarei o arquivo na minha partição de backup:

 
# fsarchiver savefs -o /mnt/backup/ISOS/backup-fsa001-gentoo-amd64-20180417.fsa /dev/sdb6 -v -j2 -A

Este slideshow necessita de JavaScript.

É importante dizer algumas coisas a respeito da opções usadas, por exemplo caso seu processador possua muitos cores, você pode aumentar o valor -j para o seu nº de cores +1, a opção -A permite realizar a cópia de um sistema de arquivos que esteja montado, a opção -v (de verbose, não preciso explicar), para mais vejam o help do programa.

Logo, devo dizer que essa preocupação se deu porque meu HD principal e onde estão instalados 2 Slackwares (32 e 64 Bits), Gentoo e Void Linux, anda capengando, travando o sistema de vez em quando, por isso achei uma boa voltar a usar o FSArchiver, coisa que não fazia desde que usava o Arch Linux.

Então, para demonstrar pra valer, pego um HD de 250GB que tinha aqui guardado, removo sua única partição existente, crio 3 partições primárias (60GB Slack64, 60GB Slack32 e 75GB Gentoo) e 1 partição extendida para o Void Linux (35GB) e a sobra para a SWAP, sigam-me os bons:

 
# cfdisk /dev/sdd
# mkfs.ext4 /dev/sdd1
# mkfs.ext4 /dev/sdd2
# mkfs.ext4 /dev/sdd3
# mkfs.ext4 /dev/sdd5
# mkswap /dev/sdd6

Este slideshow necessita de JavaScript.

Listando as novas unidades:

# ls -al /dev/disk/by-uuid/

Restauração!

Agora faremos o processo inverso, que será a extração do arquivo previamente criado para um destino qualquer, lembrando que já formatei as partições, obtive as UUIDS das mesmas, etc, bastará pra mim (APENAS que o DESTINO comporte todos os dados) e nesse caso assim será pois na instalação anterior o espaço em disco eram de 35GB, estando 25GB ocupados, no novo DESTINO a partição é de 75GB, então:

 
# fsarchiver restfs backup-fsa001-gentoo-amd64-20180417.fsa id=0,dest=/dev/sdd3,label=gentoo,uuid=977f8c13-0480-40d2-8d0b-5d8fbc8619af

Este slideshow necessita de JavaScript.

Também é importante dizer algumas coisas a respeito das opções usadas, por exemplo aqui vemos restfs (em vez de savefs) por que será? rsrs. Onde se vê id=0 indica que este é o primeiro sistema de arquivos encontrado no arquivo criado quando executado o backup (SIM! você pode criar um único backup com mais de um sistema de arquivos), você também pode dividir o arquivo de backup em volumes com tamanho determinado, atribuir senhas, opções do mkfs, formatação de um para um novo sistema de arquivos, etc. Voltando… em dest=/dev/sdd3 é o caminho da nova partição previamente formatada, label=gentoo o rótulo escolhido e uuid=x.y.z, o resultado exibido com o comando:

# ls -al /dev/disk/by-uuid/
ou
# blkid

Finalizando!

Agora é chegada a hora de montar o sistema restaurado, editar o seu /etc/fstab e o arquivo /boot/grub/grub.cfg, pois o mesmo terá uma UUID diferente:

 
# mkdir /mnt/gentoo-new
# mount /dev/sdd3 /mnt/gentoo-new/
# ls /mnt/gentoo-new/
# ls /mnt/gentoo-new/boot/
# nano /mnt/gentoo/etc/fstab 
# nano /mnt/gentoo/boot/grub/grub.cfg
# reboot

Este slideshow necessita de JavaScript.

Se tudo der certo ao reiniciar em sua nova partição, execute o comando abaixo para atualizar o Grub de seu sistema:

 
# grub-mkconfig -o /boot/grub/grub.cfg 

Por via das dúvidas, antes de reiniciar anote a UUID da nova partição, pois em caso de erro, na tela do Grub tecle “e” na linha referente ao sistema e edite a UUID, como no exemplo abaixo:

Este slideshow necessita de JavaScript.

Abaixo, vejam o novo sistema, exibindo a montagem do antigo gentoo e a atualização deste novo:

montagem do velho Gentoo…
atualizando este novo Gentoo…

Abaixo seguem processos de cópia do Void Linux e Slackware 32Bits, neste novo Gentoo e desta vez dividindo o arquivo de backup em múltiplos volumes:

 
# fsarchiver savefs -s 650 -o /mnt/backup/ISOS/backup-fsa001-voidlinux-amd64-20180417.fsa /dev/sdc7 -v -j2 -A
# du -sh /mnt/backup/ISOS/backup-fsa001-voidlinux-amd64-20180417.f*

Este slideshow necessita de JavaScript.

 
# fsarchiver savefs -s 650 -o /mnt/backup/ISOS/backup-fsa001-slack32-20180417.fsa /dev/sdc2 -v -j2 -A
# du -sh /mnt/backup/ISOS/backup-fsa001-slack32-20180417.f*

Este slideshow necessita de JavaScript.

Por tratar-se de uma solução mais elegante, com este artigo sobre o fantástico FSArchiver, eu desaconselho vocês a utilizarem o constante do artigo abaixo (embora este também funcione):

HOW-TO :: CÓPIA DE INSTALAÇÃO PARA OUTRA PARTIÇÃO

Ou mesmo ferramentas como o Partimage, cujos prós e contras podem ser vistos no link abaixo:

FSArchiver – Comparison with partimage

t+

How-To :: Backup de Sistemas com o FSArchiver

6 comentários sobre “How-To :: Backup de Sistemas com o FSArchiver

  1. Ótimo artigo Edinaldo.
    Quando comecei a ler pensei que este programa seria semelhante ao antigo “Norton Ghost” mas, se entendi direito, ele não restaura nem a partição nem o sistema de arquivo anterior ao backup sendo necessário criá-los posteriormente antes da restauração. No entanto é uma ótima opção para se guardar uma cópia do sistema em eventuais falhas sejam elas de hardware ou software. Vou testar no openSUSE.
    Muito bom artigo.

    Curtir

    1. Valeu @zezao, realmente ajudará bastante, agora só me resta realizar a restauração dos outros sistemas e a cópia da minha partição de backup.

      Não dá pra confiar neste HD que estou usando. Pelo menos o principal já foi feito que é o gentoo, o Slack eu instalo em 30min.

      Um abraço!

      Curtir

  2. cronicaserrantes disse:

    ola, e o seguinte , tenho um servidor com centos7, no qual vou trocar o hd existente por um ssd de um tera.No novo ssd ja fiz a mesma instalaçao minimal que no servidor, mas nao consigo copiar as pastas que preciso.Como poderia fazer isso com fsarchiver?obriggado

    Curtir

  3. O argumento restfs SEMPRE recria o sistema de arquivos. Como por padrão o FSArchiver preserva rótulo e UUID originais, não precisa colocar “label=” e “uuid=” ao usar restfs se for para especificar os mesmos do sistema de arquivo original! As opções “label=” e “uuid=” foram criadas para quando queremos justamente restaurar com rótulo e UUID diferentes dos originais. 😉

    Curtir

Deixe um comentário