Vraag & Antwoord

OS Linux

Afsluiten DHCPCD als er geen netwerk is

7 antwoorden
  • Op mijn laptop heb ik LFS draaien. Aangezien we op het werk gebruik maken van DHCP heb ik dhcpcd-1.3.22-pl1 geinstalleerd. Om te voorkomen dat ik twee verschillende netwerk scripts moest gebruiken heb ik thuis ook een dhcp server geinstalleerd, namelijk dhcp-3.0pl1. Nu kan is dus zonder problemen thuis en op het werk het netwerk op. Aangezien het een laptop is, kan het ook wel eens gebeuren dat ik hem standalone draai, in dat geval boot ik bij lilo naar runlevel 2, dus zonder netwerk. De dhcpcd wordt dan niet opgestart, waardoor hij ook niet onnodig lang loopt te zoeken en dus ook geen foutmelding geeft. Als ik hem dan echter wil afsluiten, dan wordt er geswitched naar runlevel 0, waar wel een afsluitscript voor dhcpcd staat. Hier hangt hij dus op, en na het geven van een enter gaar hij meestal weer door, helaas niet altijd, zodat ik hem met de powerknop uit moet zetten, met alle gevolgen van dien bij het opstarten. Is er niet een mogelijkheid om een check in te bouwen in het afsluitscript, namelijk dat hij de dhcpcd alleen probeert te stoppen als deze ook draait? Ik ben zelf niet zo heel erg thuis in bash scripting, dus weet niet zo goed hoe dat te doen. Hieronder de betreffende codes uit de afsluitbestanden: /etc/rc.d/init.d/network: [code:1:80f05bfd3f] stop) if [ "$GATEWAY" != "" ] then echo "Removing default gateway..." route del -net default evaluate_retval fi for file in $(grep -il "ONBOOT=yes" $network_devices/ifconfig.*) do interface=$(basename $file | sed s/ifconfig.//) case "$interface" in *~) ;; *) $network_devices/ifdown-$interface ;; esac done ;; [/code:1:80f05bfd3f] Dit bestand is verder eigenlijk geheel volgens de layout van de template. /etc/sysconfig/network-devices/ifconfig.eth0: [code:1:80f05bfd3f] ONBOOT=yes DHCP_PROG=/usr/sbin/dhcpcd DHCP_START=-t 15 -d DHCP_STOP=-k [/code:1:80f05bfd3f] /etc/sysconfig/network-devices/ifdown-eth0: [code:1:80f05bfd3f] #!/bin/sh source /etc/sysconfig/rc || exit source $rc_functions || exit source $network_devices/ifconfig.eth0 || exit echo "Bringing down the eth0 interface..." $DHCP_PROG $DHCP_STOP evaluate_retval [/code:1:80f05bfd3f] Kan iemand me helpen om een nette en werkende oplossing te vinden? Alvast bedankt voor het meedenken.
  • Ik maak ook gebruik van DHCP, die automatisch wordt geladen bij opstarten. Voor het afsluiten van DHCP heb ik niets geregeld. Linux ziet zelf dat de deamon nog draait en sluit die af, dat duurt een paar seconden. Mijn suggestie: gooi alles wat met DHCP te maken heeft uit je afsluitscripts, waarschijnlijk stopt de Linux de deamon van zelf.
  • Thnx. Ik heb uit mijn rc0.d en rc6.d de K50Network link verwijderd. Het afsluiten gaat nu inderdaad prima! Het is misschien niet de meest nette oplossing, maar het werkt wel.
  • Voor een nette oplossing: DHCPCD maakt een filetje aan waar alle IP-adressen instaan. Als je DHCPCD hebt draaien, tik je nog een keer DHCPCD in console of terminal in. Je krijg dan een melding dat de deamon al geladen is en een verwijzing naar een of andere info-file. Die file wordt volgens mij gewist off geleegd als DHCPCD wordt afgesloten. Je zou dus is even moeten kijken wat de inhoud van de file is, als DHCPCD niet draait. Vervolgens kun je ergens in de afsluitscripts opnemen dat die file gecheckt wordt op de inhoud oid.
  • niets zetten in je afsluitscripts is inderdaad niet proper, en kan soms zelfs problemen geven als je nadien reboot naar windows ofzo. Als de dhcp deamon z'n ipadres niet vrijgeeft voor 't rebooten kan het namelijk gebeuren dat je in windows geen ip-adres meer krijgt, en dan moet je eerst terug naar linux om manueel het ipadres vrij te geven en dan terug te rebooten naar win, en dan werkt het wel. Enfin, dat hangt ook af van de dhcp server, dus misschien heb je er met uw provider geen last van. Ik zou gewoon een regeltje "dhcpcd -k" in je afsluitscripts zetten, dat geeft het ipadres terug vrij en killt dhcpcd.
  • 'dhcpcd -k' is nu juist niet wat ik wil. Ik wil dus juist dat hij niet probeert om mijn dhcpcd te killen als ik standalone draai. Van windhoos heb ik overigens geen last, want staat er niet eens op.
  • Volgens mij moet het mogelijk zijn dat linux gewoon afsluit, ook als er een afsluitscript voor bijv. dhcp in staat. Mijn suse zegt in zo'n geval gewoon [failed] bij de betreffende afsluiting, maar gaat gewoon verder zonder morren. Max

Beantwoord deze vraag

Weet jij het antwoord op deze vraag? Registreer of meld je aan met je account

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.