Alastair McKinley writes:
Thanks for the advice Robin.Now I've just discovered rpm is broken. Missing dependency is librpm-4.4.so or something.
You're boned.
Could I maunally reinstall libraries to get rpm working again and then try that?
Although it is possible to salvage this situation, it's going to be rather complicated. I think it would be faster for you to recover from backups, or reinstall.
Or, if you can wait, wait for FC5 to come out, download it, run its installer, and try upgrading your existing system. This should get you back into a usable status.
If this is possible where could I get the right copy of the shared libraries?
You can try installing FC4 on another machine, and copy the librpm .so file from there. You will not be able to do anything, NOTHING, not rpm, not yum, until this is fixed.
But, that's just the beginning. What you basically have to do:1) Run "rpm -q -a -l", which is going to spit out every file installed by every package you have supposedly installed.
2) If you're fairly certain that you only broke /usr/lib, grep the file list for "/usr/lib", then hack up a short script to check if each file still exist, and spit out the exact list of missing files.
3) Use "rpm -q -f" to find out which packages they belong to.4) Make sure you have these RPMs available, and "rpm -e --force" each one, followed by "rpm -i nodeps" to reinstall it.
5) Finally run ldconfig.That should fix this, but it's probably easier to just chalk it up to experience, and reinstall.
If it's of any consolation, at least you didn't wipe /lib, with the standard C runtime library. That would've been a double-boner (actually, at least a quadruple-boner, on the Richter scale),
I dont have the install discs anymore, the sysadmin installed it, so I'm downloading the fc4 iso's now just incase they might help.
It'll help you with grabbing the rpm files you need to reinstall, but that's about it. And you can't do nothing until you manually restore the missing rpmlib file.
I have a sneaky suspicion that you were trying to either install or uninstall some external software package manually, without building RPMs. That's the only reason I can think for screwing around in /usr/lib, as root.
And this is just one of the reasons why you should never install various warez directly, manually, and you should always use rpm. And if the warez doesn't come with a suitable rpm, then build one yourself. The only reason for su-ing to root is to "rpm -i" the freshly-built RPMs.
Attachment:
pgpv9d3YyIq1w.pgp
Description: PGP signature