My Oracle Support Banner

SLES Linux : OHASD startup script fails with error 'insserv: Starting OVCtrl depends on pctl and therefore on system facility '$all' which can not be true!' (Doc ID 2403492.1)

Last updated on AUGUST 04, 2018

Applies to:

Oracle Database - Enterprise Edition - Version 11.2.0.3 and later
Information in this document applies to any platform.

Symptoms

Upgrading Grid Infrastructure from 11.2.0.3 to 12.1.0.2 on SLES 11 failed to install OHASD startup script upon executing rootupgrade.sh.

Environment :
OS : SLES 11
Nodes : racnode1, racnode2

racnode2:/u02/app/12.1.0/grid # ./rootupgrade.sh
Performing root user operation.

The following environment variables are set as:
ORACLE_OWNER= grid
ORACLE_HOME= /u02/app/12.1.0/grid

...

ASM configuration upgraded in local node successfully.

2018/05/02 11:29:50 CLSRSC-466: Starting shutdown of the current Oracle Grid Infrastructure stack

2018/05/02 11:31:48 CLSRSC-467: Shutdown of the current Oracle Grid Infrastructure stack has successfully completed.

OLR initialization - successful
2018/05/02 11:32:01 CLSRSC-218: Failed to install the OHASD startup script (error: 25) <<<<------

2018/05/02 11:32:01 CLSRSC-317: Failed to register Oracle OHASD service

Died at /u02/app/12.1.0/grid/crs/install/crsohasd.pm line 138.
The command '/u02/app/12.1.0/grid/perl/bin/perl -I/u02/app/12.1.0/grid/perl/lib -I/u02/app/12.1.0/grid/crs/install /u02/app/12.1.0/grid/crs/install/rootcrs.pl -upgrade' execution failed

 rootcrs log 'rootcrs_racnode2_2018-05-14_10-27-57AM.log' has the below entries which shows that init.ohasd is looping on services OVCtrl & pctl

...
2018-05-14 10:30:17: init file = /u02/app/12.1.0/grid/crs/init/init.ohasd
2018-05-14 10:30:17: Copying file /u02/app/12.1.0/grid/crs/init/init.ohasd to /etc/init.d directory
2018-05-14 10:30:17: Setting init.ohasd permission in /etc/init.d directory
2018-05-14 10:30:17: init file = /u02/app/12.1.0/grid/crs/init/ohasd.sles
2018-05-14 10:30:17: Copying file /u02/app/12.1.0/grid/crs/init/ohasd.sles to /etc/init.d directory
2018-05-14 10:30:17: Setting ohasd permission in /etc/init.d directory
2018-05-14 10:30:17: Executing cmd: /bin/rpm -q sles-release
2018-05-14 10:30:17: Command output:
> sles-release-11.4-1.109
>End Command output
2018-05-14 10:30:17: Executing cmd: /bin/rpm -q sles-release
2018-05-14 10:30:17: Command output:
> sles-release-11.4-1.109
>End Command output
2018-05-14 10:30:17: Executing cmd: /usr/lib/lsb/install_initd /etc/init.d/ohasd
2018-05-14 10:30:17: Command output:
> insserv: warning: script 'K02OVTrcSrv' missing LSB tags and overrides
> insserv: warning: script 'S17gcstartup' missing LSB tags and overrides
> insserv: warning: script 'S01lockgcstartup' missing LSB tags and overrides
> insserv: warning: script 'K02unlockgcstartup' missing LSB tags and overrides
> insserv: warning: script 'init.ohasd' missing LSB tags and overrides                                     <<<<<--------
> insserv: Default-Start undefined, assuming default start runlevel(s) for script 'init.ohasd'
> insserv: warning: script 'gcstartup' missing LSB tags and overrides
> insserv: warning: script 'OVTrcSrv' missing LSB tags and overrides
> insserv: warning: script 'unlockgcstartup' missing LSB tags and overrides
> insserv: warning: current stop runlevel(s) (3 5) of script 'unlockgcstartup' overwrites defaults (empty).
> insserv: Default-Start undefined, assuming default start runlevel(s) for script 'unlockgcstartup'
> insserv: warning: script 'lockgcstartup' missing LSB tags and overrides
> insserv: Starting OVCtrl depends on pctl and therefore on system facility '$all' which can not be true!
> insserv: Starting gcstartup depends on OVCtrl and therefore on system facility '$all' which can not be true!
> insserv: Starting OVCtrl depends on pctl and therefore on system facility '$all' which can not be true!
> insserv: Starting gcstartup depends on OVCtrl and therefore on system facility '$all' which can not be true!
> insserv: Starting OVCtrl depends on pctl and therefore on system facility '$all' which can not be true!
> insserv: Starting gcstartup depends on OVCtrl and therefore on system facility '$all' which can not be true!
> insserv: Starting OVCtrl depends on pctl and therefore on system facility '$all' which can not be true!
> insserv: Starting gcstartup depends on OVCtrl and therefore on system facility '$all' which can not be true!
> insserv: Starting OVCtrl depends on pctl and therefore on system facility '$all' which can not be true!
> insserv: Starting gcstartup depends on OVCtrl and therefore on system facility '$all' which can not be true!
> insserv: Starting OVCtrl depends on pctl and therefore on system facility '$all' which can not be true!
> insserv: Starting gcstartup depends on OVCtrl and therefore on system facility '$all' which can not be true!
> insserv: Starting OVCtrl depends on pctl and therefore on system facility '$all' which can not be true!
> insserv: Starting gcstartup depends on OVCtrl and therefore on system facility '$all' which can not be true!
> insserv: Starting OVCtrl depends on pctl and therefore on system facility '$all' which can not be true!
> insserv: Starting gcstartup depends on OVCtrl and therefore on system facility '$all' which can not be true!
> insserv: Starting OVCtrl depends on pctl and therefore on system facility '$all' which can not be true!
> insserv: Starting gcstartup depends on OVCtrl and therefore on system facility '$all' which can not be true!
> insserv: Starting OVCtrl depends on pctl and therefore on system facility '$all' which can not be true!
> insserv: Starting gcstartup depends on OVCtrl and therefore on system facility '$all' which can not be true!
> insserv: Starting OVCtrl depends on pctl and therefore on system facility '$all' which can not be true!
> insserv: Starting gcstartup depends on OVCtrl and therefore on system facility '$all' which can not be true!
> insserv: Starting OVCtrl depends on pctl and therefore on system facility '$all' which can not be true!
> insserv: There is a loop between service gcstartup and OVCtrl if started
> insserv: loop involving service OVCtrl at depth 15                                <<<<<------
> insserv: loop involving service gcstartup at depth 1
> insserv: Starting gcstartup depends on OVCtrl and therefore on system facility '$all' which can not be true!
> insserv: exiting now without changing boot order!
>End Command output
2018-05-14 10:30:17: Executing cmd: /u02/app/12.1.0/grid/bin/clsecho -p has -f clsrsc -m 218 "25"
2018-05-14 10:30:17: Command output:
> CLSRSC-218: Failed to install the OHASD startup script (error: 25)                      <<<<<------
>End Command output
...
2018-05-14 10:30:17: CLSRSC-218: Failed to install the OHASD startup script (error: 25)
2018-05-14 10:30:17: Executing cmd: /u02/app/12.1.0/grid/bin/clsecho -p has -f clsrsc -m 317
2018-05-14 10:30:17: Command output:
> CLSRSC-317: Failed to register Oracle OHASD service
>End Command output

 As suggested on bug 17315733 adding the below header (to make init.ohasd LSB tags compatible) alone to /etc/init.d/init.ohasd on SLES doesn't fix the issue.

Changes

Upgrading Grid Infrastructure from 11.2.0.3 to 12.1.0.2

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.