19

For some reason I need to disable a system service on boot. In my case this is the Avahi Daemon. I just don't want it to start on boot.

In previous Ubuntu releases (e.g. 12.04) I could do

sudo update-rc.d avahi-daemon disable

However on 14.04 it shows

update-rc.d: warning:  start runlevel arguments (none) do not match avahi-daemon Default-Start values (2 3 4 5)
update-rc.d: warning:  stop runlevel arguments (none) do not match avahi-daemon Default-Stop values (0 1 6)
 System start/stop links for /etc/init.d/avahi-daemon do not exist.

And Avahi is started on boot. How can I disable this? I'm looking for a command line way of doing this.

And please care to explain what happened here? Some change in a recent Ubuntu release broke the use of update-rc.d? I suspect I'm missing something here.

23

Ubuntu uses Upstart instead of SysV Init to start services on boot. Thus some services don't have an SysV Init script but an Upstart job description file in /etc/init/ (not /etc/init.d/). For those update-rc.d doesn't work.

Use

echo manual | sudo tee /etc/init/avahi-daemon.override

to disable avahi-daemon starting at boot. Replace avahi-daemon with whatever service you like to stop.

See Upstart Intro, Cookbook and Best Practises for more about how to work with Upstart.

  • 3
    This will change when Ubuntu switches to systemd, through. – Braiam May 18 '14 at 1:00
  • What exactly this command do? Update: nevermind I checked the documentation – VarunAgw Aug 11 '15 at 23:39

Not the answer you're looking for? Browse other questions tagged or ask your own question.