Portál AbcLinuxu, 12. května 2025 05:54
ps aux |grep dhcpd
a nasledne killnuti daneho procesu a opetovne spusteni neznam.
Pripada mi to docela neomalene.Neznate lepsi zpusob?
/etc/rc.d/dhcpd restart
když se podíváš do man dhcpd
, zjistíš, že restart se provádí posláním sigtermu PID ve /var/run/dhcpd.pid
ostatně nejlépe to pochopíš z příkladu, takže tady je dhcpd daemon z archu
#!/bin/bash . /etc/rc.conf . /etc/rc.d/functions PIDFILE="/var/run/dhcpd.pid" PID=`cat $PIDFILE 2>/dev/null` case "$1" in start) stat_busy "Starting DHCP Server" if [ "$PID" = "" ]; then /usr/sbin/dhcpd -q fi if [ "$PID" != "" -o $? -gt 0 ]; then stat_fail else add_daemon dhcpd stat_done fi ;; stop) stat_busy "Stopping DHCP Server" [ ! -z "$PID" ] && kill $PID &> /dev/null rm -f $PIDFILE if [ $? -gt 0 ]; then stat_fail else rm_daemon dhcpd stat_done fi ;; restart) $0 stop sleep 1 $0 start ;; *) echo "usage: $0 {start|stop|restart}" esac
Slackware nepoužívám, ale dle Googlu si myslím, že:
/etc/rc.d/rc.inet2 start|stop|restart
Kdyby to tak nebylo, tak pošli grep na init skripty a on už Ti to poví.
SIGTERM
zmiňovaný v manuálové stránce to (alespoň mně) nereaguje tak, jak bych očekával a prostě to odumře. Takže možná postup, který nakonec zvolil Arch, jak jej vložil kolega výše (zastavi, spustit) asi bude, i když to nevypadá hezky (restart po signálu mi přijde elegantnější - čistě estetické měřítko :), nejjistější.
Vyjádřeno lapidárně pro ty, co se s tím nechtějí mazat: killall dhcpd; dhcpd
(možná mezi ně pro jistotu ještě vrazit ten sleep
.
Pokud není změněno místo pro soubor s pid, bylo by možná malinko hezčí provést místo killall dhcpd
tohle: kill `cat /var/run/dhcpd.pid`
.
A kde se pouští při startu systému? Neříkej, že to děláš ručně? Jestli jo, tak si udělej svůj skript na start|stop|restart např. podle návodu.
dhcpd
SIGTERM
(který se mi ovšem také nechce chovat mravně, takže je to asi jedno):
Note: We get a lot of complaints about this. We realize that it would be nice if one could send a SIGHUP to the server and have it reload the database. This is not technically impossible, but it would require a great deal of work, our resources are extremely limited, and they can be better spent elsewhere. So please don't complain about this on the mailing list unless you're prepared to fund a project to implement this feature, or prepared to do it yourself.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.