Blastwave packages is one method of getting software on your Accelerator.
The number one issue we see after upgrading from BlastWave is ssl and crypto libraries fail to get their symbolic links set correctly. There are two places where you will find these libraries
/opt/csw/lib /opt/csw/lib/amd64
In the following example we are using lynx as an example of a 32 bit program and mysqld as a 64 bit program.
Lets say that lynx is complaining about a missing library.
lynx http://localhost:8000 ld.so.1: lynx: fatal: libssl.so.0.9.8: open failed: No such file or directory Killed
[zXXXXXAA:/opt/csw/lib] linda$ ls -lrt libssl* -r-xr-xr-x 1 root bin 251K Jul 30 2003 libssl.so.0.9.6.20071002135639.1805* lrwxrwxrwx 1 root root 15 Apr 13 00:35 libssl.so -> libssl.so.0.9.8 -rw-r--r-- 1 root bin 504K Jul 23 09:49 libssl.a -r-xr-xr-x 1 root bin 369K Jul 23 10:02 libssl.so.0.9.8.20071002135639.1805* -r-xr-xr-x 1 root bin 285K Aug 21 23:51 libssl.so.0.9.7.20071002135639.1805*
You can see that the symbolic link is pointing to a non existent file. To correct, fix the
mv libssl.so.0.9.8.20071002135639.1805 libssl.so.0.9.8
- but there might be other libraries which are missing so to find out use ldd. Keep hunting until all missing libraries have been located.
ldd /opt/csw/bin/lynx
libz.so => /opt/csw/lib/i386/libz.so
libbz2.so.1.0 => /opt/csw/lib/i386/libbz2.so.1.0
libncurses.so.5 => /opt/csw/lib/i386/libncurses.so.5
libssl.so.0.9.8 => /opt/csw/lib/i386/libssl.so.0.9.8
libcrypto.so.0.9.8 => /opt/csw/lib/i386/libcrypto.so.0.9.8
libnsl.so.1 => /lib/libnsl.so.1
libsocket.so.1 => /lib/libsocket.so.1
libc.so.1 => /lib/libc.so.1
libdl.so.1 => /lib/libdl.so.1
libmp.so.2 => /lib/libmp.so.2
libmd.so.1 => /lib/libmd.so.1
libscf.so.1 => /lib/libscf.so.1
libuutil.so.1 => /lib/libuutil.so.1
libgen.so.1 => /lib/libgen.so.1
libm.so.2 => /lib/libm.so.2
You do a
svcs -x
and discover that cswmysql5 is not running. To find out why look in the error log file
# tail /opt/csw/mysql5/var/example.com.err 071005 00:09:48 mysqld started ld.so.1: mysqld: fatal: libssl.so.0.9.8: open failed: No such file or directory 071005 00:09:48 mysqld ended
To see what is going on look in
ls -lrt /opt/csw/lib/amd64/libssl*
and sure enough you find something like this:
-rw-r--r-- 1 root bin 701K Aug 21 23:47 libssl.a -rwxr-xr-x 1 root bin 454K Aug 21 23:51 libssl.so.0.9.8.20071002135639.1805* lrwxrwxrwx 1 root root 15 Oct 2 13:53 libssl.so -> libssl.so.0.9.8
The symbolic link for libssl.so is pointing to a non existent file. To fix it do this:
mv libssl.so.0.9.8.20071002135639.1805 libssl.so.0.9.8
Now to try to restart mysql
svcadm clear cswmysql5
Again you check with the
svcs -x
and see that it is still failing. So back to the error log file and you see this:
# tail /opt/csw/mysql5/var/example.com.err 071005 00:37:33 mysqld started ld.so.1: mysqld: fatal: libcrypto.so.0.9.8: open failed: No such file or directory 071005 00:37:33 mysqld ended
going back to the /opt/csw/lib/amd64 and doing
ls -lrt libcrypto*
reviles that the symbolic link is broken to fix it you do this:
mv libcrypto.so.0.9.8.20071002135639.1805 libcrypto.so.0.9.8
[zXXXXXAA:/opt/csw/lib] linda$ ls -lrt libssl* -r-xr-xr-x 1 root bin 251K Jul 30 2003 libssl.so.0.9.6.20071002135639.1805* lrwxrwxrwx 1 root root 15 Apr 13 00:35 libssl.so -> libssl.so.0.9.8 -rw-r--r-- 1 root bin 504K Jul 23 09:49 libssl.a -r-xr-xr-x 1 root bin 369K Jul 23 10:02 libssl.so.0.9.8.20071002135639.1805* -r-xr-xr-x 1 root bin 285K Aug 21 23:51 libssl.so.0.9.7.20071002135639.1805*
You can see that the symbolic link is pointing to a non existent file. To correct, fix the
mv libssl.so.0.9.8.20071002135639.1805 libssl.so.0.9.8
- but there might be other libraries which are missing so to find out use ldd. Keep hunting until all missing libraries have been located.
ldd /opt/csw/bin/lynx
libz.so => /opt/csw/lib/i386/libz.so
libbz2.so.1.0 => /opt/csw/lib/i386/libbz2.so.1.0
libncurses.so.5 => /opt/csw/lib/i386/libncurses.so.5
libssl.so.0.9.8 => /opt/csw/lib/i386/libssl.so.0.9.8
libcrypto.so.0.9.8 => /opt/csw/lib/i386/libcrypto.so.0.9.8
libnsl.so.1 => /lib/libnsl.so.1
libsocket.so.1 => /lib/libsocket.so.1
libc.so.1 => /lib/libc.so.1
libdl.so.1 => /lib/libdl.so.1
libmp.so.2 => /lib/libmp.so.2
libmd.so.1 => /lib/libmd.so.1
libscf.so.1 => /lib/libscf.so.1
libuutil.so.1 => /lib/libuutil.so.1
libgen.so.1 => /lib/libgen.so.1
libm.so.2 => /lib/libm.so.2
You do a
svcs -x
and discover that cswmysql5 is not running. To find out why look in the error log file
# tail /opt/csw/mysql5/var/example.com.err 071005 00:09:48 mysqld started ld.so.1: mysqld: fatal: libssl.so.0.9.8: open failed: No such file or directory 071005 00:09:48 mysqld ended
To see what is going on look in
ls -lrt /opt/csw/lib/amd64/libssl*
and sure enough you find something like this:
-rw-r--r-- 1 root bin 701K Aug 21 23:47 libssl.a -rwxr-xr-x 1 root bin 454K Aug 21 23:51 libssl.so.0.9.8.20071002135639.1805* lrwxrwxrwx 1 root root 15 Oct 2 13:53 libssl.so -> libssl.so.0.9.8
The symbolic link for libssl.so is pointing to a non existent file. To fix it do this:
mv libssl.so.0.9.8.20071002135639.1805 libssl.so.0.9.8
Now to try to restart mysql
svcadm clear cswmysql5
Again you check with this
svcs -x
this time the list is hopefully empty