Como habilitar uma interface Ethernet na inicialização do CentOS 8?

Como habilitar uma interface Ethernet na inicialização do CentOS 8?

Eu tenho uma VM que está conectada a uma rede com DHCP etc.

Sempre que inicializo a VM, a conexão Ethernet virtual fica inativa. Preciso fazer login pelo console e executar dhclient eth0para habilitá-lo. Toda vez. Desejo ativar eth0na inicialização.

Isso é /etc/sysconfig/network-scripts/ifcfg-eth0:

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=yes
IPV6_AUTOCONF=no
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=eth0
UUID=11111111-2222-3333-4444-5555555555555555
DEVICE=eth0
ONBOOT=yes
HOTPLUG=yes
NM_CONTROLLED=no
DHCPV6C=yes
IPV6_PRIVACY=no
USERCTL=no
GATEWAY=10.0.0.1
DNS1=9.9.9.9
DNS2=1.1.1.1

Achei que essa ONBOOT=yesera a parte importante aqui, mas foi completamente ignorada. Quem lê este arquivo? Talvez esse seja o culpado.

Eu HOTPLUG=yessó adicionei na esperança de que isso ajudasse (talvez a interface chegue tarde ...), mas isso não acontece.

Eu configurei NM_CONTROLLED=noporque não tenho serviço NetworkManager (servidor, nenhum gerenciamento de usuários é permitido ou necessário).

Minha pergunta é: O que há de errado com meu arquivo de configuração ou qual configuração ajudaria?

Responder1

O que há de errado com seu arquivo de configuração não está claro para mim.

Mas, usando o CenOS 8, uma configuração adequada para ajudá-lo poderia ser usar o NetworkManager, já que os scripts de rede estão obsoletos:

Scripts de rede obsoletos do RHEL 8

  • definindo a propriedade connection.autoconnect como true.

Responder2

Você pode usar uma cronregra para isso.

Basta editar/criar sua regra com o crontab -ecomando, escolher seu editor (tenha cuidado, o crontab só perguntará este. Além disso, nano é o mais simples) e anexe ao arquivo uma @rebootlinha seguida pelo seu comando, que no seu caso será: @reboot dhclient eth0.

E agora, toda vez que você inicializar, seu dhclient eth0será executado.

Observe que @reboot, apesar do nome, não tem (quase) nada a ver com reinicialização e sempre funcionará quando você inicializar do zero.

informação relacionada