Como você detecta automaticamente uma nova placa de rede no CentOS 6/RedHat?

Como você detecta automaticamente uma nova placa de rede no CentOS 6/RedHat?

Estou usando o CentOS 6 em um ambiente virtual. Ao clonar uma versão virtual do CentOS, os adaptadores eth antigos são “removidos” e substituídos por novos e endereços MAC de rede. No entanto, os arquivos ifcfg-ethn ainda existem. Estou tentando descobrir como fazer com que o CentOS verifique novamente e recrie automaticamente os adaptadores de rede/arquivos eth, assim como fez na instalação.

Caso contrário, fico com o processo tedioso descrito aqui:http://www.centos.org/docs/5/html/Installation_Guide-en-US/s1-s390info-addnetdevice.html

Eu sei que existe uma maneira rápida de fazer isso na GUI, mas estamos usando um servidor, então a GUI não se aplica neste caso. Ajuda?

Editar: @OldWolf sugeriu Kudzu, porém Kudzu foi removido a partir do Centos 5, então prefiro evitar isso. Existe um procedimento que o Linux executa na instalação inicial - alguém pode me ajudar a descobrir o que é para que eu possa acioná-lo manualmente?

Responder1

Com o CentOS 6 tudo é feito pelo udev agora. Entre /etc/udev/rules.de exclua o 70-persistent-net.rulesarquivo e reinicie. Se você abri-lo com antecedência, provavelmente verá o NIC MAC original listado como eth0e o novo como eth1.

Agora você precisa editar /etc/sysconfig/network-scripts/ifcfg-eth0e atualizar manualmente o MAC da sua nova placa NIC.

A exclusão do arquivo força o processo de detecção a ser executado novamente na inicialização, sem nenhuma bagagem restante do processo de clonagem, ou seja, o(s) endereço(s) MAC antigo(s) da NIC.

Tenho que fazer isso com meus clones do CentOS 6 no VMware ESXi 4.1 o tempo todo. É uma dor que o kudzu lidaria com isso no passado com versões anteriores.

Responder2

Exclua o arquivo de regras persistentes:

rm /etc/udev/rules.d/70-persistent-net.rules

Edite ifcfg-eth0:

nano /etc/sysconfig/network-scripts/ifcfg-eth0

REMOVA HWADDRcompletamente a linha (ou altere-a para corresponder ao endereço MAC da sua nova NIC).

Reinicie seu sistema:

reboot

Se você alterar a NIC novamente, basta repetir as etapas 1 e 3.

Responder3

Você também pode usar esta ferramenta (esta não é uma ferramenta GUI, é uma ferramenta TUI, interface de usuário baseada em texto)

[root@localhost ~]# system-config-network-tui

Digite o comando acima e pressione Enter

Então esta tela aparecerá

insira a descrição da imagem aqui

Selecione Configuração do dispositivo e pressione Enter

Então esta tela aparecerá

insira a descrição da imagem aqui

Aqui eth0 se refere/etc/sysconfig/network-scripts/ifcfg-eth0

Qualquer que seja a edição feita eth0, isso afetará o ifcfg-eth0arquivo

Responder4

Eu crio e excluo tantas máquinas virtuais CentOS 6 que escrevi alguns Bashfu para corrigir eth0 após a clonagem no VirtualBox.

   [root@jp-xm-base ~]# cat fixeth0.sh
if grep -q eth1 /etc/udev/rules.d/70-persistent-net.rules; then
   sed -i '/eth0/d' /etc/udev/rules.d/70-persistent-net.rules;
   sed -i 's/eth1/eth0/g' /etc/udev/rules.d/70-persistent-net.rules;
   ETHERNET=`grep eth0 /etc/udev/rules.d/70-persistent-net.rules | awk -F"," '{print $4}' | awk -F"\"" '{print $2}'`;
   echo Ethernet Addr: $ETHERNET;
   sed -i 's/HWADDR=".*"/HWADDR="'$ETHERNET'"/' /etc/sysconfig/network-scripts/ifcfg-eth0;
   /sbin/start_udev
   /sbin/service network restart;
fi

informação relacionada