如何在不卸载的情况下禁用服务的自动启动?例如,我想保留tomcat的安装状态,但我不希望每次重启时都打开它。

#1 楼

这应该可以解决问题:

打开终端(Ctrl + Alt + T)并输入以下命令:

sudo update-rc.d tomcat disable


基本上update-rc.d会修改通过将开始链接重命名为停止链接,可以将脚本/etc/init.d/tomcat的现有运行级别链接。

评论


请注意,在Ubuntu 14中,默认的tomcat服务名称为“ tomcat7”。

– eaykin
15年2月16日在12:45

如果您的tomcat是tomcat6,则需要执行“ sudo update-rc.d tomcat6 disable”,否则会出现错误。

–粪
16年10月10日在16:11

奇怪的是,这删除了链接,然后在我为postgresql创建链接时创建了一些新链接。不知道。

– mlissner
17 Mar 30 '17 at 18:07

您可能需要在update-rc.d中考虑以下消息:disable | enable API不稳定,将来可能会更改。

– Sahil Arora
17年4月18日在18:34

#2 楼

更普通,更直观,并且具有一个不错的UI:sysv-rc-conf

取消选中tomcat7(运行级别2到5)的框,然后退出,就是这样。

评论


很酷,这是我以前从未见过的工具。确认update-rc.d命令确实有效很有用

– STW
2014年3月19日,1:14

这个工具很棒,这正是我要寻找的东西。非常感谢你。

– UtkuÖzdemir
2014年4月24日7:07



#3 楼

disable|enable API不稳定,将来可能会更改。我建议您使用以下命令删除/etc/rc?.d/中的所有符号链接:

update-rc.d -f tomcat remove


评论


这个为我工作。我已经手动卸载了tomcat,但是它试图在重新启动之前将其关闭。如果不使用-f参数,则禁用“文件不存在”。

– ffflabs
2013年9月2日在11:54

#4 楼

对于新贵工作,您需要禁用以下服务(例如mysql):

$ sudo -s
# echo "manual" > /etc/init/mysql.override
# exit


,或使用以下一种格式:

$ echo "manual" | sudo tee /etc/init/mysql.override > /dev/null


评论


+ 100万,这对我有用。我试图阻止传输守护程序从启动时启动,并且update-rc.d方法曾经可以正常工作,但现在看来它已转换为Upstart脚本,因此这是唯一可行的方法

– Erin Drummond
2015年3月7日在6:46

谢谢,这对我有用,并且禁用了mongodb!似乎无法使其与echo配合使用,所以我以oldschool sudo vi /etc/init/mongodb.override的方式进行了操作

–树枝
16年8月10日,0:43