O que é a raiz / subvolume de um sistema de arquivos btrfs?

0

O sistema de arquivos Btrfs usa os termos subvolume , root-volume , snapshot , top-level , default subvolume um pouco confuso para mim.

Um exemplo é a página wiki btrfs sobre subvolumes , que declara

A freshly created filesystem is also a subvolume, called top-level, internally has an id 5. This subvolume cannot be removed or replaced by another subvolume.

No entanto, como usar ferramentas como btrfs-progs , como

  • lista de subvolumes do btrfs
  • show de subvolume btrfs

Exiba, o termo subvolume não se aplica realmente ao volume raiz (consulte esta outra questão ). Além disso, o termo top-level (como pode ser visto na saída dos comandos acima, não está realmente limitado ao volume subvolume / root com subvolumeid 5. Finalmente, parece que você não pode btrfs send o volume da raiz, apenas subvolumes (novamente contrastando com as definições acima).

Alguma ajuda?

    
por humanityANDpeace 25.05.2017 / 10:53

1 resposta

1

A maneira mais simples de explicar isso é fazer uma analogia com o ZFS. Os subvolumes no BTRFS são funcionalmente equivalentes aos zvols do ZFS, exceto que eles são inerentemente armazenados em algum lugar no próprio sistema de arquivos.

Mais genericamente, um subvolume consiste em um conjunto de estruturas de dados internas do sistema de arquivos que são, na maioria das vezes, independentes do resto da árvore. Por essa definição, e os internos do código em si, o subvolume de nível superior ou raiz (subvolume 5) é tecnicamente um subvolume, mas tratado especialmente por comandos que exibem informações sobre subvolumes, porque você não pode fazer muitas das coisas com você pode com subvolumes regulares (por exemplo, não é possível capturar o subvolume raiz e também não é possível excluí-lo). Do ponto de vista do usuário, o único lugar que indica que o subvolume raiz é um subvolume é ao montar com -o subvolid=5 para ignorar uma configuração padrão de subvolume.

    
por 13.07.2017 / 14:46

Tags