Ubuntu Server上禁止服务

在Ubuntu Server 15.10上,安装Mesos时,按照其文档说明,在禁止相关服务时采用在/etc/init目录添加相应.override的办法。如,禁止mesos-master、zookeeper这两个服务,就执行如下命令:

sudo sh -c "echo manual > /etc/init/mesos-master.override"
sudo sh -c "echo manual > /etc/init/zookeeper.override"

实事发现,并没有起到禁止服务的效果。在机器重启之后,相应服务仍然启动。

我们可以采用以下两个命令完成禁止服务的操作,尽管提示不一样,效果是一样的:

sudo update-rc.d {SERVICENAME} disable
sudo systemctl disable {SERVICENAME}

1)使用update-rc.d,尽管有错误提示,仍然有效:
禁止mesos-master:

sudo update-rc.d mesos-master disable

提示:

update-rc.d: error: cannot find a LSB script for mesos-master

禁止zookeeper:

sudo update-rc.d zookeeper disable

提示:

insserv: warning: current start runlevel(s) (empty) of script `zookeeper' overrides LSB defaults (2 3 4 5).
insserv: warning: current stop runlevel(s) (0 1 2 3 4 5 6) of script `zookeeper' overrides LSB defaults (0 1 6).

这时会在/etc/init下生成一个含有”manual” zookeeper.override文件。

2)使用systemctl,有效:
禁止mesos-master:

sudo systemctl disable mesos-master

提示:

Removed symlink /etc/systemd/system/multi-user.target.wants/mesos-master.service.

禁止zookeeper:

sudo systemctl disable zookeeper

提示:

zookeeper.service is not a native service, redirecting to systemd-sysv-install
Executing /lib/systemd/systemd-sysv-install disable zookeeper
insserv: warning: current start runlevel(s) (empty) of script `zookeeper' overrides LSB defaults (2 3 4 5).
insserv: warning: current stop runlevel(s) (0 1 2 3 4 5 6) of script `zookeeper' overrides LSB defaults (0 1 6).

也在/etc/init目录下生成了一个含有”manual”的zookeeper.override。

看来mesos-master和zookeeper的服务安装方式不一样,前者是native的,后者不是(zookeeper在/etc/init下有一个zookeeper.conf文件,而mesos-master没有对应的.conf文件)。对于非native的,禁止服务时会在/etc/init下生成一个.override文件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值