Ich habe eine VM, die mit DHCP usw. an ein Netzwerk angeschlossen ist.
Immer wenn ich die VM starte, ist die virtuelle Ethernet-Verbindung unterbrochen. Ich muss mich über die Konsole anmelden und ausführen, um sie zu aktivieren. Jedes Mal. Ich möchte sie beim Booten dhclient eth0
aktivieren .eth0
Das ist /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
Ich dachte, das ONBOOT=yes
wäre hier der wichtige Teil, aber er wird völlig ignoriert. Wer liest diese Datei? Vielleicht ist das der Übeltäter.
Ich HOTPLUG=yes
habe es nur in der Hoffnung hinzugefügt, dass es helfen würde (vielleicht kommt die Schnittstelle später ...), aber das tut es nicht.
Ich habe es eingerichtet NM_CONTROLLED=no
, weil ich keinen NetworkManager-Dienst habe (Server, keine Benutzerverwaltung erlaubt oder erforderlich).
Meine Frage nun: Was ist mit meiner Konfigurationsdatei nicht in Ordnung bzw. welche Einstellung würde helfen?
Antwort1
Was mit deiner Konfigurationsdatei nicht stimmt, ist mir nicht klar.
Bei Verwendung von CenOS 8 könnte die Verwendung von NetworkManager jedoch eine hilfreiche Einstellung sein, da Netzwerkskripte veraltet sind:
Veraltete Netzwerkskripte für RHEL 8
- Setzen der Eigenschaft „connection.autoconnect“ auf „true“.
Antwort2
cron
Dazu können Sie eine Regel verwenden .
Bearbeiten/erstellen Sie Ihre Regel einfach mit dem crontab -e
Befehl, wählen Sie Ihren Editor (seien Sie vorsichtig, crontab fragt nur nach diesem. Außerdem ist nano am einfachsten) und hängen Sie dann an die Datei eine @reboot
Zeile an, gefolgt von Ihrem Befehl, der in Ihrem Fall wie folgt aussieht: @reboot dhclient eth0
.
dhclient eth0
Und jetzt wird Ihr Code bei jedem Booten ausgeführt.
Beachten Sie, dass @reboot trotz seines Namens (fast) nichts mit einem Neustart zu tun hat und immer funktioniert, wenn Sie von Null an booten.