Portál AbcLinuxu, 12. května 2025 05:34
Řešení dotazu:
Co dát do /etc/rc.local řádek s "killall dhcpd"?
Pravda, nejčistší je to odebrat z runlevelu.
Víš, pointa systémového řešení je v tom, že je v tom řád. Až se k danému stroji dostane někdo po letech, bude ho zkoumat, uvidí symlink a službu nakonfigurovanou a bude pátrat, proč neběží (že ji zabiješ v rc.local) ... bude Tě proklínat. Já jsem jen odpověděl na Tvou otázku. Ostatní odpověděli tak, aby ses naučil ještě něco víc, abys viděl souvislosti.
/etc/init.d/Poté jsou definovány tzv. runlevely. Můžeme si pod nimi představit něco jako profily. Každý runlevel obsahuje několik služeb, resp. symlinky na služby.
/etc/inittab ... id:2:initdefault: ...Nebo pokud neexistuje, tak v :
/etc/init/rc-sysinit.conf ... env DEFAULT_RUNLEVEL=2 ...Podle toho, které číslo tam je definované, se spouští runlevel (seznam služeb). V tomto případě se spouští všechny služby, jenž jsou umístěny v adresáři :
ls -l /etc/rc2.d/ total 4 README S16ssh -> ../init.d/ssh S19mysql -> ../init.d/mysql S20fancontrol -> ../init.d/fancontrol S20hp-health -> ../init.d/hp-health S20vsftpd -> ../init.d/vsftpd S50rsync -> ../init.d/rsync S70dns-clean -> ../init.d/dns-clean S70pppd-dns -> ../init.d/pppd-dns S91apache2 -> ../init.d/apache2 S99grub-common -> ../init.d/grub-common S99ondemand -> ../init.d/ondemand S99rc.local -> ../init.d/rc.localOněh runlevelů bývá většinou 6 "/etc/rc1.d" až "/etc/rc6.d".
rm /etc/rc2.d/dhcpdAž budeš chtít spouštět dhcpd server po startu, tak stačí symlink opět vytvořit :
ln -s /etc/init.d/SXXdhcpd /etv/rc2.d/SXXdhcpdV tvém případě si nezapomeň zjistit, jaký runlevel se ti spouští a z jakého runlevelu ho tedy máš smazat. V příkladu pracuji s runlevel 2, možná používáš runlevel 3, nebo 5.
sudo update-rc.d dhcpd remove
a pak opět zapnout pomocí sudo update-rc.d dhcpd defaults
. Nebo třeba program rcconf
či jiný.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.