--- trunk/magellan-initscripts/sbin/rc-config 2005/09/09 16:34:35 223 +++ trunk/magellan-initscripts/sbin/rc-config 2006/03/25 21:13:09 355 @@ -1,12 +1,13 @@ #!/bin/bash -# $Header: /home/cvsd/magellan-cvs/magellan-src/magellan-initscripts/sbin/rc-config,v 1.4 2005-09-09 16:28:55 niro Exp $ +# $Header: /home/cvsd/magellan-cvs/magellan-src/magellan-initscripts/sbin/rc-config,v 1.5 2006-03-25 21:13:09 niro Exp $ RC_INIT_BASE=${MROOT}/etc/init.d RC_EXCLUDE="rc functions template splash-functions" VERSION=0.3 -get_run_levels(){ +get_run_levels() +{ local SCRIPT local ALL_LEVELS @@ -19,7 +20,8 @@ } -get_needs() { +get_needs() +{ local SCRIPT local ALL_LEVELS @@ -31,7 +33,8 @@ return 0 } -get_before() { +get_before() +{ local SCRIPT local ALL_LEVELS @@ -43,7 +46,8 @@ return 0 } -get_after() { +get_after() +{ local SCRIPT local ALL_LEVELS @@ -55,7 +59,8 @@ return 0 } -get_start() { +get_start() +{ local SCRIPT local ALL_LEVELS @@ -67,7 +72,8 @@ return 0 } -get_stop() { +get_stop() +{ local SCRIPT local ALL_LEVELS @@ -81,7 +87,8 @@ -rc_service_add() { +rc_service_add() +{ RC_SERVICE=$1 RC_START=$(get_start ${RC_SERVICE}) RC_STOP=$(get_stop ${RC_SERVICE}) @@ -92,14 +99,14 @@ case ${i} in # start ?:s) - [ "${i}" == "7:s" ] && i="sysinit:s" + [[ ${i} = 7:s ]] && i="sysinit:s" echo -e "\t\t[rc${i/:s/}.d -> S${RC_START}]" ln -snf ../init.d/${RC_SERVICE} \ ${MROOT}/etc/rc.d/rc${i/:s/}.d/S${RC_START}${RC_SERVICE} ;; # stop ?:k) - [ "${i}" == "7:k" ] && i="sysinit:k" + [[ ${i} = 7:k ]] && i="sysinit:k" echo -e "\t\t[rc${i/:k/}.d -> K${RC_STOP}]" ln -snf ../init.d/${RC_SERVICE} \ ${MROOT}/etc/rc.d/rc${i/:k/}.d/K${RC_STOP}${RC_SERVICE} @@ -112,7 +119,8 @@ done } -rc_service_del(){ +rc_service_del() +{ RC_SERVICE=$1 echo "Deleting ${RC_SERVICE} from all runlevels:" @@ -135,7 +143,8 @@ done } -rc_service_show() { +rc_service_show() +{ RC_SERVICE=$1 local ALL_RUNLEVELS @@ -143,20 +152,14 @@ # read'em (single) for i in $(seq 0 7) do - if [ ${i} -eq 7 ] - then - level=sysinit - else - level=${i} - fi + level=${i} + [[ ${i} = 7 ]] && level=sysinit for script in ${MROOT}/etc/rc.d/rc${level}.d/* do x="$(basename ${script})" - if [ "${x/???/}" == "${RC_SERVICE}" ] - then + [[ ${x/???/} = ${RC_SERVICE} ]] && ALL_RUNLEVELS[${i}]=${x/${RC_SERVICE}/} - fi done done @@ -164,52 +167,49 @@ echo -n "${RC_SERVICE}: " for i in $(seq 0 7) do - if [ ! -z "${ALL_RUNLEVELS[${i}]}" ] - then + [[ ! -z ${ALL_RUNLEVELS[${i}]} ]] && echo -n "[${i}:${ALL_RUNLEVELS[${i}]}] " - fi done echo } -check_not_excluded(){ +check_not_excluded() +{ local SCRIPT SCRIPT=$1 for i in ${RC_EXCLUDE} do - if [ ${SCRIPT} == ${i} ] - then - return 1 - fi + [[ ${SCRIPT} = ${i} ]] && return 1 done return 0 } -chg_initdefault() { +chg_initdefault() +{ local newinitdef declare -i newinitdef="$1" - if [ -z "$newinitdef" ] + if [[ -z ${newinitdef} ]] then echo "You must give an initlevel." exit 1 fi - if [ $newinitdef -le 0 -a $newinitdef -ge 6 ] + if [ ${newinitdef} -le 0 -a ${newinitdef} -ge 6 ] then echo "You can only choose initlevels between 1-5." exit 1 fi - current=$(cat ${MROOT}/etc/inittab|grep initdefault) + current=$(cat ${MROOT}/etc/inittab | grep initdefault) cp ${MROOT}/etc/inittab ${MROOT}/etc/inittab-orig sed -e "s/${current}/id:${newinitdef}:initdefault:/g" \ - ${MROOT}/etc/inittab-orig > /etc/inittab - if [ "$?" == "0" ] + ${MROOT}/etc/inittab-orig > ${MROOT}/etc/inittab + if [[ $? = 0 ]] then rm -f ${MROOT}/etc/inittab-orig echo "Changed default initlevel to ${newinitdef} successfully." @@ -220,7 +220,8 @@ fi } -usage() { +usage() +{ echo "Magellan RC Configurator v${VERSION} -- Niels Rogalla (niro@magellan-linux.de)" echo -e "\nUsage: $(basename $0) [Option] [File] ..." echo -e " add adds script to runlevel" @@ -239,7 +240,7 @@ ;; show) # show all - if [ -z "$2" ] + if [[ -z $2 ]] then echo "Currently configured Services:" for i in ${RC_INIT_BASE}/*