From: Mark Chace (markcha@microsoft.com)
Date: 01/02/93


From: markcha@microsoft.com (Mark Chace)
Subject: Re: Can't log in as non-root...
Date: 02 Jan 1993 09:33:00 GMT

In article <chans.725921524@marsh> chans@cs.curtin.edu.au (Sean Chan) writes:
>Sorry if this question has been asked before but I can't find it, but I
>can't log in as root anymore. This happened AFTER I tried symlinking
>libc.so.4 to libc.so.4.2. The error I get is :-
>
>login: user1
>-bash: can't load library '/lib/libc.so.4'
> Permission denied

The problem is that the library needs to be world readable. Do a

    chmod a+r /lib/libc.so.4.2
>
>I've tried chowning libc.so.4 to bin.bin or root.other (currently it's
>root.root) but it makes no difference. Also, once I've got libc.so.4.2
>done, can I delete libc.so.4.0 and libc.so.4.1??

Probably not. When linked, a jump-table program will contain an imbedded
name of the shared library to load. By the magic of jump tables, a
program will be compatable with future shared libraries, which is why you
you can create a link from the old name to the new name.

As long as you have a program that has the old name imbedded in it, you
need a file with the name of the static image for linux to load, or the
program will refuse to run. You can deturmine what name a program uses
for the image with the ldd program.

Mark