This post is a follow-up to Re: [SCIENTIFIC-LINUX-USERS] glibc-2.15-60.el6.x86_64.rpm [correction]. I had forgotten this trick, but I received an off-list email that explained what to do. This sort of information should be kept in a central SL (or EL or CentOS, etc.) repository -- a practicum of how-to workarounds -- as it used to be for BSD and SunOS a rather long time in the past. As the correspondent did not use the SL list, I am assuming that she/he wishes not to be the public author of the commentary below (slightly edited).

Quote.

Use rpm2cpio to unbundle the glibc into an alternative location in
"/opt". Put shell wrappers in $HOME/bin that set LD_LIBRARY_PATH,
MANPATH, etc. to the new location. Install the binary, as well, in ta
parallel location in /opt., also accessed by the wrapper. Try using
the shell wrappers to summon the binaries with those variables set to
point to the new library

*DO NOT*  use RPM to install this,  even if you succeed you're likely
to seriously break the system. It's like replacing the motor on a car
while it's running, replacing a diesel with a Wankel motor.

End quote.

Note that after I update a major library, I do not attempt to keep the system 
running, but reboot, with the pre-updated libraries available in such a form 
that I can use the shell from a rescue DVD (or USB if one must) to redo the 
links.  (E.g., if this is libmajor.so.M and it is replaced by libmajor.so.N, N 
.ne. M, then before any such attempted installation, I do a cp -pr of 
libmajor.so.M to orig-libmajor.so.M, and if the rescue method must be used, mv 
libmajor.so.N to new-failed-libmajor.so.N and mv orig-libmajor.so.M to 
libmajor.so.M.  Note that is a time consuming  set of steps that requires 
physical access.  Polymorphic virtualisation of file systems nominally could 
avoid this methodology, but has other problems and risks.)  I do thank the 
private correspondent for the workaround.  Hopefully, the shell wrappers will 
work (a shell wrapper for each application file that requires the other 
environment.)

Reply via email to