在引导时停止加载守护程序


9

我想在引导时停止某些守护程序的加载,特别是squid3。最好的方法是什么?


+1完美表达了寻找此问题答案的人。
msw

Answers:


7

为此,可以使用chkconfig实用程序。

sudo apt-get install chkconfig

要检查squid的运行级别状态,可以运行以下命令:

 chkconfig --list | grep squid

这将输出如下内容:

squid           0:off   1:off   2:on    3:on    4:on    5:on    6:off

要在所有运行级别上关闭鱿鱼,可以使用以下命令:

sudo chkconfig  squid off

 chkconfig --list | grep squid

squid           0:off   1:off   2:off   3:off   4:off   5:off   6:off

要关闭特定运行级别的鱿鱼,可以使用以下命令:

 chkconfig  --level 3  squid off

我们从(0-6)有7个等级。这些等级是什么?您能解释一下吗?
karthick87

@ karthik87:这是一篇有关linux运行级别的不错的文章。这将对您有帮助:comptechdoc.org/os/linux/howlinuxworks/linux_hlrunlevels.html
aneeshep 2010年

那新贵的脚本呢?
哈维尔·里维拉

3

系统守护程序可以使用旧版SysV初始化脚本或较新的Upstart。

对于sysv脚本,有几种管理工具,其中一种工具是“ sysv-rc-conf”包中的“ sysv-rc-conf”,安装并从终端启动。

据我所知,关于Upstart,还没有管理工具,您需要从/ etc / init中手动重命名相应的脚本,例如:

mv /etc/init/ufw.conf /etc/init/ufw.conf.disabled

Squid3使用sysv初始化脚本,您可以使用sysv-rc-conf禁用它。


1
附录:将新贵工作移走时,您不能再手动启动它。最好不注释.conf文件中“开始于”部分。
htorque 2010年

2

Squid使用旧的init系统,因此此命令应能解决问题:sudo update-rc.d -f squid3 remove

有关何时启动/停止服务的更多控制,请执行以下操作: sudo sysv-rc-conf


广告1 .:这也会删除停止该服务的链接,如果您手动启动该服务,则可能不是您想要的。
htorque

这是错误的,您始终可以使用/etc/init.d/squid3 start或启动/停止它stop
evgeny

它将删除自动停止服务的K *链接。;)
htorque 2010年

谁会想要呢?;)
evgeny

懒人(ME)!:-P
htorque 2010年

1

两种最简单的方法(从我的角度来看)。

1) mv /etc/init/squid3.conf /etc/init/squid3.conf.disabled

2)注释掉以下行

start on runlevel [2345]

/etc/init/squid3.conf


2号是唯一对我有用的解决方案。谢谢。
Paulo'9

0

以上答案不适用于我的Ubuntu 16.04。

这是它的工作原理:

sudo systemctl stop squid 
update-rc.d squid disable

sudo systemctl status squid 

虽然您可能会收到类似以下的错误:

insserv:警告:脚本鱿鱼的当前启动运行级别(空)将覆盖LSB默认值(2 3 4 5)。

insserv:警告:脚本“ squid”的当前停止运行级别(0 1 2 3 4 5 6)覆盖LSB默认值(0 1 6)。insserv:fopen(.depend.stop):权限被拒绝

即使重新启动,服务仍保持停止。

如果您知道错误发生的原因以及解决方法,请随时发表评论或编辑答案。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.