如何阻止 Apache2 在启动时自动启动?

chi*_*hip 221 init.d apache2 systemd

如何阻止 Apache2 在启动时自动启动?当我打开机器时,我似乎找不到禁用自动启动的选项。

小智 211

您可以简单地通过以下方式禁用它:

sudo update-rc.d apache2 disable
Run Code Online (Sandbox Code Playgroud)

然后如果您想再次启用它:

sudo update-rc.d apache2 enable
Run Code Online (Sandbox Code Playgroud)

根据我正在处理的项目,如果我想重新启用该服务,可以方便地使用该服务。

  • `enable` 给了我一个错误,比如 `runlevel arguments (none) do not match LSB Default-Start values`,但是 `sudo update-rc.d apache2 defaults` 似乎已经成功地重新启用了它。 (4认同)
  • @here `sudo update-rc.d apache2 enable` 对我来说按预期播放 (2认同)

tom*_*chi 209

在旧的、pre systemd 发行版上,/etc/init.d/您将找到用于不同启动服务的所有初始化脚本,例如 apache2、网络等。

根据计算机启动的运行级别,启动不同的服务。因此,从/etc/init.d/文件夹中,每个“服务”都链接到一个/多个/无运行级别的文件夹,名称为rc0.dto rc6.d

为了简单起见,有一个用于删除/添加这些链接的工具,因此可以在启动时删除或添加脚本。

要禁用apache2,只需键入:

sudo update-rc.d apache2 disable
Run Code Online (Sandbox Code Playgroud)

这会在启动时禁用 apache2,但不会被删除,因此可以再次启用。要删除 apache2 启动脚本,请执行以下操作:

要删除apache2,只需键入:

sudo update-rc.d -f  apache2 remove
Run Code Online (Sandbox Code Playgroud)

###Doing 这将导致所有链接到 apache2 的运行级别文件夹被删除。

  • **警告!** 这将**删除**服务!使用`sudo update-rc.d apache2 disable`。 (11认同)
  • chkconfig 也可能有帮助 - “ chkconfig {service_name} off ” (2认同)
  • @TomDogg,您能指定您使用的版本吗?此答案适用于 Ubuntu 14.04.3 上的 Apache 2 (2认同)

mch*_*hid 78

现在systemd我们可以使用systemctl 命令来防止服务在启动时自动启动。

这是一个例子:

sudo systemctl disable apache2
Run Code Online (Sandbox Code Playgroud)

您仍然可以启动和停止该服务,但它不会在启动时启动。

  • Linux Mint 仍然基于 Ubuntu 14.04。Ubuntu 从 15.04 开始使用 systemd。 (2认同)

Ben*_*ing 6

以为我只是添加到@gsullins 和@tomodachi 的答案中,以供将来使用已接受答案的读者使用。

如果您已经使用过:

sudo update-rc.d apache2 remove
Run Code Online (Sandbox Code Playgroud)

您可以使用该参数defaults将 apache2 添加回自动启动

sudo update-rc.d apache2 defaults
Run Code Online (Sandbox Code Playgroud)

然后你就可以启用/禁用

sudo update-rc.d apache2 disable
sudo update-rc.d apache2 enable
Run Code Online (Sandbox Code Playgroud)