How can I disable autostart for a service without uninstalling? For example, I'd like to leave tomcat installed, but I don't want it turning on every time I restart.
Asked
Active
Viewed 2.3e+01k times
4 Answers
192
This should do the trick:
Open terminal (Ctrl + Alt + T) and enter the following command:
sudo update-rc.d tomcat disable
Basically update-rc.d will modify existing runlevel links for the script /etc/init.d/tomcat by renaming start links to stop links.
rink.attendant.6
- 123
- 1
- 1
- 9
hhlp
- 41,392
- 18
- 84
- 133
-
6Note that the default tomcat service name is "tomcat7" in ubuntu 14. – eaykin Feb 16 '15 at 12:45
-
If your tomcat is tomcat6 you will need to do "sudo update-rc.d tomcat6 disable" else you will get error. – Dung Jun 10 '16 at 16:11
-
Weirdly, this removed the links, and then created some new ones when I did it for postgresql. Dunno. – mlissner Mar 30 '17 at 18:07
-
You might want to consider this message in the `update-rc.d`: `The disable|enable API is not stable and might change in the future.` – Sahil Arora Apr 18 '17 at 18:34
43
More generic and more visual, with a nice UI: sysv-rc-conf
Uncheck the boxes for tomcat7 (runlevels 2 to 5), quit and that's it.
youri
- 860
- 1
- 9
- 12
-
cool, that's a tool I haven't seen before. It was useful to confirm that the `update-rc.d` command actually had worked – STW Mar 19 '14 at 01:14
-
This tool is great, it was the thing I was searching for. Thank you very much for it. – Utku Özdemir Apr 24 '14 at 07:07
41
The disable|enable API is not stable and might change in the future. I suggest you use the following command to remove all the symlinks in /etc/rc?.d/:
update-rc.d -f tomcat remove
Anwar
- 75,875
- 31
- 191
- 309
Riceball LEE
- 571
- 5
- 6
-
This one worked for me. I had uninstalled tomcat manually yet it was trying to shut it down before any reboot. Disable without -f parameter yelded "file does not exists". – ffflabs Sep 02 '13 at 11:54
20
For upstart jobs, you need to disable service like this (e.g. mysql):
$ sudo -s
# echo "manual" > /etc/init/mysql.override
# exit
or using this one-liner:
$ echo "manual" | sudo tee /etc/init/mysql.override > /dev/null
Tomofumi
- 539
- 4
- 9
-
+ 1 million, this is what worked for me. I was trying to stop transmission-daemon from starting on startup and the update-rc.d method *used* to work, but it looks like its been converted to an Upstart script now so this is the only method that works – Erin Drummond Mar 07 '15 at 06:46
-
Thanks, this worked for me and disabling mongodb! Couldn't seem to get it working with echo so I did it the oldschool `sudo vi /etc/init/mongodb.override` way – twig Aug 10 '16 at 00:43