Você precisará executar um script externo para criar o nó do dispositivo.
Estou no processo de configuração do monitoramento de RAID para vários servidores da Dell que usam a placa integrada PERC 6i. Estamos usando o Nagios atualmente e o plugin check_megasasctl parece se encaixar na conta. No entanto, o plugin depende da existência de:
/dev/megaraid_sas_ioctl_node
Este nó de dispositivo não existe por padrão, você tem que criá-lo manualmente usando algo como:
mknod /dev/megaraid_sas_ioctl_node c 253 0
Agora, para tornar a existência desse nó de dispositivo persistente nas reinicializações, pensei em escrever uma regra do udev, mas, como de costume, estou perdendo alguma coisa. Eu pensei que eu poderia criar um arquivo como /etc/udev/rules.d/10-local/rules que continha:
DRIVER=="megasas" NAME="megaraid_sas_ioctl_node" MODE="0600"
Mas isso não funciona - nenhum nó de dispositivo após uma reinicialização. A saída do Dmesg indica que o driver megasas está carregado e funcional:
megasas: 00.00.04.01-RH1 Thu July 10 09:41:51 PST 2008
megasas: 0x1000:0x0060:0x1028:0x1f0c: bus 1:slot 0:func 0
megasas: FW now in Ready state
Além disso, não vejo nenhum meio para instruir o udev sobre qual tipo de nó de dispositivo criar: caractere ou bloco. Eu suspeito que não estou conseguindo entender exatamente como o udev deve funcionar.
Eu percebo que eu poderia apenas enganar e executar MegaCLI em /etc/rc.local, redirecionando a saída para / dev / null; ele cria o nó do dispositivo megaraid_sas_ioctl_node como parte de sua execução. Eu apenas pensei que usar as regras do udev seria a) mais limpo eb) um exercício de aprendizado útil. Talvez eu deva apenas despejar o comando mknod acima em /etc/rc.local ...
Então, como faço para que o udev crie o nó do dispositivo / dev / megaraid_sas_ioctl_node com base na presença do driver megasas?
Felicidades
Steve
Você precisará executar um script externo para criar o nó do dispositivo.