btrfs e a opção de montagem de descarte em um ssd

5

Não consigo encontrar uma resposta para isso, então pensei em perguntar aqui:

Em /etc/fstab e ao usar o comando mount no ext4, você adicionaria a opção discard para ativar o TRIM em um SSD. Da mesma forma, a opção discard ativa o TRIM nos volumes btrfs, conforme confirmado em btrfs.wiki.kernel.org . O Btrfs deve ativar a cópia na gravação por natureza e, se esse for o caso, a opção de descarte efetivamente desativará a cópia na gravação?

Estou imaginando o TRIM apagando todos os blocos que conteriam versões anteriores dos arquivos. Se a cópia na gravação ainda funciona, isso não reduz o desempenho de um longo prazo do SSD, se eventualmente nenhum dos blocos for zerado?

    
por witchbutter 14.05.2013 / 00:38

2 respostas

2

Copy-on-write significa que os blocos alocados não são sobrescritos - em vez disso, quando um bloco de dados em um arquivo é alterado, um novo bloco é alocado com os novos dados e o arquivo é atualizado para se referir ao novo bloco em vez do original. Quando o bloco antigo não é mais referenciado por nenhuma parte do sistema de arquivos, ele é liberado. Copy-on-write não significa que nenhum bloco seja liberado.

A opção discard apenas informa ao Btrfs para reportar blocos livres ao dispositivo subjacente. O Btrfs já controla quais blocos são gratuitos e o relato dessas informações ao dispositivo subjacente não afetará o comportamento de cópia na gravação.

    
por 28.05.2013 / 01:35
-1

Copiar na gravação não implica manter referências a blocos que não são mais usados. Os blocos em si se tornam espaço livre (a menos que seja usado por outro instantâneo) e, até onde eu sei, a partir de então btrfs não sabe mais que eles pertenciam ao arquivo que eles agora possuem o conteúdo anterior.

Tem toda a razão que o descarte torna os blocos não mais usados, ou seja, o conteúdo anterior, irrecuperáveis.

Eu não sei o que você esperava, mas eu tinha certeza de que havia um comando btrfs simples que poderia reverter um arquivo para alguma versão mais antiga se a nova versão estivesse corrompida e você tivesse sorte que o conteúdo antigo ainda estivesse intacto na piscina de espaço livre. Tendo googled minha bunda, eu não encontrei nenhuma fonte para apoiar esta afirmação, por isso parece btrfs nunca lhe deu isso em primeiro lugar.

Portanto, o copy-on-write não é um recurso de resiliência de dados, mas é um detalhe de implementação que aumenta suas chances de recuperar o conteúdo anterior, exceto se não usar o descarte.

    
por 21.09.2015 / 16:54