serv-disable 1.47 KB
Newer Older
1 2
#!/bin/sh
#
3 4
# Copyright (C) 2012, 2016  Etersoft
# Copyright (C) 2012, 2016  Vitaly Lipatov <lav@etersoft.ru>
5
#
6 7 8
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
9 10 11 12 13
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
# GNU Affero General Public License for more details.
15
#
16 17
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
18 19 20 21 22 23
#

load_helper serv-stop
load_helper serv-status

# Enable service by default
24
serv_disable()
25
{
26 27
	local SERVICE="$1"

28
	is_service_running $1 && { serv_stop $1 || return ; }
Vitaly Lipatov's avatar
Vitaly Lipatov committed
29
	is_service_autostart $1 || { info "Service $1 already disabled for startup" && return ; }
30 31

	case $SERVICETYPE in
32
		service-chkconfig|service-upstart)
33 34 35 36
			if is_anyservice $SERVICE ; then
				sudocmd anyservice $SERVICE off
				return
			fi
37 38
			sudocmd chkconfig $1 off
			;;
39
		service-initd|service-update)
40 41
			sudocmd update-rc.d $1 remove
			;;
Vitaly Lipatov's avatar
Vitaly Lipatov committed
42 43 44
		systemd)
			sudocmd systemctl disable $1
			;;
45 46 47
		openrc)
			sudocmd rc-update del $1 default
			;;
48 49 50
		runit)
			sudocmd rm -fv /var/service/$SERVICE
			;;
51
		*)
52
			fatal "Have no suitable command for $SERVICETYPE"
53 54 55
			;;
	esac
}