Agentes hotplug foram desaprovados a partir do SUSE Linux 10.0. Toda a configuração de dispositivos agora deve ser realizada via regras de udev. udev fornece uma regra de compatibilidade para chamar agentes personalizados existentes. Porém, converter agentes personalizados em regras udev deve ser considerado.
Um agente hotplug é um programa executável que executa ações adequadas para um evento. Os agentes para os eventos de dispositivo estão localizados em /etc/hotplug.d/nome do evento e /etc/hotplug.d/default. Todos os programas nesses diretórios com o sufixo .hotplug são executados em ordem alfabética.
Para facilitar a configuração do dispositivo, em geral é suficiente carregar um módulo de kernel. Em alguns casos, comandos adicionais precisam ser chamados para uma configuração de dispositivo adequada.
No SUSE Linux, isso é tratado geralmente por regras de udev. Porém, se uma configuração de dispositivo personalizada é necessária, a configuração do dispositivo é realizada por /sbin/hwup ou /sbin/hwdown. Esses programas procuram uma configuração adequada para o dispositivo no diretório /etc/sysconfig/hardware e a aplicam. Por exemplo, para evitar que um dispositivo específico seja inicializado, crie um arquivo de configuração com um nome apropriado e defina o modo de inicialização para manual ou off. Se /sbin/hwup não encontrar qualquer configuração, ele procura pela variável de ambiente MODALIAS. Se ela existir, modprobe automaticamente carrega o módulo correspondente. A variável MODALIAS é gerada automaticamente por eventos hotplug do kernel para dispositivos que exigem um módulo para serem carregados. Para obter mais informações, consulte Seção 32.4, “Carregamento de módulo automático”. Mais informações sobre /sbin/hwup estão disponíveis no arquivo /usr/share/doc/packages/sysconfig/README e na página de manual man hwup.
Antes de agentes de interface serem chamados, udev geralmente gera um nó de dispositivo que o sistema pode acessar. udev permite a atribuição de nomes persistentes a interfaces. Consulte Capítulo 33, Nós de dispositivo dinâmicos com udev para obter detalhes. Em seguida, as próprias interfaces são configuradas de acordo com as regras de udev respectivas. Os procedimentos para algumas interfaces estão descritos abaixo.
Interfaces de rede são inicializadas com /sbin/ifup e desativadas com /sbin/ifdown. Detalhes são fornecidos no arquivo /usr/share/doc/packages/sysconfig/README e na página de manual ifup.
Se um computador tem vários dispositivos de rede com drivers diferentes, as designações da interface podem ser alteradas se outro driver for carregado de forma mais rápida enquanto o sistema está inicializando. O SUSE Linux tenta manter a numeração persistente—os dispositivos mantêm o nome de interface ao qual foram atribuídos durante a configuração. A atribuição é realizada via regras de udev. Para alterar a atribuição posteriormente, as regras de udev devem ser alteradas.
Porém, a melhor solução é usar as designações de interface persistentes. Você pode especificar os nomes das interfaces individuais nos arquivos de configuração. Detalhes sobre este método estão disponíveis no arquivo /usr/share/doc/packages/sysconfig/README. Desde o SUSE Linux 9.3, o udev também lida com interfaces de rede, embora estes não sejam nós de dispositivo. Isso permite o uso de nomes de interface persistentes de forma mais padronizada.
Interfaces para armazenar dispositivos devem ser montadas para que seja possível acessá-las. Isso pode ser totalmente automatizado ou pré-configurado. Além disso, o SUSE Linux distingue entre dispositivos de usuário e sistema. Dispositivos de sistema só podem ser montados automaticamente através da criação de uma entrada em /etc/fstab. Dispositivos de usuário são tratados via hal por padrão. Se uma configuração diferente para dispositivos de usuário for necessária, esses dispositivos podem ser inseridos em /etc/fstab. Alternativamente, o tratamento deste dispositivo em hal pode ser modificado. Para obter mais informações sobre hal, consulte /usr/share/doc/packages/hal/hal-spec.html.
O uso de nomes de dispositivos persistentes é recomendado, pois nomes de dispositivos tradicionais podem ser alterados, dependendo da seqüência de inicialização. Detalhes sobre nomes de dispositivos persistentes estão disponíveis em Capítulo 33, Nós de dispositivo dinâmicos com udev.