integração BTRFS e Luks

4

Eu gostaria de criar uma configuração RAID1 / BTRFS / Luks. O que eu encontrei até agora é:

Um sistema de arquivos Btrfs criptografado pode ser criado sobre o subsistema de criptografia de disco dm_crypt e a camada LUKS (Linux Unified Key Setup), que suporta uma variedade de padrões de criptografia. No entanto, essa abordagem desativa algumas das capacidades e vantagens de usar o Btrfs em dispositivos de bloco brutos, como suporte e detecção automáticos de disco de estado sólido.

Qual é a melhor abordagem para implementar essa solução?

/dev/sda1 < 500 Gb 
/dev/sdb1 < 500 Gb 

/dev/md0 < RAID1 stripe < Luks < BTRFS < snapshots

Uma configuração como essa funcionaria?

Não vejo outra maneira de fazer isso sem perder os recursos de snapshots do BTRFS. Eu poderia configurar o ataque sem mdadm com btrfs como:

mkfs.btrfs -m raid1 -d raid1 /dev/sda /dev/sdb

mas então eu tenho btrfs no topo, onde eu só posso soltar as imagens criptografadas. Mesmo que as alterações de 1 bit dentro de uma imagem afetem os instantâneos do btrfs (também ela copiará todo o arquivo de imagem novamente).

    
por Doodle 08.07.2014 / 11:31

2 respostas

4

O importante é que se você usar md para o espelhamento e criar btrfs com "-d single" você perderá a capacidade de se recuperar de erros de bitrot (btrfs ainda os detectará)

Portanto, a melhor solução para o seu caso seria o seu segundo exemplo:

dispositivo bruto - > LUKS - > btrfs RAID1 dos dispositivos LUKS

o empréstimo já respondeu a parte TRIM / descarte para você e não há nada para eu adicionar lá

    
por 23.09.2014 / 14:23
3

However, this approach disables some of the capabilities and advantages of using Btrfs on raw block devices, such as automatic solid-state disk support and detection.

cryptsetup suporta solicitações TRIM de passagem; você só precisa usar o argumento --allow-discards ao fazer um cryptsetup open ou usar discard como opção ao usar /etc/crypttab . Faça isso antes de executar mkfs.btrfs e você verá que ele detecta o SSD e liga o TRIM. Você também pode querer garantir o uso de discard,ssd como opções quando montar o sistema de arquivos posteriormente.

Even if 1 bit changes inside an image will affect the snapshots of btrfs (aka it will copy the whole image file again)..

O BTRFS detectará qualquer corrupção de bit em um bloco de dados / metadados e corrigirá esse bloco usando a outra cópia (não copiará o arquivo). Os instantâneos fazem referência a blocos de dados / metadados existentes e normalmente não ocupam mais espaço. Se uma parte de um bloco (parte de um arquivo) for alterada posteriormente, uma cópia será feita e referenciada separadamente (ela não copiará o arquivo, a menos que o bloco contenha todo o arquivo). O bloco inalterado não será copiado, apenas referenciado.

    
por 29.07.2014 / 20:06

Tags