From Bugzilla Helper: User-Agent: Opera/7.22 (X11; Linux i686; U) [en] Description of problem: rpm fails if running as root after glibc update from errata on non standard kernels (e.g. 2.6 or 2.4 nptl kernels from rawhide): $ rpm -q glibc glibc-2.3.2-27.9.7 $ rpm -q rpm rpm-4.2-0.69 $ uname -r 2.4.22-1.2108.nptl $ su - Password: # rpm -q rpm rpmdb: unable to join the environment error: db4 error(11) from dbenv->open: Resource temporarily unavailable error: cannot open Packages index using db3 - Resource temporarily unavailable (11) error: cannot open Packages database in /var/lib/rpm package rpm is not installed Version-Release number of selected component (if applicable): rpm-4.2-0.69 How reproducible: Always Steps to Reproduce: 1. Update your glibc to the latest errata package (glibc-2.3.2-27.9. 7) 2. Boot with 2.6 or an 2.4 ntpl kernel 3. Try to use rpm as root Actual Results: # rpm -q rpm rpmdb: unable to join the environment error: db4 error(11) from dbenv->open: Resource temporarily unavailable error: cannot open Packages index using db3 - Resource temporarily unavailable (11) error: cannot open Packages database in /var/lib/rpm package rpm is not installed Expected Results: # rpm -q rpm rpm-4.2-0.69 Additional info:
I'm sure we'd all appreciate it if someone could go back and find other duplicates of this bug report and indicate it was fixed late on the 13th... The glibc errata page at https://rhn.redhat.com/errata/RHSA-2003-325.html has been updated with the note "[Update 2003-11-13]: The packages for Red Hat Linux 9 have been updated for compatibility with kernels not provided by Red Hat." So the fix is to export LD_ASSUME_KERNEL=2.2.5 && rpm -Uvh glibc-2.3.2-27.9.7.i686.rpm (and also glibc-common and glibc-debug out of i386 if installed). At that point you ought to be able to run rpm again as root without that environment variable set.
LD_ASSUME_KERNEL=2.2.5 did the trick for me on with an non redhat-kernel
I was using a vanilla 2.2.22 with ac1 mppe and newnat+h323 not a rawhide kernel. But still this made rpm -Uhv glibc-* work
> So the fix is to export LD_ASSUME_KERNEL=2.2.5 && rpm -Uvh > glibc-2.3.2-27.9.7.i686.rpm (and also glibc-common and glibc-debug > out of i386 if installed). > At that point you ought to be able to run rpm again as root without > that environment variable set. Unfortunately I have to set LD_ASSUME_KERNEL=2.2.5 every time to make rpm work as root.
Use rpm-4.1.1 from ftp://ftp.rpm.org/pub/rpm/dist-4.1.z. That is compiled w/o NPTL locks. Or try rm -f /var/lib/rpm/__db* I suspect that works too.