isc-dhcp-server startet nicht automatisch

isc-dhcp-server startet nicht automatisch

Mein DHCP-Dienst (isc-dhcp-server) läuft unter Astra Linux 1.3 und ist jetzt gut konfiguriert. Er funktioniert wie erwartet, allerdings mit einer kleinen Nuance: Er funktioniert nur, wenn er gestartet wird, aber ein System führt ihn beim Start nicht aus. Das sudo update-rc.d isc-dhcp-server defaultshilft nicht. Andere Dienste können auf diese Weise zum Autostart hinzugefügt (und daraus entfernt) werden, da dies in diesem SysV-basierten System nativ ist. Was muss ich tun, damit es läuft? Danke.

PS uname -agibt

3.2.0-27-generisch

Direkt nach dem Neustart sudo service --status-allgibt

[ - ] isc-dhcp-server

Antwort1

Ich verwende Ubuntu Server 18.04und hatte ein ähnliches Problem: Der Dienst isc-dhcp-serverstartet nicht automatisch. Bei mir stellte sich heraus, dass das Problem darin bestand, dass der Dienst deaktiviert war. Durch Ausführen sudo systemctl enable isc-dhcp-serverwurde das Problem für mich behoben.

Antwort2

Wie ivanivan sagte, startete der Daemon nicht, weil alle Netzwerkschnittstellen ausgefallen waren. Daher habe ich beschlossen, das Startskript nach dem Start erneut aufzurufen. Mein System verwendet wicd als Netzwerkmanager und kann einige Skripte aufrufen, wenn sich der Netzwerkstatus ändert.

Eine Art Hack, aber es funktioniert. Ich habe ein Skript in /etc/wicd/scripts/postconnect abgelegt:

sleep 60
/etc/init.d/isc-dhcp-server start

und voilà, der Daemon startet wie erwartet.

Hinweis: sleep 60ist erforderlich, da das Netzwerk genau 60 Sekunden nach dem Aufruf des Skripts zu arbeiten beginnt.

Antwort3

Keine der obigen Antworten hat bei mir funktioniert, also habe ich einen Hack ausprobiert: Ich habe den Befehl im Skript bearbeitet und am Anfang /etc/init.d/isc-dhcp-serverein hinzugefügt und ihn so geändert, dass er etwa wie folgt aussieht:sleep 20start

case "$1" in
    start)
        sleep 20         # <--- added this line (without the comment)
        test_config
        log_daemon_msg "Starting $DESC" "$NAME"
        start-stop-daemon --start --quiet --pidfile "$DHCPD_PID" \
            --exec /usr/sbin/dhcpd -- \
            -q $OPTIONS -cf "$DHCPD_CONF" -pf "$DHCPD_PID" $INTERFACES
        sleep 2

        if check_status -q; then
            log_end_msg 0
        else
            log_failure_msg "check syslog for diagnostics."
            log_end_msg 1
            exit 1
        fi
        ;;

Jetzt funktioniert es (natürlich nach einer anfänglichen Verzögerung von 20 Sekunden).

Antwort4

Ich habe das gleiche Problem. Gelöst durch Hinzufügen von network.target bei erforderlich.
Beachten Sie, dass die isc-dhcp-server.serviceKonfiguration nur network-online.target erfordert. Ich habe eine sehr verwirrende Erklärung man systemd.specialdazu gesehen ...
Also habe ich einfach die Option hinzugefügt, systemd neu geladen systemctl daemon-reloadund mein Linux neu gestartet, und es funktioniert einwandfrei ...

# Provides:          isc-dhcp-server
# Required-Start:    $remote_fs $network $syslog network.target
# Required-Stop:     $remote_fs $network $syslog network.target
#

verwandte Informationen