ComposeFS, um sistema de arquivos do criador do Flatpak

componentes

componefs é um novo sistema de arquivos proposto para Linux

Recentemente, a notícia de que Alexander Larson, o criador do Flatpak na Red Hat, tem postou uma prévia dos patches que implementam o sistema de arquivos ComposeFS para o kernel do Linux.

O sistema de arquivos proposto lembra Squashfs e também é adequado para montar imagens somente leitura. As diferenças se resumem à capacidade do ComposeFS de compartilhar com eficiência o conteúdo de várias imagens de disco montadas e suporte para autenticação de dados legíveis.

As áreas de aplicativos em que o ComposeFS pode ser solicitado são a montagem de imagens de contêiner e o uso de um repositório OSTree semelhante ao Git. Isso permite que os arquivos de conteúdo sejam compartilhados entre as imagens, mesmo que os metadados (como carimbos de data/hora ou propriedade do arquivo) variem entre as imagens.

O ComposeFS usa um modelo de armazenamento de endereçamento baseado em conteúdo, ou seja, o identificador principal não é o nome do arquivo, mas um hash do conteúdo do arquivo. Este modelo fornece desduplicação e permite armazenar apenas uma cópia dos mesmos arquivos encontrados em diferentes partições montadas.

Em essência, composefs é uma maneira de criar e usar imagens somente leitura. que são usados ​​da mesma forma que você usaria, por exemplo, loopback imagens de abóbora. Além disso, o composefs tem dois novos fundamentos caracteristicas. Primeiro, ele permite que os dados do arquivo sejam compartilhados (tanto no disco quanto no cache de página) entre as imagens e, em segundo lugar, você tem dm-verity como validação de leitura.

Por exemplo, imagens de contêiner contêm muitos arquivos comuns system e com Composefs, cada um desses arquivos será compartilhado por todas as imagens montadas, sem o uso de truques como encaminhamento com links físicos.

Ao mesmo tempo, os arquivos compartilhados não são apenas armazenados como uma única cópia no disco, mas também são gerenciados por uma entrada no cache da página, permitindo que tanto o disco quanto a RAM sejam salvos.

O Composefs também oferece suporte à validação fs-verity de arquivos de conteúdo. Usando isso, o resumo dos arquivos de conteúdo é armazenado na imagem e o composefs validará se o arquivo de conteúdo usado tem um resumo fs-verity habilitado para correspondência. Isso significa que o conteúdo do backup não pode ser alterado de forma alguma (por engano ou malícia) sem ser detectado quando o arquivo é usado.

Você também pode usar fs-verity no próprio arquivo de imagem e passar o resumo fs-verity esperado como uma opção de montagem, que será validada por composefs. Nesse caso, temos total confiança nos dados e nos metadados do arquivo montado. Isso resolve um ponto fraco que o fs-verity apresenta quando usado sozinho, pois só pode verificar os dados do arquivo, não os metadados.

Para economizar espaço em disco, dados e metadados são separados em imagens montadas. Quando montado, especifique:

  • Um índice binário que contém todos os metadados do sistema de arquivos, nomes de arquivos, permissões e outras informações, exceto o conteúdo real dos arquivos.
  • O diretório base onde o conteúdo de todos os arquivos de imagem montados é armazenado. Os arquivos são armazenados em relação ao hash de seu conteúdo.
  • Um índice binário é criado para cada imagem FS e o diretório base é o mesmo para todas as imagens. Para verificar o conteúdo de arquivos individuais e de toda a imagem em condições de armazenamento compartilhado, pode ser utilizado o mecanismo fs-verity, que, ao acessar arquivos, verifica se os hashes especificados no índice binário correspondem ao conteúdo.real (ou seja, se um invasor fizer uma alteração em um arquivo no diretório base ou os dados forem corrompidos como resultado de uma falha, essa reconciliação revelará uma discrepância).

finalmente se você está interessado em saber mais sobre isso, você pode verificar o detalhes no link a seguir.


Seja o primeiro a comentar

Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.