hello all,
I had the same issue last week (kernel panick! libcwait.so file missing or something like that!) on RHES V3. If I understood the early warning sign ("relocation error: GLIBC_2.0 not defined......." error when trying to use the Oracle report engine "runrep" command) after restoring production data on a test server, the issue would have been resolved a lot quicker - using scenario 1 below.
In my case, the program i was trying to execute "runrep" called
/etc/ld.so.preload using
glibc(see more about the ld.so files
here).
ld.so.preload in turn pointed to
/etc/libcwait.so. The libcwait.so file was missing hence the issue.
It can be fundamentally resolved within the scope of two scenarios.
1. Scenario one - if detected before a shutdown/reboot (i.e with the relocation error) then recompile another libcwait.so file (instructions
here) OR copy the libcwait.so file from another server (assumption is that there is a replicated environment) and paste in
/etc/.
2. Scenario two - if in the event you reboot and have the "kernel panick" issue (which I had) then reboot in rescue mode (using the RH cd). Most likely, if you try
'chroot /mnt/sysimage', it would not work as the libcwait.so file is not in
/mnt/sysimage/etc/ directory. Get the
libcwait.so file from another node (or recompile as indicated in scenario 1) and drop in
/mnt/sysimage/ which is actually the root directory of the OS (if it were not in rescue mode). Then edit the pointer in
/mnt/sysimage/ld.so.preload from /
etc/libcwait.so to
/mnt/sysimage/libcwait.so. Now do
'chroot /mnt/sysimage' IT SHOULD WORK if the issue is with the link in the
ld.so.preload file. Now place the libcwait.so in /etc/ and reboot. VOILA!!!
Cheers.
Olayemi