O Btrfs calcula uma soma de verificação crc32c para cada arquivo. Existe uma maneira de visualizar qual soma de verificação está armazenada (em vez de apenas ler o arquivo e recalculá-lo)?
O Btrfs calcula uma soma de verificação crc32c para cada arquivo. Existe uma maneira de visualizar qual soma de verificação está armazenada (em vez de apenas ler o arquivo e recalculá-lo)?
Respostas:
O Btrfs calcula uma soma de verificação crc32c para cada arquivo.
Isso não está correto. Ambos os sistemas de arquivos de soma de verificação de código-fonte aberto (ZFS e BTRFS) calculam uma soma de verificação para cada bloco lógico (a fonte não identificada que o Awe usou está correta). Esta é uma soma de verificação dos dados em disco.
Se o sistema de arquivos tiver a compactação ativada (uma configuração cada vez mais comum), essa soma de verificação será dos dados após a compactação. Isso significa que, mesmo que o arquivo caiba em um bloco lógico, é possível (e cada vez mais provável) que os dados da soma de verificação do sistema de arquivos sejam inúteis para você.
Se você precisar de uma soma de verificação de arquivo, a melhor maneira de obtê-la seria calculá-la.
De uma resposta semelhante no superusuário:
Não acredito que seja possível extrair as somas de verificação no nível do bloco de um sistema de arquivos ZFS, mas como as somas de verificação estão no nível do bloco, e não no nível do arquivo, provavelmente não ajudaria você.
Significado. As somas de verificação não são criadas por arquivo pelo btrfs. É mencionado que @superuser existe um patch para adicionar uma funcionalidade ao subcomando inspecionar-interno: btrfs inspeciona-despejo-csums internos que despeja - para todos os blocos ocupados por um arquivo - as somas de verificação do bloco. Plural, a menos que o arquivo caiba em um bloco.
Eu acho que isso não é possível via CLI do btrfs, mas aqui existe um código fonte que, espero, poderia ajudá-lo a ler chechsum para um único bloco em um sistema de arquivos btrfs. Precisa de raiz.