Whenever I update my OpenWrt system using sysupgrade, unwanted services
pop up; I am using one of my devices as a simple AP, so it must not start
dnsmasq, odhcpd or the firewall service. Running sysupgrade however reinstates
the links in /etc/rc.d/ removed by '/etc/init.d/foo disable'.

I was thinking about an elegant way to change this behaviour and would like to
request some feedback.

1) do not remove the link, but change it

I tried patching rc.common to change the service link in /etc/rc.d/ to a new
script /etc/init.d/DISABLED that just forwards any call to the real script - 
except
the start instruction which is disabled.

For example: After running '/etc/init.d/dnsmasq disable', /etc/rc.d/S60dnsmasq
will still be present, but point toward ../init.d/DISABLED which defies service
startup.

While this all works, it doesn't help for sysupgrade purposes: the links in
/etc/rc.d/ are replaced during a sysupgrade.

2) add some flag file for disabled services

I also thought about adding a flagfile like /etc/disable/dnsmasq that get's 
checked
in /etc/rc.common before running the start command; this however would prevent 
the
manual startup of a service that is still possible with option 1).

Can anyone supply any different ideas or provide some feedback?
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to