sudo service squid3 status
有效,暗示squid
是暴发户。然而,使用的服务列表
sudo service --status-all
不显示squid
。也不
sudo update-rc.d squid3 defaults
工作(给出一个错误说update-rc.d: /etc/init.d/squid3: file does not exist
)。
在做了一些研究后,我发现:
squid3.conf
是在/etc/init
- 但不是在
/etc/init.d
- 未在任何运行级别中列出
/etc/rc?.d
我的目标是不在squid
运行时启动。我希望使用新贵来做到这一点。如果没有这个,我唯一的选择是注释掉运行级别行:start [2345l]。正确的?
还有为什么会出现这种奇怪的现象呢?有什么想法、解释吗?
我使用的是 Ubuntu 14.04。
答案1
为了防止upstart
在引导期间自动启动,最好是创建一个文件,如下所示。
echo "manual" >> /etc/init/squid3.override
这将禁用自动启动,但您仍然可以手动启动作业。有关配置的更多信息,请参阅这里。
关于service --status-all
命令,这仅显示SysV
位于/etc/init.d
.
对于upstart
相关作业,您可能需要查看该initctl
命令。例如
initctl list
答案2
你可以只使用update-rc.d squid3 disable
.您将收到有关 init 脚本不存在的警告,但它仍然会完美禁用 upstart 作业。