I ended up using miniroot from the release tapes to restore. I loaded miniroot and then mounted /usr as /u so I could work on the libraries. I copied the ld.so and libc.so.0.15 from miniroot into my /usr/lib. This didn't take on reboot, so I did this to remove the corrupt library:
mv libc.so.0.15 libc.so.0.15.1
mv libc.so.0.15.1 libc.so.0.15
and the rebooted and it booted fine.
Many people pointed out that cp is dynamically linked to the shared library, while mv is not, and I should have used mv.
firstname.lastname@example.org (Russ Poffenberger) writes:
>Ooohh, copying a shared library in use on a system is a REAL bad no-no. The
>proper procedure is to copy your new one to a new file name in /usr/lib, like
>libc.so.0.15.1.new, then on a single command line, use mv to move the old one
>to a different filename, and mv the new one to the proper name, ie..
>mv libc.so.0.15.1 libc.so.0.15.1.old;mv libc.so.0.15.1.new libc.so.0.15.1
>You must then leave the old file around until you reboot and you make sure
>no processes depend on it.
which I should have realized at the time, but I was running 36 hours on 2 hours sleep, and, well, you know how it goes:-)
Also... I then recompiled Resolv+ 2.1 beta (which is what I was trying to install when I made my little cp mistake). I moved the new libresolv.a and libc.so.0.15.1 to /usr/lib, but OpenWindows refused to use it.
>I would try a symbolic link to 0.15.1 from 0.15. Don't remove the 0.15
>library though, just rename it (you may still need it). Then rerun
>ldconfig with the appropriate directories. I have found that running
>strings on /etc/ld.so.cache gives useful information as to what is going
>on. But I still have yet to come completely to grips with when an
>executable will use ld.so.cache, and when it insists on a specific path
>name to a shared library (hence symbolic links can be useful).
While this may not be the most correct method (I would imagine if I had the OW source, recompiling that would be) but it works.
email@example.com (Debby Wyron)
firstname.lastname@example.org (Chris Bulle)
Dan Ehrlich <email@example.com>
firstname.lastname@example.org (Michael Harris)
email@example.com (HAO Computer System Managment Group)
firstname.lastname@example.org (Russ Poffenberger)
John Luke <email@example.com>
firstname.lastname@example.org (Glenn Satchell)
And anyone whose mail I may have lost shifting between one machine and the other.
-- Derrick J. Brashear | I speak for myself, Box 836 5115 Margaret Morrison St.| as does Carnegie Mellon Pittsburgh PA 15213-3890 |
This archive was generated by hypermail 2.1.2 : Fri Sep 28 2001 - 23:06:53 CDT