Se eu vou criarum sistema de arquivos btrfs para vários dispositivos. A recomendação oficial da documentação parece ser criá-lo em dispositivos brutos; ou seja /dev/sdb
, /dev/sdc
, etc, mas isso não é explicado.
Há alguma vantagem em criar primeiro uma tabela de partição nesses dispositivos, seja GPT ou MBR, e depois criar o sistema de arquivos /dev/sdb1
, /dev/sdc1
etc.? Alimentar dispositivos inteiros do Btrfs tem alguma vantagem específica ou são basicamente equivalentes?
Responder1
O particionamento é apenas uma forma de dividir um disco em vários volumes que podem ser usados de forma independente. Se você deseja apenas um volume por disco, o particionamento não compra nada - apenas ocupa algum espaço adicional em disco (sim, é muito pequeno) e complica coisas como alinhar seus dados em discos rígidos com setores 4K ou unidades flash. A única outra razão para ter uma tabela de partições é para inicializar essa unidade. Se não houver razão para ter uma tabela de partições, é mais simples simplesmente omiti-la.
Responder2
Existem várias desvantagens no particionamento. MBR desperdiça uma "pista" inteira. Uma faixa é o número de setores vezes o tamanho do setor, mas um disco real possui setores e o tamanho do setor não é 512o. Um disco real possui blocos que são 8 vezes maiores para discos giratórios e muito maiores para dispositivos flash. Esta mudança para a próxima faixa pode tornar impossível alinhar setores "lógicos" com blocos reais usando stride e stripe.
Antigamente era possível definir o tamanho do setor no FAT, mas o MBR acabou com isso.
Se você estiver inicializando a partir do disco, o BIOS precisará de uma assinatura de inicialização no final do primeiro 512o para saber que pode executá-lo quando for carregado. Se você estiver executando o EFI, fique bêbado. O sistema de arquivos precisaria ter um buraco para isso se fosse usado para inicializar o sistema.
O XFS (usado principalmente em /var em discos giratórios) não possui esse furo.
Responder3
Se bem entendi, o uso de discos inteiros permitirá que o BTRFS faça algumas suposições que permitem alguma otimização do comportamento.
Por exemplo, se receber dispositivos completos para trabalhar, ele pode assumir que não terá nada que o desafie para acessar o dispositivo e pode adaptar seus métodos de acesso em vez de ter que antecipar atrasos periodicamente de outra coisa solicitando dados de algum lugar else no dispositivo e ter que esperar que a unidade volte a ele depois de processar a outra solicitação.
Responder4
Use discos separados para obter vantagens na velocidade de leitura/salvamento do disco.
Basicamente, /dev/sda
é um disco rígido e /dev/sda1
são /dev/sda2
partes do mesmo disco físico.
se você usar /dev/sda
, + /dev/sdb
para sua configuração, terá dois discos separados capazes de recuperar ao mesmo tempo.
se você usar /dev/sda1
/dev/sda2
então você obtém o mesmo disco tentando ler os dois, então tem que fazer um e depois o outro.