Mailinglist Archive: opensuse (929 mails)

< Previous Next >
SOLVED Re: [opensuse] Help - rpm - error: no dbpath has been set - howto fix?
On 03/17/2014 12:05 PM, Ken Schneider - openSUSE wrote:
On 03/17/2014 12:48 PM, Andrey Borzenkov pecked at the keyboard and wrote:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

В Mon, 17 Mar 2014 11:40:25 -0500
"David C. Rankin" <drankinatty@xxxxxxxxxxxxxxxxxx> пишет:


Andrey, thanks. We are getting somewhere:

[11:34 alchemy:~] # rpm --dbpath=/var/lib/rpm -qa
error: dbiOpen: dbapi 1 not available
error: cannot open Packages database in /var/lib/rpm
error: dbiOpen: dbapi 1 not available
error: cannot open Packages database in /var/lib/rpm

[11:35 alchemy:~] # rpm --showrc | grep dbpath
{shows nothing}


Well, looks like the most part is gone:

bor@opensuse:~/src/grub> grep -r dbpath /usr/lib/rpm
/usr/lib/rpm/macros:%_dbpath %{_var}/lib/rpm
/usr/lib/rpm/macros:%_dbpath_rebuild %{_dbpath}
/usr/lib/rpm/macros:%_keyringpath %{_dbpath}/pubkeys/
/usr/lib/rpm/macros:%_rpmlock_path %{_dbpath}/.rpm.lock


You could download RPM with these files and simply extract content
using rpm2cpio (or reinstall using rpm --dbpath):

bor@opensuse:~/src/grub> rpm -qf /usr/lib/rpm/macros
rpm-4.11.1-6.5.1.x86_64

You can also extract files from an RPM using mc.


That's what I did, and it turned out that the missing files were in
/usr/lib/rpm. I extracted rpm-4.8.0-28.29.1.x86_64.rpm with

rpm2cpio rpm-4.8.0-28.29.1.x86_64.rpm | cpio -idmv

Then used mc to compare files in ~/tmp/rpm/usr/lib/rpm and /usr/lib/rpm and then
just copied the missing files. Now:

# rpm -q wpa_supplicant
wpa_supplicant-0.7.3-3.4.1.x86_64

Done!

This is the first time I have had fsck remove duplicate/unused inodes that were
NOT duplicate or unused... I suspect there was a disc sector/cluster that went
south and for whatever reason caused fsck.ext3 to read/remove the information as
duplicate/unused info when if fact it wasn't. I also suspect that part of the
disc had been weak for some time and the pressure/temp change from sea-level to
11,000 ft. and back probably pushed the area from readable to unreadable causing
the problem.

What caused the greatest confusion was that every other part of the system was
working normally, except for rpm. Add one more anomaly to the experience box.

Thanks Ken, Carlos, Andrey, Patrick, All for your help!

--
David C. Rankin, J.D.,P.E.
--
To unsubscribe, e-mail: opensuse+unsubscribe@xxxxxxxxxxxx
To contact the owner, e-mail: opensuse+owner@xxxxxxxxxxxx

< Previous Next >