rpm install
Hi,
I'm a noob to linux and probably flouting conventions of putting the same thread in different forums (or it that allowed - I read the suggested etiquette post and that mainly just seemed to be banging on about don't have an arguement about MS vs. Linux) http://www.linuxquestions.org/questi...nstall-688533/ essentially this is the error [root@moran tmp]# rpm -i compat-libstdc++-7.3-2.96.118.i386.rpm warning: compat-libstdc++-7.3-2.96.118.i386.rpm: Header V3 DSA signature: NOKEY, key ID db42a60e warning: waiting for transaction lock on /var/lib/rpm/__db.000 Thanks in advance for any help you can supply. Cheers from Clueless in Dublin |
another rpm command may be running
check rpm or yum etc ps aux | grep rp[m] either wait for that process to complete or just kill its pid kill pid or kill -9 pid |
Thanks Judge312
# check rpm did not work for me changed to root and ran # yum etc that spewed out >> Loading "rhnplugin" plugin usage: yum [options] < grouplist, localinstall, groupinfo, localupdate, resolvedep, erase, deplist, groupremove, makecache, upgrade, provides, shell, install, whatprovides, groupinstall, update, repolist, groupupdate, info, search, check-update, list, remove, clean, grouperase > options: -h, --help show this help message and exit -t, --tolerant be tolerant of errors -C >> etc. Then I ran what you suggested [root@moran tmp]# ps aux | grep rp[m] user 6205 0.0 0.3 47232 12240 ? S 13:07 0:00 file-roller --extract-to=/tmp --extract-here /tmp/compat-libstdc++-7.3-2.96.118.i386.rpm root 23979 0.0 0.3 18312 11644 pts/2 S+ 14:55 0:00 rpm -i compat-libstdc++-7.3-2.96.118.i386.rpm user 26230 0.0 0.2 38248 7408 ? S 11:56 0:00 /usr/bin/system-install-packages /tmp/flash-plugin-10.0.12.36-release.i386.rpm root 26231 0.0 0.0 6008 1484 ? S 11:56 0:00 /usr/sbin/userhelper -w system-install-packages /tmp/flash-plugin-10.0.12.36-release.i386.rpm root 26251 0.0 2.9 139112 100340 ? S 11:56 0:01 /usr/bin/python -tt /usr/sbin/system-install-packages /tmp/flash-plugin-10.0.12.36-release.i386.rpm Does this mean then that all these packages are running (I recognise the flash plug-in package which I used to view YouTube this morning - there's 3 of them running). Should I close down any open Internet sessions, can these still be using the packages? Kill it's PID? e.g. root 26251 0.0 2.9 139112 100340 ? S 11:56 0:01 /usr/bin/python -tt /usr/sbin/system-install-packages /tmp/flash-plugin-10.0.12.36-release.i386.rpm Is 26251 the PID Can I kill all PID then try and run again. I looked up PID # man PID no luck, there. Maybe envisage taking a child straight from kindergarten through the problem :). Your help on this matter is very much appreciated. |
duplicate post
|
Try the following
1.) Doing "rm -f /var/lib/rpm/__db.000" may fix this problem. 2.) Build the rpm database using rpmdb |
Hi chalearun,
thanks for the post went to the rpm folder, couldn't find the "__db.000" file to remove, see below only __db.00x, where x =1,2,3. Side question : the '-f' option on the rm command forceably removes the file even if it doesn't exist (what the..?) So if it's not even there no wonder it can't create a tx lock on it. I'll try making a copy of 001 and renaming it 000. I'll let you know how that goes. I'm subscribed to the redhat network and only recently done a full package update. Any downsides to conducting a 'Build the rpm database using rpmdb' Cheers, [user@moran tmp]$ rpm -ivh compat-libstdc++-7.3-2.96.118.i386.rpm warning: compat-libstdc++-7.3-2.96.118.i386.rpm: Header V3 DSA signature: NOKEY, key ID db42a60e error: can't create transaction lock on /var/lib/rpm/__db.000 [user@moran tmp]$ cd /var/lib/rpm/ [user@moran rpm]$ ld ld: no input files [user@moran rpm]$ ls Basenames __db.001 __db.003 Filemd5s Installtid Packages Provideversion Requirename Sha1header Triggername Conflictname __db.002 Dirnames Group Name Providename Pubkeys Requireversion Sigmd5 |
Before trying to remove the __db.00x files you have to check if some application is using the RPM database. e.g. by issuing
Code:
# lsof | grep /var/lib/rpm Code:
# cd /var/lib/rpm |
Thanks colucix,
done as you suggested (lsof not recognized, ased colleague he suggested "ps -ef") [eberwick@moran tmp]$ ps -ef | grep /var/lib/rpm eberwick 3678 3438 0 09:52 pts/1 00:00:00 grep /var/lib/rpm Do I go about killing this process now? Is this not just session I'm in now? Is it safe to remove the other __db.00x files now? I don't get it my original error is something along the lines of can't unlock tx within '__db.000', yet this files doesn't even exist. When running the RPM does the system create a new __db.000 instance? Thanks in advance |
Hi colucix,
had a go at removing the files. I ran the rpm then and it seems to have run even though it did produce the warning 'warning: compat-libstdc++-7.3-2.96.118.i386.rpm: Header V3 DSA signature: NOKEY, key ID db42a60e' Thanks for your help. [user@moran rpm]$ rm -f __db* rm: cannot remove `__db.001': Permission denied rm: cannot remove `__db.002': Permission denied rm: cannot remove `__db.003': Permission denied [eberwick@moran rpm]$ su Password: [root@moran rpm]# rm -f __db* [root@moran rpm]# ls Basenames Dirnames Group Name Providename Pubkeys Requireversion Sigmd5 Conflictname Filemd5s Installtid Packages Provideversion Requirename Sha1header Triggername [root@moran rpm]# cd / [root@moran /]# cd tmp [root@moran tmp]# rpm -i compat-libstdc++-7.3-2.96.118.i386.rpm warning: compat-libstdc++-7.3-2.96.118.i386.rpm: Header V3 DSA signature: NOKEY, key ID db42a60e [root@moran tmp]# |
Ok. The ps command did not have any sense, anyway... it looks like the problem has vanished. And yes, a new instance of rpm will recreate a new __db.00x file.
The warning you get now is simply about a not signed package. Usually the packagers sign their packages with a GPG key you have to import in your database. The GPG keys themselves are provided by RPMs. You can verify it easily: Code:
rpm -qa | grep ^gpg |
Hi colucix,
warnings are fine with me as long as the install gets shoehorned through [root@moran unixODBC]# rpm -qa | grep ^gpg gpg-pubkey-37017186-45761324 gpg-pubkey-0d4306ef-45f6bc30 also a [root@moran unixODBC]# rpm -qa gpg-pubkey* ^[[Dgpg-pubkey-37017186-45761324 gpg-pubkey-0d4306ef-45f6bc30 I installed compat-libstdc++ package only because I'm trying to install a unixODBC so my business objects can then talk to our MySQL database. I'm running RedHat Enterprise 5. Cheers, Ed |
Have you tried to install it using yum?
Code:
yum install compat-libstdc++ |
Hi colucix,
I hadn't tried that no, thanks for the tip. I seem to have gotten over the issue I had with my unixODBC install, now I have another one, need to install the some qt GUI files (maybe another thread in that one, later). I might give it a go anyway once the qt stuff is out of the way. Cheers PS: Just for interests sake, I'm new to all things linix. I'm running red hat, is therefore rpm not the way to go. This yum thing, sounds like a good fall back position. In future if I'm struggling to either source or install the package then you suggest, "yum install [packagename]"? |
Well, the main feature of yum in respect of rpm is that it takes care of dependencies automatically. If you try to install a package which has some dependency, yum look for them and ask you to install along with the package you've requested.
If you're new to linux, maybe you've to spend some time to read the documentation. Here is the relevant section of the official RHEL5 deployment guide. |
<Edit : sorry, double posting>
|
All times are GMT -5. The time now is 02:48 AM. |