如何阻止Apache和MySQL自动启动

有没有办法让Apache和MySQL在启动时不自动运行?

目前,每当我启动我的计算机时,它们会自动启动并在后台运行。

我正在使用Ubuntu 12.04。

3个回答

Apache

sudo update-rc.d -f apache2 disable

Apache仍在使用rc.d init脚本,这就是为什么您必须使用update-rc.d禁用它。

MySQL

echo manual | sudo tee /etc/init/mysql.override

MySQL另一方面已转换为upstart配置文件。禁用upstart服务的推荐方法是使用override文件。

每次启动都要做这个吗? - shubham
不,只有一次。更改是持久的。 :) - SirCharlo
11禁用任何在/etc/init目录下具有.conf文件(如mysql)的服务的自动启动的最简洁方法是以root身份运行以下命令:echo "manual" >> /etc/init/[service_name].override - el.atomo
kudo @el.atomo Manpage 事件定义 *"manual" 此段将忽略任何先前的 start on 定义。通过在 start on 定义下的任何一行上添加此段,它提供了停止自动启动作业的能力。当指定时,只有通过 start 才能启动此类作业。-- 另外,请查看 覆盖文件处理 使用覆盖文件可以在不修改作业配置文件的情况下更改作业的环境。 - Gerard Roche
还有这个方法也可以:sudo mv /etc/init/cups.conf /etc/cups.conf.disabled。这样做可以更容易地看到哪些服务被禁用了。关于是否可以删除打印机支持(cups)的问题。 - Gerard Roche
你可以在MySQL上使用update-rc.d吗? - Ehtesh Choudhury
抱歉,没有。 - SirCharlo
在我看来,MySQL似乎只会默认与Apache一起启动,所以我只需要禁用Apache即可。 - törzsmókus

对于位于/etc/init.d目录下的所有系统服务,可以使用update-rc.d命令来禁用它们,例如:
update-rc.d -f apache2 remove

将其恢复为开机自启动:
update-rc.d apache2 defaults

你还可以通过service apache2 startservice apache2 stop手动启动和停止。


每次启动都要做这个吗? - shubham
抱歉回复晚了(刚看到你的消息)。每次开机都不需要这样做,它应该会保持下去。 - MCR