GNU/Linux: clonagem automática de um sistema com partições criptografadas com LUKS+dm-crypt

GNU/Linux: clonagem automática de um sistema com partições criptografadas com LUKS+dm-crypt

Eu gostaria de ter um clone atualizado de um sistema (Debian) GNU/Linux em um HDD externo e, portanto, poder substituir o HDD interno pelo HDD externo a qualquer momento e estar pronto e funcionando rapidamente. Como o sistema está em um laptop, não posso confiar em uma solução de espelhamento baseada em hardware.

Desejo que o procedimento de backup seja o mais automático e descomplicado possível. Por exemplo, ele pode ser executado automaticamente no desligamento sempre que um HDD externo estiver conectado.

Já tenho um HDD externo com um clone das partições do sistema.

A ressalva é que a partição que hospeda o/O diretório é criptografado com LUKS+dm-crypt e prefiro evitar inserir senhas novamente para o backup.

Eu poderia montar a partição criptografada externa automaticamente antes do desligamento.

Existe uma solução pronta? Por favor, responda apenas se isso acontecer, porque se isso não acontecer, postarei uma pergunta específica para implementar uma solução personalizada.

Agradecimentos para sua atenção.

Responder1

O backup será muito mais rápido se você fizer backup apenas do que foi alterado. Isso precisa ser feito no nível do arquivo, com contêineres criptografados montados, porque os arquivos carregam um carimbo de data/hora que permite que a ferramenta de backup ignore arquivos que não foram modificados desde o último backup.

Para fazer a cópia do arquivo,sincronizar novamenteé a ferramenta de escolha. Você precisa sincronizar cada sistema de arquivos com o correspondente no disco rígido externo:

rsync -ax / /media/backup-hdd/root

Use um nome de dispositivo de bloco dedicado e um ponto de montagem dedicado para cada partição, para evitar depender de nomes genéricos como sdb1e /media/sdb1que poderia ser uma unidade diferente. Isso é feito via udev; verAutomatizando a sequência de comandos de montagem.

Para executar um script no momento do desligamento, coloque-o /etc/init.de crie links simbólicos para ele /etc/rc0.de /etc/rc6.d(0 para desligar, 6 para reinicializar) chamado S01my-backup. O script precisará fazer várias coisas:

  • Verifique se a unidade de backup já está montada (procurando o ponto de montagem em /proc/mounts).
  • Se a unidade de backup não estiver montada, verifique se ela está presente (procurando pelo dispositivo de bloco em /dev).
  • Se a unidade de backup não estiver presente, desista ou peça ao usuário para conectá-la.
  • Se o volume criptografado não estiver montado, você precisará solicitar a senha ao usuário. Assim que o volume criptografado estiver disponível, monte o(s) sistema(s) de arquivos.
  • Finalmente, corra rsync.

Se não quiser montar o volume criptografado externo, você poderá copiar o volume criptografado no atacado. Embora simples, isso tem um grande defeito: é muito lento, já que você precisa recriar a imagem de todo o disco a cada vez. Além disso, se isso falhar no meio, você acabará com um backup ilegível – o backup estará bem formado somente após uma passagem completa. Você também deve mudar a montagem de origem para somente leitura, caso contrário corre o risco de copiar dados inconsistentes.

informação relacionada