O ZFS detecta discos não pelo seu nome no sistema de arquivos, mas pelo seu UUID que é gravado no disco (ou pelo menos algo semelhante - não tem 100% de certeza de que é realmente um UUID). Quando zpool import
é executado, os discos são enumerados, o ZFS recria todos os pools e, em seguida, usa o nome do dispositivo (sem realmente incluir qualquer diretório IME, geralmente é algo como sda
em vez de /dev/sda
) na saída zpool status
. Como tal, se você mover as unidades ao redor (ou se o kernel movimenta as unidades, o que pode acontecer com os kernels modernos no hardware moderno), o zpool ainda detectará os discos na mesma ordem em que eles antes; Os discos que apareceram primeiro na saída aparecerão primeiro na saída, mesmo que o kernel não os enumere nessa saída.
O que aconteceu com você aqui provavelmente é que, devido ao fato de que o original zpool import
não funcionou, o kernel pôde concluir sua inicialização, udev
fez muito mais trabalho e, quando você fez a manual zpool import
, a enumeração padrão de todos os seus discos acabou por ter os primeiros baseados em números de série, em vez dos números sdX
. Provavelmente, na próxima vez que você reinicializar a máquina, os nomes usados retornarão ao esquema sdX
.
Felizmente, resolver os nomes de um esquema de nomenclatura para outro é bastante simples:
wouter@gangtai:/dev/disk/by-id$ ls -l
total 0
lrwxrwxrwx. 1 root root 9 Mar 31 18:15 ata-SAMSUNG_MZ7TE256HMHP-00004_S1RKNSAFC04685 -> ../../sda
lrwxrwxrwx. 1 root root 10 Mar 31 18:15 ata-SAMSUNG_MZ7TE256HMHP-00004_S1RKNSAFC04685-part1 -> ../../sda1
lrwxrwxrwx. 1 root root 9 Mar 31 18:15 wwn-0x50025388a089e89c -> ../../sda
lrwxrwxrwx. 1 root root 10 Mar 31 18:15 wwn-0x50025388a089e89c-part1 -> ../../sda1
Existem vários esquemas de nomenclatura ( by-id
, by-uuid
e by-path
), que podem ser encontrados em /dev/disk
.
sdX
. Os kernels modernos não atribuem mais nomes de dispositivos estáticos a dispositivos específicos; É por isso que as distribuições modernas usam arquivos fstab
baseados em UUID, em vez de sdX
. O número de série, na verdade, é uma maneira longe mais confiável de descobrir qual é o disco quebrado; afinal de contas, está escrito no disco real , em contraste com o sdX
name, que pode ser diferente de boot to boot (na verdade encontrei isso em uma caixa ZFS com dezesseis discos rígidos). Qualquer um dos outros métodos ( by-uuid
, by-id
e especialmente by-path
nos gabinetes de vários discos no nível corporativo) é muito mais confiável do que isso.