What Appears to be a Service Issue

SLES11 SP2. When installing a linux application (bin file), it chokes when it trys to install as a service. Here’s the exact error:

Problem running post-install step. Installation may not complete correctly Error running chkconfig --del alfresco : insserv: warning: script 'alfresco' missing LSB tags and overrides insserv: warning: script 'alfresco' missing LSB tags and overrides insserv: Default-Start undefined, assuming default start runlevel(s) for script `alfresco' insserv: There is a loop between service RALUS and alfresco if stopped insserv: loop involving service alfresco at depth 2 insserv: loop involving service RALUS at depth 1 insserv: Stopping alfresco depends on VRTSralus.init and therefore on system facility `$all' which can not be true! insserv: loop involving service apache at depth 4 insserv: exiting now without changing boot order! /sbin/insserv failed, exit code 1

I have confirmed the application installs and i can manually start it. When i try to chkconfig alfresco on, i get the same above error. So this tells me that it has something to do with the service, maybe run levels. I am not a linux guru and am hoping someone here can help me interpret what the above error(s). Not really worried about the LSB tags (unless someone has any insight on it). What i can discern from the above error is this, alfresco service has an issue with the RALUS and apache service? RALUS is the backup exec agent on the server and we all know what apache is. Why would the alfresco service have a problem with other services on the server?

What does “depth” 2 and 1 mean? Is that the run levels maybe? Any insight on this would be much appreciated

carnold6 wrote:
[color=blue]

SLES11 SP2. When installing a linux application (bin file), it chokes
when it trys to install as a service. Here’s the exact error:

Code:

Problem running post-install step. Installation may not complete correctly

Error running chkconfig --del alfresco : insserv: warning: script
‘alfresco’ missing LSB tags and overrides
insserv: warning: script ‘alfresco’ missing LSB tags and overrides
insserv: Default-Start undefined, assuming default start runlevel(s)
for script alfresco' insserv: There is a loop between service RALUS and alfresco if stopped insserv: loop involving service alfresco at depth 2 insserv: loop involving service RALUS at depth 1 insserv: Stopping alfresco depends on VRTSralus.init and therefore on system facility $all’ which can not be true!
insserv: loop involving service apache at depth 4
insserv: exiting now without changing boot order!
/sbin/insserv failed, exit code 1

I have confirmed the application installs and i can manually start it.
When i try to chkconfig alfresco on, i get the same above error. So this
tells me that it has something to do with the service, maybe run levels.
I am not a linux guru and am hoping someone here can help me interpret
what the above error(s). Not really worried about the LSB tags (unless
someone has any insight on it). What i can discern from the above error
is this, alfresco service has an issue with the RALUS and apache
service? RALUS is the backup exec agent on the server and we all know
what apache is. Why would the alfresco service have a problem with other
services on the server?

What does “depth” 2 and 1 mean? Is that the run levels maybe? Any
insight on this would be much appreciated[/color]

Whilst you’ve told us that you’re trying to install an application to
SLES11 SP2 you’ve not told us much about the application (other than it’s
called “alfresco”).

Perhaps you could let us know which architecture of SLES11 SP2 you’re using
(32-bit, 64-bit, etc.), what is “alfresco”, where you’ve obtained it from,
and what instructions you’re following.

It certainly sounds like the service control script for “alfresco” has not
been correctly put together to meet the LSB specification and hence why
chkconfig is choking.

HTH.

Simon
Novell/SUSE/NetIQ Knowledge Partner

[quote]Whilst you’ve told us that you’re trying to install an application to
SLES11 SP2 you’ve not told us much about the application (other than it’s
called “alfresco”).

Perhaps you could let us know which architecture of SLES11 SP2 you’re using
(32-bit, 64-bit, etc.),[/quote]
64 bit sles 11 and 64 bit alfresco

opensource sharepoint alternative

Alfresco.com download page

http://docs.alfresco.com/4.2/index.jsp?topic=%2Fcom.alfresco.enterprise.doc%2Ftasks%2Fsimpleinstall-community-lin.html

[Quote]It certainly sounds like the service control script for “alfresco” has not
been correctly put together to meet the LSB specification and hence why
chkconfig is choking.[/quote]
I installed alfresco on a test sles11 server and did not experience any chkconfig problems

Hi carnold6,

I installed alfresco on a test sles11 server and did not experience any chkconfig problems

Looking at the original messages, there is another package involved

[COE]insserv: There is a loop between service RALUS and alfresco if stopped insserv: loop involving service alfresco at depth 2 insserv: loop involving service RALUS at depth 1 insserv: Stopping alfresco depends on VRTSralus.init and therefore on system facility `$all’ which can not be true![/CODE]

Does RALUS exist on the “test sless11 server”, too and if yes, are the /etc/init.d files identical?

The init system is trying to create a proper boot order of things, which is done via resolving dependency chains defined in the “LSB tags” of the files in /etc/init.d:

[CODE]### BEGIN INIT INFO

Provides: cron

Required-Start: $remote_fs $syslog $time

Should-Start: $network smtp

Required-Stop: $remote_fs $syslog

Should-Stop: $network smtp

Default-Start: 2 3 5

Default-Stop: 0 1 6

Short-Description: Cron job service

Description: Cron job service

END INIT INFO[/CODE] (sample taken from /etc/init.d/cron)

Now for some reason, the LSB sections of the packets in question each define that they depend on the other service to be started (or stopped) first - which “insserv” cannot resolve. Hence the error messages.

Have a look at the LSB sections of the services in question…

Regards,
Jens

[QUOTE=jmozdzen;12117]
Looking at the original messages, there is another package involved

insserv: There is a loop between service RALUS and alfresco if stopped insserv:  loop involving service alfresco at depth 2 insserv:  loop involving service RALUS at depth 1 insserv: Stopping alfresco depends on VRTSralus.init and therefore on system facility `$all' which can not be true!

Does RALUS exist on the “test sless11 server”, too and if yes, are the /etc/init.d files identical?[/code]
I dont beoieve so

The init system is trying to create a proper boot order of things, which is done via resolving dependency chains defined in the “LSB tags” of the files in /etc/init.d:

[CODE]### BEGIN INIT INFO

Provides: cron

Required-Start: $remote_fs $syslog $time

Should-Start: $network smtp

Required-Stop: $remote_fs $syslog

Should-Stop: $network smtp

Default-Start: 2 3 5

Default-Stop: 0 1 6

Short-Description: Cron job service

Description: Cron job service

END INIT INFO[/CODE] (sample taken from /etc/init.d/cron)

Now for some reason, the LSB sections of the packets in question each define that they depend on the other service to be started (or stopped) first - which “insserv” cannot resolve. Hence the error messages.

Have a look at the LSB sections of the services in question…[/QUOTE]
I see in the RALUS script Required-Start is set to $ALL and i assume this is the “issue” alfresco is talking about in the error. I do not know what Required-Start should be in this case.

Here is the init.d file of alfresco:

[code]#!/bin/sh

chkconfig: 2345 80 30

description: Alfresco Community

RETVAL=0

start () {
/opt/alfresco/alfresco.sh start “$2”
RETVAL=$?
if [ -d “/var/lock/subsys” ] && [ id -u = 0 ] && [ $RETVAL -eq 0 ] ; then
touch /var/lock/subsys/alfresco
fi

}

stop () {
/opt/alfresco/alfresco.sh stop “$2”
RETVAL=$?
}

case “$1” in
start)
start “$@”
;;
stop)
stop “$@”
;;
restart)
stop “$@”
start “$@”
;;
*)
/opt/alfresco/alfresco.sh “$@”
RETVAL=$?
esac
exit $RETVAL[/code]

Here is init.d of RALUS:

[code]#!/bin/sh

BEGIN INIT INFO

Provides: RALUS

Required-Start: $ALL

Required-Stop:

Default-Start: 2 3 5

Default-Stop: 0 1 4 6

Description: Symantec Backup Exec Remote Agent

END INIT INFO

chkconfig: 235 95 35

description: Symantec Backup Exec Remote Agent

if [ ! -d /opt/VRTSralus ]
then
echo “Symantec Backup Exec Remote Agent missing /opt/VRTSralus [FAILED]”
exit 1
fi

if [ ! -d /etc/VRTSralus ]
then
echo “Symantec Backup Exec Remote Agent missing /etc/VRTSralus [FAILED]”
exit 1
fi

if [ ! -d /var/VRTSralus ]
then
echo “Symantec Backup Exec Remote Agent missing /var/VRTSralus [FAILED]”
exit 1
fi

CMD="$1"

case “$CMD” in
‘start’)
if [ -x /opt/VRTSralus/bin/beremote ]
then

            if [ -f /bin/grep ]
            then
                    PID=`/bin/ps -e | /bin/grep beremote | /bin/sed -e 's/^  *//' -e 's/ .*//'`
            else
                    PID=`/usr/bin/ps -e | /usr/bin/grep beremote | /usr/bin/sed -e 's/^  *//' -e 's/ .*//'`
            fi

            if [ "${PID}" != "" ]
            then
                    echo "Symantec Backup Exec Remote Agent currently running."
                    exit 2
            fi
    
            if [ -f /dev/st0 -a ! -f /dev/sg0 ]
            then
                    modprobe sg
            fi

	echo -n "Starting Symantec Backup Exec Remote Agent "
	rm -f /var/VRTSralus/ralus.pid
	rm -f /var/VRTSralus/ralus.errpid
	/opt/VRTSralus/bin/beremote >/var/VRTSralus/beremote.service.log 2>/var/VRTSralus/beremote.service.log &
	PIDWAIT=30
	while [ "$PIDWAIT" != "0" ] 
	do
		if [ -f /var/VRTSralus/ralus.pid ]
		then
			PIDWAIT=0
		else
			PIDWAIT=$(($PIDWAIT-1))
			echo -n "."
			sleep 1;
		fi
		if [ -f /var/VRTSralus/ralus.errpid ]
		then
			PIDWAIT=0
		fi
	done
	if [ -f /var/VRTSralus/ralus.pid ]
	then
		RETVAL=0
	else
		RETVAL=1
	fi
	echo
else
	RETVAL=1
fi
if [ "$RETVAL" = "0" ]
then
	echo "Starting Symantec Backup Exec Remote Agent:                              [  OK  ]"
else
	echo "Starting Symantec Backup Exec Remote Agent:                              [FAILED]"
fi
;;

‘stop’)
if [ -f /bin/grep ]
then
PID=/bin/ps -e | /bin/grep beremote | /bin/sed -e 's/^ *//' -e 's/ .*//'
else
PID=/usr/bin/ps -e | /usr/bin/grep beremote | /usr/bin/sed -e 's/^ *//' -e 's/ .*//'
fi

if [ "${PID}" != "" ]
then
	echo -n "Stopping Symantec Backup Exec Remote Agent "
	if [ -f /bin/pkill ]
	then
		/bin/pkill -15 beremote
	else 
		/usr/bin/pkill -15 beremote
	fi
	RETVAL=$?

	PIDWAIT=30
	while [ "$PIDWAIT" != "0" ]
	do
                    RESULT=`ps -p ${PID} | grep ${PID} | awk '{print $1}'`
		if [ -f /var/VRTSralus/ralus.pid -a "$RESULT" = "" ]
		then
			PIDWAIT=0
                            RETVAL=0
		else
			PIDWAIT=$(($PIDWAIT-1))
			echo -n "."
			sleep 1;
		fi
	done
            echo  
	rm -f /var/VRTSralus/ralus.pid
	rm -f /var/VRTSralus/ralus.errpid
else
	RETVAL=1
fi

if [ "$RETVAL" = "0" ]
then
	echo "Stopping Symantec Backup Exec Remote Agent:                              [  OK  ]"
else
	echo "Stopping Symantec Backup Exec Remote Agent:                              [FAILED]"
fi
;;

‘restart’)
$0 stop
$0 start
RETVAL=1
;;
*)
echo “Symantec Backup Exec Remote Agent for Linux/Unix Servers”
echo “Usage: VRTSralus.init { start | stop | restart }”
RETVAL=1
;;
esac

exit $RETVAL[/code]

[QUOTE=carnold6;12121]I see in the RALUS script Required-Start is set to $ALL and i assume this is the “issue” alfresco is talking about in the error. I do not know what Required-Start should be in this case.

Here is the init.d file of alfresco:[/QUOTE]

indeed, Alfresco seems to have no LSB tags, so insserv will probably try to stop it last.

[QUOTE=carnold6;12121] Here is init.d of RALUS:

[code]#!/bin/sh

BEGIN INIT INFO

Provides: RALUS

Required-Start: $ALL

Required-Stop:

Default-Start: 2 3 5

Default-Stop: 0 1 4 6

Description: Symantec Backup Exec Remote Agent

END INIT INFO

…[/code]
[/QUOTE]
As this is a backup agent, probably “$local_fs $network” would be a better choice - but actually, you’d have to ask that a Symantec person.

A different approach would be to create an LSB section for alfresco, like

[code]#!/bin/sh

BEGIN INIT INFO

Provides: alfresco

Required-Start: $network

Required-Stop:

Default-Start: 3 5

Default-Stop: 0 1 4 6

Description: Alfresco http://www.alfresco.com

END INIT INFO[/code]

and depending on Alfreco’s needs, add i.e. apache2, $remote_fs or alike to “Required-Start”. (I don’t know that software, so it’s up to you. If you know that Alfresco depends on some service, i.e. mysql server, check that service’s LSB section for “Provides:” and add that name to the Required-Start statement of Alfresco.) I assume that there are no services that ought to be stopped when Alfresco is stopped, so Required-Stop may be left empty. “Default-Start: 3 5” means to start this service in runlevels 3 and 5 - see comments in /etc/inittab.

Hope this helps resolving the issue for you.

Regards,
Jens