Archive
Oracle Linux 6.1 And libcap.so.1: cannot open shared object
Last Week trying to install Oracle GI 11.2.0.2 on Oracle Linux 6.1 and hit with this error. This is a test setup on VirtualBox and this error was hit while running root.sh for standalone db setup.
Entries will be added to the /etc/oratab file as needed by Database Configuration Assistant when a database is created Finished running generic part of root script. Now product-specific root actions will be performed. Using configuration parameter file: /u01/app/oracle/product/11.2.0/grid/crs/install/crsconfig_params /u01/app/oracle/product/11.2.0/grid/bin/clscfg.bin: error while loading shared libraries: libcap.so.1: cannot open shared object file: No such file or directory Failed to create keys in the OLR, rc = 127, 32512 Failed to create keys in the OLR at /u01/app/oracle/product/11.2.0/grid/crs/install/crsconfig_lib.pm line 6785. /u01/app/oracle/product/11.2.0/grid/perl/bin/perl -I/u01/app/oracle/product/11.2.0/grid/perl/lib -I/u01/app/oracle/product/11.2.0/grid/crs/install /u01/app/oracle/product/11.2.0/grid/crs/install/roothas.pl execution failed While if you can see from here we have new version of this package. [root@linux6 /]# rpm -qa |grep cap libcap-ng-python-0.6.4-3.el6_0.1.x86_64 libcap-2.16-5.2.el6.x86_64 libcap-ng-utils-0.6.4-3.el6_0.1.x86_64 perl-Pod-Escapes-1.04-119.el6.x86_64 mailcap-2.1.31-1.1.el6.noarch libcap-ng-devel-0.6.4-3.el6_0.1.x86_64 libcap-ng-0.6.4-3.el6_0.1.x86_64 libpcap-1.0.0-6.20091201git117cb5.el6.x86_64 libcap-devel-2.16-5.2.el6.x86_64
So, the solution would be adding this package. Well, it’s in 5.6 distro but then it would conflict with this new version and will not install. As this is the library what i did was just copied with the name it required
[root@linux6 lib64]# ls -ltr libcap* -rwxr-xr-x 1 root root 19048 Jul 6 2010 libcap.so.2.16 -rwxr-xr-x 1 root root 21160 Jan 27 09:49 libcap-ng.so.0.0.0 lrwxrwxrwx. 1 root root 14 Jun 10 06:43 libcap.so.2 -> libcap.so.2.16 lrwxrwxrwx. 1 root root 18 Jun 10 06:43 libcap-ng.so.0 -> libcap-ng.so.0.0.0 lrwxrwxrwx 1 root root 11 Jun 11 01:02 libcap.so -> libcap.so.2 [root@linux6 lib64]# cp libcap.so.2 libcap.so.1 [root@linux6 lib64]# ls -ltr libcap* -rwxr-xr-x 1 root root 19048 Jul 6 2010 libcap.so.2.16 -rwxr-xr-x 1 root root 21160 Jan 27 09:49 libcap-ng.so.0.0.0 lrwxrwxrwx. 1 root root 14 Jun 10 06:43 libcap.so.2 -> libcap.so.2.16 lrwxrwxrwx. 1 root root 18 Jun 10 06:43 libcap-ng.so.0 -> libcap-ng.so.0.0.0 lrwxrwxrwx 1 root root 11 Jun 11 01:02 libcap.so -> libcap.so.2 -rwxr-xr-x 1 root root 19048 Jun 11 16:24 libcap.so.1
After this we need to deconfig current install and try to run that root.sh again. and it worked fine but now facing different error.
/u01/app/oracle/product/11.2.0/grid/crs/install/roothas.pl -deconfig -force
[root@linux6 lib64]# /u01/app/oracle/product/11.2.0/grid/root.sh
Running Oracle 11g root script...
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /u01/app/oracle/product/11.2.0/grid
Enter the full pathname of the local bin directory: [/usr/local/bin]:
The contents of "dbhome" have not changed. No need to overwrite.
The contents of "oraenv" have not changed. No need to overwrite.
The contents of "coraenv" have not changed. No need to overwrite.
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Using configuration parameter file: /u01/app/oracle/product/11.2.0/grid/crs/install/crsconfig_params
LOCAL ADD MODE
Creating OCR keys for user 'oracle', privgrp 'oinstall'..
Operation successful.
LOCAL ONLY MODE
Successfully accumulated necessary OCR keys.
Creating OCR keys for user 'root', privgrp 'root'..
Operation successful.
CRS-4664: Node linux6 successfully pinned.
Adding daemon to inittab
ohasd failed to start
Failed to start the Clusterware. Last 20 lines of the alert log follow:
2011-06-11 00:21:28.052
[client(11555)]CRS-2101:The OLR was formatted using version 3.
2011-06-11 01:14:13.033
[client(12628)]CRS-2101:The OLR was formatted using version 3.
2011-06-11 16:29:31.460
[client(15913)]CRS-2101:The OLR was formatted using version 3.
2011-06-11 16:29:33.299
[client(15938)]CRS-1001:The OCR was formatted using version 3.
[client(15976)]CRS-10001:CRS-6021: No msg for has:crs-6021 [l][unlimited]
[client(15977)]CRS-10001:CRS-6021: No msg for has:crs-6021 [n][65536]
ohasd failed to start at /u01/app/oracle/product/11.2.0/grid/crs/install/roothas.pl line 325.
/u01/app/oracle/product/11.2.0/grid/perl/bin/perl -I/u01/app/oracle/product/11.2.0/grid/perl/lib -I/u01/app/oracle/product/11.2.0/grid/crs/install /u01/app/oracle/product/11.2.0/grid/crs/install/roothas.pl execution failed
Well looked into tracefiles but no clue. But after tracing that this was the exact thing that was causing error
6422 14:58:57.214094 times({tms_utime=20, tms_stime=15, tms_cutime=1, tms_cstime=1}) = 443906869
26422 14:58:57.214705 gettimeofday({1307908737, 214869}, NULL) = 0
26422 14:58:57.215679 socket(PF_FILE, SOCK_STREAM, 0) = 5
26422 14:58:57.216529 access("/var/tmp/.oracle/sOHASD_UI_SOCKET", F_OK) = -1 ENOENT (No such file or directory)
26422 14:58:57.217539 access("/var/tmp/o/sOHASD_UI_SOCKET", F_OK) = -1 ENOENT (No such file or directory)
26422 14:58:57.218160 close(5) = 0
26422 14:58:57.219153 close(3) = 0
26422 14:58:57.220169 open("/u01/app/oracle/product/11.2.0/grid/crs/mesg/crsus.msb", O_RDONLY) = 3
26422 14:58:57.220975 fcntl(3, F_SETFD, FD_CLOEXEC) = 0
So, found on metalink that this might be issue with pipes and it was not able to read from that. and here is the solution
[root@linux6 tmp]# /bin/dd if=/var/tmp/.oracle/npohasd of=/dev/null bs=1024 count=1
[root@linux6 tmp]# /u01/app/oracle/product/11.2.0/grid/root.sh
Running Oracle 11g root script...
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /u01/app/oracle/product/11.2.0/grid
Enter the full pathname of the local bin directory: [/usr/local/bin]:
The contents of "dbhome" have not changed. No need to overwrite.
The contents of "oraenv" have not changed. No need to overwrite.
The contents of "coraenv" have not changed. No need to overwrite.
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Using configuration parameter file: /u01/app/oracle/product/11.2.0/grid/crs/install/crsconfig_params
Creating trace directory
LOCAL ADD MODE
Creating OCR keys for user 'oracle', privgrp 'oinstall'..
Operation successful.
LOCAL ONLY MODE
Successfully accumulated necessary OCR keys.
Creating OCR keys for user 'root', privgrp 'root'..
Operation successful.
CRS-4664: Node linux6 successfully pinned.
Adding daemon to inittab
ACFS-9459: ADVM/ACFS is not supported on this OS version: 'error: file /etc/SuSE-release: No such file or directory
'
linux6 2011/06/12 16:34:05 /u01/app/oracle/product/11.2.0/grid/cdata/linux6/backup_20110612_163405.olr
Successfully configured Oracle Grid Infrastructure for a Standalone Server
Well, will update this post with more information. Also, You can see that this OS is not certified yet and ACFS is not supported. and not understand why it need SuSE-release