Re: 2.0.33: talk about weird

Richard B. Johnson (root@chaos.analogic.com)
Wed, 14 Jan 1998 14:15:28 -0500 (EST)


On Wed, 14 Jan 1998, Samuli Kaski wrote:

> I Just had a confusing experience I wanted to share with you all.
>
> The story begins when I interrupted a "rm -rf /usr/local/lib/" started
> by mistake. (as root) Next thing I know I can't compile anything, gcc
> dies with signal 11. Well I checked that /usr/local/lib doesn't
> contain any files required/used by gcc. Well it shouldn't.
>
Well it certainly should have symlinks to /usr/lib so that it doesn't
have duplicate files. Also `ls /usr/lib/libg*` will show what
became `unavailable` after the symlinks were removed.

> A bit later I had to install a program from CD, I ejected the CD
> inserted by that time (wasn't mounted since it was ejected) and an
> mount attempt (actually several) on the new CD gave me:
[SNIPPED]
>
> Sorry there were no oops, I just thought I let you guys know. Maybe
> the rm -rf caused inodes to get corrupted causing havoc? If so, I
> still need to come up with a theory for the failing compile because I
> use my box for compiling all the time and I wouldn't be much off by
> saying that I had compiled something 10 minutes before the rm -rf
> incident.
>
I suggest you look on your distribution CDROM (if that's the source) and
put back the symlinks that got removed.

When you start up ld.so loads /etc/ld.so.cache. If you remove the files
to which this caches refers, things that use the shared library (about
everything) stop working. Once you rebooted, these entries were no longer
in the cache so your shared-library programs used the libraries within
either /user/lib or /lib. It's all very simple. But... I'll bet you
a dime that you deleted something that you will eventually find __must__
be put back. `rm -r` is very powerful.

Cheers,
Dick Johnson
***** FILE SYSTEM MODIFIED *****
Penguin : Linux version 2.1.70 on an i586 machine (66.15 BogoMips).
Warning : It's hard to remain at the trailing edge of technology.