Como posso garantir que / dev / sdd e / dev / sde sempre mapeiam as mesmas unidades toda vez que a máquina Linux for iniciada?

1

OS: Linux 2.6.18 (distribuição baseada em RedHat)

Estou fazendo a transição de um iSCSI NAS para outro iSCSI NAS. Eu tenho ambos conectados para que eu possa transferir dados. No entanto, cada vez que eu reiniciar o NAS, os mapas para / dev / sdd podem mudar; às vezes é o antigo, às vezes é o novo. Existe uma maneira que eu possa definir isso para ser consistente entre as reinicializações? Obrigado!

    
por Joe Casadonte 28.09.2010 / 16:33

1 resposta

3

Os nomes das entradas em /dev são determinados por udev . Encontre algumas características distintivas, como o número de série, e adicione regras como as seguintes:

KERNEL=="sd*", ATTR{vendor}=="Yoyodine", ENV{ID_SERIAL}=="123-abc", NAME=="sdd"
KERNEL=="sd*", ATTR{vendor}=="Yoyodine", ENV{ID_SERIAL}=="123-def", NAME=="sde"

No Debian, você deve adicionar estes em um arquivo no diretório /etc/udev/rules.d/ , por exemplo, /etc/udev/rules.d/mydisks.rules . Eu acho que a maioria das distribuições usa esse local.

Você pode usar ATTR , ENV e outros critérios para corresponder a um dispositivo (consulte a documentação do udev para obter uma lista completa de possibilidades). Execute udevinfo -a -n /dev/sdz quando a unidade estiver disponível como /dev/sdz para ver quais atributos ela possui. Um atributo ATTR corresponde ao próprio dispositivo; há também ATTRS para corresponder a um atributo de um dispositivo pai (por exemplo, o barramento ao qual um dispositivo está conectado). Tenha em atenção que só pode utilizar as regras ATTRS de uma única secção da udevinfo input; Além disso, você pode usar as regras ATTR da seção inicial. Consulte [Entender a saída de udevadm info -a -n /dev/sdb ] ( link para mais informações).

Enquanto você está nisso, é melhor dar nomes mais expressivos, como old-nas e new-nas .

    
por 29.09.2010 / 01:36

Tags