On a server I haven't installed, ntpd is broken:
# /etc/init.d/ntpd start
ntpd: error while loading shared libraries:
libz.so.1: cannot open shared object file: Permission denied
but permissions look right:
# ldd /usr/sbin/ntpd
libz.so.1 => /usr/lib64/libz.so.1
# ls -l /usr/lib64/libz.so.1
lrwxrwxrwx root root /usr/lib64/libz.so.1 -> libz.so.1.2.3
# ls -l /usr/lib64/libz.so.1.2.3
-rwxr-xr-x root root /usr/lib64/libz.so.1.2.3
LD_LIBRARY_PATH
is empty and the server is 64 bit:
# uname -a
Linux my.server 2.6.18-128.el5 #1 SMP [...] x86_64 x86_64 x86_64 GNU/Linux
How do I find out which library hasn't enough permissions?
If you are using SELinux, then you might have a wrong label on /usr/lib64/libz.so.1.2.3 file.