Como fazer zpool se referir a um disco usando uma string legível?

1

Existem várias maneiras de um sistema identificar exclusivamente um disco ou partição, GUID / UUID, como ele está conectado 'usb -...' e a estrutura de diretório tradicional '/ dev / sda'. zpool parece escolher aleatoriamente entre eles. Como posso obter um status de zpool para listar a matriz usando a estrutura de diretório, pois é a única coisa que outras ferramentas conhecem?

Mais informações:

O histórico revela como o pool foi criado:

zpool history XX
History for 'XX':
YYYY-MM-DD.HH:MM:SS zpool create -f XX -m /XX raidz sda sdb sdc sdd sde

No entanto, o status agora é:

zpool status XX
pool: XX
...
                                                    STATE     READ WRITE CKSUM
      XX                                                         0     0     0
        raidz1-0                                                 0     0     0
          ata-WDC_WD10EFRX-68PJCN0_WD-XXXXXXXXXXXX  ONLINE       0     0     0
...

Os nomes usados na compilação não são os mesmos que os listados agora. A matriz foi movida muito quando foi criada, no entanto.

Atualização e conclusão:

Parece que a maioria dos utilitários pode usar o nome longo que o ZFS usa no lugar do curto, via

/dev/disk/by-id/*

diga

smartctl --all /dev/disk/by-id/ata-WDC_...

Embora mais complicado, eu concordo que é mais preciso.

    
por J Collins 06.12.2017 / 12:12

1 resposta

1

zpool usa os nomes de dispositivo que você forneceu no momento da criação do pool e ao modificar dispositivos (por exemplo, anexar discos ou adicionar vdevs ao pool). Portanto, você pode destruir / recriar o pool com os nomes escolhidos ou desanexar / anexar todos os dispositivos um após o outro (isso só é possível com layouts de pool com redundância suficiente, é claro).

É assim que funciona no Solaris, podem existir ressalvas específicas em outros sistemas como Linux ou BSD.

    
por 07.12.2017 / 09:32