Depende do que você quer dizer com "impedir".
(Primeiro de tudo, bit-rot é um termo com várias definições. Esta questão não é sobre o código se tornar intransponível devido à falta de manutenção .)
Se você quer dizer com "impedir" que provavelmente irá detectar corrupção por decaimento de bits, sim, isso funcionará. No entanto, não ajudará a corrigir essa corrupção: os hashes fornecem apenas detecção de erro , não correção .
Geralmente, isso é o que se entende por "integridade": a possibilidade de detectar manipulação não autorizada / não intencional de dados, não a possibilidade de impedir ou corrigi-la.
Geralmente, você ainda deseja um RAID1 junto com backups (possivelmente implementado com instantâneos do ZFS ou similares, não estou familiarizado com a semântica do ZFS nos instantâneos do RAID1 +), por vários motivos:
se um disco falhar fatalmente, você precisará de um RAID1 (ou de um backup recente) para restaurar seus dados; nenhuma correção de erros pode corrigir a falha de um disco inteiro, a menos que tenha uma cópia completa dos dados (RAID1). Por um curto período de inatividade, você deve essencialmente ter o RAID1.
se você excluir acidentalmente partes ou todo o repositório, precisará de um backup (o RAID1 não o protege, pois reflete imediatamente a alteração em todos os dispositivos)
No entanto, o RAID1 em nível de bloco (por exemplo, via LVM ou similar) com apenas dois discos não protege contra a deterioração silenciosa dos dados: o controlador RAID não pode saber qual dos dois discos contém os dados corretos. Você precisa de informações adicionais para isso, como uma soma de verificação sobre arquivos. É aqui que entram as somas de verificação ZSF e btrfs: elas podem ser usadas (o que não significa que sejam usadas nesses casos, não sei como o ZFS ou btrfs lidam com as coisas lá) para distinguir qual dos dois discos contém os dados corretos.