Backup / Clone de uma partição btrfs

7

É possível fazer backup de uma partição btrfs textualmente (incluindo todas as estruturas compartilhadas que economizam espaço marcando árvores de instantâneos como COW) em outra? Por exemplo, eu gostaria de fazer o backup da minha partição raiz que possui alguns subvolumes btrfs (capturas instantâneas da / própria).

A única maneira de pensar é usar uma ferramenta de cópia de bloco como dd , mas isso é ineficiente, pois minha partição está apenas 20% cheia e pretendo fazer o backup regularmente. Eu já backup tudo incrementalmente usando rsync , então isso não é uma solução alternativa para outro problema. Eu simplesmente preciso de um pouco para clonar bit da minha partição btrfs sem ter que usar uma ferramenta como dd .

Eu sei que o ext3, por exemplo, fornece um utilitário de despejo e restauração. Esse é o tipo de coisa que estou procurando.

UPDATE

Aqui está uma atualização para esclarecer o fato de que eu quero ser capaz de acessar os arquivos no armazenamento de backup da mesma maneira que eu posso no disco ao vivo (ou seja, eu não quero armazenar arquivos de despejo no armazenamento de backup).

    
por Mansour 11.10.2010 / 07:53

5 respostas

3

partclone é a ferramenta que você está procurando.

  • suporta muitos sistemas de arquivos linux, incluindo o BTRFS
  • até suporta alguns outros sistemas de arquivos (como FAT ou exFAT)
  • ao contrário de dd , ele consulta o mapa de alocação de sistemas de arquivos (por exemplo: tabelas FAT e FAT, mapas de extensão BTRFS etc.) e clona apenas os blocos usados.

Dependendo do seu padrão de uso:

  • use o -b (long: --dev-to-dev ) se o dispositivo preto de origem e de destino de backup estiver visível na mesma máquina (basicamente se ambos os discos estiverem conectados ao mesmo computador).
  • ou use -c e -r (long: --clone e --restore ) para primeiro clonar no formato de imagem do partclone na máquina de origem e, em seguida, restaurar a partir da imagem na máquina de backup
  • de acordo com a página do partclone , é possível canalizar imagens, portanto, deve ser possível copiar partições pela rede sem salvar arquivos reais, se você estiver com pouco espaço, mas tiver uma rede extremamente confiável.

Uma maneira completamente diferente de lidar com o problema seria usar o mecanismo btrfs send e btrfs receive .

  • Isso NÃO produzirá cópias de dispositivo de bloco para o setor
  • mas, ao fornecer corretamente referências em ambas as extremidades, é também capaz de manter as referências entre arquivos ref-linked (partes de).

Portanto, o próprio mecanismo do btrfs não é uma cópia perfeita do setor (ao contrário do partclone), mas é uma cópia perfeita extensão (muito melhor que rsynv -aSHAX que lida apenas com hardlinked arquivos).

    
por 10.11.2016 / 01:53
1

Canalize a saída de dd por meio de algo como bzip2 ou seu outro programa de compressão favorito que lerá da entrada padrão. Fiz isso em um disco de 500 GB que teve uma instalação relativamente pequena e acabou com um arquivo de 8 GB.

    
por 11.10.2010 / 08:27
0

Ainda não tentou, mas btrfs-image parece resolver este problema:

link

Atualização: não use isso como backup. Obrigado pelo comentário.

Eu deixo isso aberto e não o excluo, para que outros possam aprender com ele também.

    
por 25.08.2015 / 21:57
-1

Eu acho que aparentemente não existe essa ferramenta (ainda, ATM).

    
por 19.02.2012 / 05:46
-1

apenas fyi ext2 / 3/4 dump não faz o que você quer fazer ... apenas fs capazes de fazer isso eu sei que são ntfs (usando ntfs-3g) e zfs

embora você possa fazer isso usando o provisionamento thin lvm e experimental ...

Editar: voltando a este poucos anos depois percebendo, você pode fazer isso com qualquer sistema de arquivos usando o squashfs ...

    
por 19.02.2012 / 11:55