em que casos será problemático configurar o UUID no fstab

3

Estamos pensando em mudar toda a configuração do fstab do Linux para trabalhar com o UUID em vez da configuração atual

Alguns dos discos estão com não-RAID e alguns dos discos estão com RAID10

Eu procurei no google e encontrei reclamações sobre o uso do UUID para o RAID1:

"Infelizmente você NÃO DEVE usar o UUID em / etc / fstab se usar o software RAID1. Por quê? Porque o próprio volume RAID e o primeiro elemento do espelho parecerão ter o mesmo UUID do sistema de arquivos. Se o espelho quebra ou por qualquer outro motivo que o dispositivo md não é iniciado na inicialização, o sistema irá montar qualquer disco subjacente aleatório em vez disso, espelhando o seu espelho. Então você vai precisar de um resync completo. Bad juju. "

Então, só quero saber se podemos usar o UUID para o RAID10?

e em quais casos (configuração RAID) não usar o UUID?

segundo - em poucas linhas, quais são os benefícios de usar o UUID?

    
por yael 06.12.2017 / 13:40

3 respostas

1

Responda à sua segunda pergunta: um UUID permite identificar exclusivamente um dispositivo.

Os dispositivos são atribuídos como /dev/sda , /dev/sdb , etc., dependendo da ordem em que o sistema os descobre. Enquanto a unidade que o sistema inicializa é sempre a primeira, para os outros a atribuição de nome depende da ordem da descoberta e pode ser alterada após uma reinicialização.

Além disso, imagine que você tenha unidades /dev/sdc e /dev/sdd e remova fisicamente a primeira unidade; Após a reinicialização, o que era conhecido como /dev/sdd agora é chamado de /dev/sdc .

Isso torna a identificação de dispositivos ambígua. Os UUIDs evitam toda ambiguidade; como o UUID é armazenado no superbloco (para um dispositivo de bloco), ele pertence ao próprio dispositivo.

    
por 06.12.2017 / 13:51
2

Adicionando a @ dr01 answer: sobre as questões de RAID, você também pode usar o UUID nas configurações de RAID.

Se estiver usando o mdadm, o UUID será armazenado no sistema de arquivos local, se estiver usando o RAID de hardware, ele será apresentado como um disco físico virtual, que novamente terá um UUID.

    
por 06.12.2017 / 13:55
1

Eu acho que é apenas um problema nos casos em que os dados no dispositivo RAID também estão identicamente presentes na mesma posição nos dispositivos subjacentes (ou pelo menos alguns deles). Na prática, isso significa que os formatos de RAID, onde o superbloco de RAID (metadados) está no final da partição.

Como o UUID faz parte do sistema de arquivos (*) , o sistema deve encontrar primeiro um sistema de arquivos suportado no dispositivo. Os sistemas de arquivos são identificados lendo alguns locais definidos no dispositivo, geralmente no início, e procurando identificar assinaturas. Se os mesmos dados estiverem visíveis na mesma posição em um disco bruto (como /dev/sda ) e um dispositivo de invasão ( /dev/md0 ), o mesmo UUID pode ser encontrado em dois dispositivos. Ou mais, se houver cópias dos dados em outros dispositivos, ou seja, o outro lado do espelho.
(* Os UUIDs das partições GPT são um assunto diferente)

O sistema RAID de software Linux conhece os dois formatos principais de superblocos , o original (v. 0.90) format coloca o superbloco no final, e o atual (v. 1) tem três subformatos para diferentes posições do superbloco. Como os superblocos formatos 1.1 e 1.2 colocam o superbloco no começo, eles devem ser seguros para uso. 0,9 e 1,0 colocar o superbloco no final do dispositivo, então eles são os únicos que você pode entrar em problemas. /proc/mdstat deve mostrar o formato do superbloco para cada dispositivo.

A página wiki RAID também contém um aviso sobre a colocação do superbloco no final do dispositivo.

Com o RAID 0 ou o RAID 10, é difícil ler o sistema de arquivos por meio dos discos subjacentes, já que os dados são distribuídos. Mas o UUID ainda pode ser detectável, então é melhor usar o superbloco RAID de formato 1.2 em qualquer caso.

Para sistemas de arquivos ext2 / 3/4, tune2fs -l $device pode mostrar o UUID do sistema de arquivos se for possível encontrar ( blkid pode encontrar o UUID RAID).

Note que estou escrevendo isso com base no meu entendimento da documentação, mas não testei explicitamente com um super bloco de RAID no final.

    
por 06.12.2017 / 19:10