O UUID é realmente único? por que podemos atribuir vários UUIDs a uma única fatia de disco

1

Todo o conteúdo da web e seu acrônimo o explicam como identificador exclusivo.

Mas quando eu tento criar outro dispositivo, digamos, trocar no meu caso e atribuir o UUID, eu sou capaz de atribuir muitos UUIDs a uma única fatia de disco.

Eu posso criar vários dispositivos de swap com diferentes UUIDs, usando o comando mkswap com a opção -U para ele.

Então, como é único ...?

    
por amitam 24.09.2015 / 11:49

2 respostas

2

Não, um UUID não pode ser garantido como único. Um UUID é apenas um número aleatório de 128 bits . Quando meu computador gera um UUID, não há nenhuma maneira prática de impedir que seu computador ou qualquer outro dispositivo no universo gere esse mesmo UUID em algum momento no futuro.

Pode não ser provável que dois UUIDs sejam iguais, mas eles podem ser.

Nesse caso, o código que atribui UUIDs a dispositivos pode verificar um novo UUID em relação a UUIDs já atribuídos a dispositivos e eliminar duplicados, garantindo assim a exclusividade.

Quanto à exclusividade. Quando um novo disco é instalado em um sistema, a prática usual é que um técnico defina as partições nele. Os rótulos não são exclusivos e não são usados. No processo de definição, um algoritmo de software cria um UUID.

Como o sistema já possui uma lista de UUIDs montados existentes, o processo de definição da partição cria automaticamente um valor único de UUID. O novo valor UUID filtrado na lista existente de UUIDs montados, para evitar duplicação. Com a criação de partições, no sistema host, o UUID, juntamente com o número da partição, forma uma combinação única.

Sim, realmente. A duplicação pode ocorrer se o disco estiver preparado no sistema A para uso em um sistema existente B.

    
por 24.09.2015 / 12:33
0

i am able to assign many UUIDs to single slice of disk.

Não realmente. Você só pode atribuir um único UUID a um objeto. Mas você pode ter objetos que cubram o mesmo espaço e cada um tenha seu próprio UUID, por exemplo, um sistema de arquivos e a partição UEFI ou o volume lógico LVM em que está.

I can create multiple swap device with different UUIDs

Isso seria normal: vários volumes de swap, cada um com seu próprio UUID distinto.

Parece, porém, que você realmente queria perguntar sobre a situação oposta: ter o o mesmo UUID em diferentes volumes. Isso não deveria acontecer. Isso não acontecerá se você usar ferramentas normais. Por exemplo, quando você cria um sistema de arquivos ou um volume de troca, por padrão, ele recebe um UUID aleatório; como esse valor aleatório tem 122 bits de entropia, o mundo pode ter cerca de um quintilhão (um bilhão de bilhões) de volumes, cada um com seu próprio UUID, antes que a probabilidade de colisões se torne significativa.

Se você informar às ferramentas qual UUID usar, será sua responsabilidade garantir que o UUID seja único. Os UUIDs são exclusivos quando usados corretamente; portanto, se você forçar os UUIDs não exclusivos, estará usando-os incorretamente.

    
por 25.09.2015 / 03:28