David Looney wrote:
using rpm with --root <directory>
will install all files using the given directory as root, and the
database within root (i.e. not your system database).
By your terms "directory as root" and "within root", I assume you mean
"directory as /" and "within /" respectively.
If I'm understanding correctly, "rpm --root <directory> -i
some-package.rpm" causes the rpm install of some-package.rpm to consider
<directory> to be / as far as it is concerned and all install operations
take place within that root jail. And that includes creating a new rpm
database within that jail. (It's not that I'm trying to be obtuse.
Sometimes stupid details that seem so obvious to some are not so obvious
to me. I /think/ I understand this. But with the chance of completely
mucking up "rpm" itself on my system, I want to be completely sure
before proceeding. The file I need (librpm.so.0) is only found within
older versions of the rpm package itself. The "apt" rpm fails for that
dependency.)
I just tried it. But "apt" still fails dependencies:
# rpm --test -hvi ./apt-0.5.4cnc9-1cl.i386.rpm
warning: ./apt-0.5.4cnc9-1cl.i386.rpm: V3 DSA signature: NOKEY, key ID
92a38df6
error: Failed dependencies:
librpm.so.0 is needed by apt-0.5.4cnc9-1cl
09:28:49 [EMAIL PROTECTED] /download/updaters/apt]
#
<Summary>
1} a test to reassure me that "--root ./rut" is indeed isolated
2} installing older-rpm.rpm in said isolation
3} finding "librpm.so.0" (a link to librpm.so.0.0.0 in the same directory)
4} "cp --preserve=all ./rut/usr/lib/librpm.so.0.0.0 /usr/lib"
5} within "/usr/lib", "ln -s librpm.so.0.0.0 librpm.so.0"
6} "rpm --test -hiv ./apt-0.5.4cnc9-1cl.i386.rpm" only to get the same
failure as I got before doing all this. The only thing I can figure is
that perhaps I'm not setting up the link correctly.
</Summary>
Anyone got any clues to share?
Here's the whole process:
10:53:11 [EMAIL PROTECTED] /download/updaters/apt]
# rpm --test -vi ./apt-0.5.4cnc9-1cl.i386.rpm
warning: ./apt-0.5.4cnc9-1cl.i386.rpm: V3 DSA signature: NOKEY, key ID
92a38df6
error: Failed dependencies:
librpm.so.0 is needed by apt-0.5.4cnc9-1cl
10:53:15 [EMAIL PROTECTED] /download/updaters/apt]
# ll
total 3020
-rw-rw-r-- 1 rafael rafael 950057 Dec 8 14:37
apt-0.5.4cnc9-1cl.i386.rpm
-rw-rw-r-- 1 rafael rafael 2130440 Dec 10 08:48 rpm-4.0-6x.i386.rpm
09:03:13 [EMAIL PROTECTED] /download/updaters/apt]
# mkdir rut
09:03:32 [EMAIL PROTECTED] /download/updaters/apt]
# ll
total 3024
-rw-rw-r-- 1 rafael rafael 950057 Dec 8 14:37
apt-0.5.4cnc9-1cl.i386.rpm
-rw-rw-r-- 1 rafael rafael 2130440 Dec 10 08:48 rpm-4.0-6x.i386.rpm
drwxr-xr-x 2 root root 4096 Dec 10 09:03 rut
09:10:06 [EMAIL PROTECTED] /download/updaters/apt]
# rpm --test -ivh ./rpm-4.0-6x.i386.rpm
warning: ./rpm-4.0-6x.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
error: Failed dependencies:
libbz2.so.0 is needed by rpm-4.0-6x
glibc > 2.1.3 conflicts with rpm-4.0-6x
09:11:28 [EMAIL PROTECTED] /download/updaters/apt]
# rpm --test --root /download/updaters/apt/rut/ -ivh ./rpm-4.0-6x.i386.rpm
warning: ./rpm-4.0-6x.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
error: Failed dependencies:
gawk is needed by rpm-4.0-6x
fileutils is needed by rpm-4.0-6x
textutils is needed by rpm-4.0-6x
sh-utils is needed by rpm-4.0-6x
mktemp is needed by rpm-4.0-6x
popt is needed by rpm-4.0-6x
bzip2 >= 0.9.0c-2 is needed by rpm-4.0-6x
/bin/sh is needed by rpm-4.0-6x
/sbin/ldconfig is needed by rpm-4.0-6x
ld-linux.so.2 is needed by rpm-4.0-6x
libbz2.so.0 is needed by rpm-4.0-6x
libc.so.6 is needed by rpm-4.0-6x
libdb.so.2 is needed by rpm-4.0-6x
libpopt.so.0 is needed by rpm-4.0-6x
libz.so.1 is needed by rpm-4.0-6x
libc.so.6(GLIBC_2.0) is needed by rpm-4.0-6x
libc.so.6(GLIBC_2.1) is needed by rpm-4.0-6x
libdb.so.2(GLIBC_2.0) is needed by rpm-4.0-6x
09:11:56 [EMAIL PROTECTED] /download/updaters/apt]
# rpm --nodeps --root /download/updaters/apt/rut/ -ivh ./rpm-4.0-6x.i386.rpm
warning: ./rpm-4.0-6x.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing... ###########################################
[100%]
1:rpm ###########################################
[100%]
error: %post(rpm-4.0-6x) scriptlet failed, exit status 255
09:13:35 [EMAIL PROTECTED] /download/updaters/apt]
# ll rut/
total 16
drwxr-xr-x 2 root root 4096 Dec 10 09:13 bin
drwxr-xr-x 3 root root 4096 Dec 10 09:13 etc
drwxr-xr-x 8 root root 4096 Dec 10 09:13 usr
drwxr-xr-x 4 root root 4096 Dec 10 09:13 var
09:13:51 [EMAIL PROTECTED] /download/updaters/apt]
# du -a | grep "librpm"
324 ./rut/usr/lib/librpm.so.0.0.0
0 ./rut/usr/lib/librpm.so.0
140 ./rut/usr/lib/librpmbuild.so.0.0.0
0 ./rut/usr/lib/librpmbuild.so.0
112 ./rut/usr/lib/librpmio.so.0.0.0
0 ./rut/usr/lib/librpmio.so.0
09:16:30 [EMAIL PROTECTED] /download/updaters/apt]
# ll rut/usr/lib/librpm*
lrwxrwxrwx 1 root root 20 Dec 10 09:13
rut/usr/lib/librpmbuild.so.0 -> librpmbuild.so.0.0.0
-rwxr-xr-x 1 root root 135408 Sep 14 2000
rut/usr/lib/librpmbuild.so.0.0.0
lrwxrwxrwx 1 root root 17 Dec 10 09:13
rut/usr/lib/librpmio.so.0 -> librpmio.so.0.0.0
-rwxr-xr-x 1 root root 109166 Sep 14 2000
rut/usr/lib/librpmio.so.0.0.0
lrwxrwxrwx 1 root root 15 Dec 10 09:13
rut/usr/lib/librpm.so.0 -> librpm.so.0.0.0
-rwxr-xr-x 1 root root 323969 Sep 14 2000
rut/usr/lib/librpm.so.0.0.0
09:17:02 [EMAIL PROTECTED] /download/updaters/apt]
# ll /usr/lib/librpm*
-rwxr-xr-x 1 root root 298016 Feb 27 2003
/usr/lib/librpm-4.2.so
-rw-r--r-- 1 root root 388864 Feb 27 2003 /usr/lib/librpm.a
-rwxr-xr-x 1 root root 142268 Feb 27 2003
/usr/lib/librpmbuild-4.2.so
-rw-r--r-- 1 root root 177966 Feb 27 2003
/usr/lib/librpmbuild.a
-rwxr-xr-x 1 root root 903 Feb 27 2003
/usr/lib/librpmbuild.la
lrwxrwxrwx 1 root root 18 Oct 14 19:10
/usr/lib/librpmbuild.so -> librpmbuild-4.2.so
-rwxr-xr-x 1 root root 898968 Feb 27 2003
/usr/lib/librpmdb-4.2.so
-rw-r--r-- 1 root root 1336524 Feb 27 2003 /usr/lib/librpmdb.a
-rwxr-xr-x 1 root root 842 Feb 27 2003 /usr/lib/librpmdb.la
lrwxrwxrwx 1 root root 15 Oct 14 19:10
/usr/lib/librpmdb.so -> librpmdb-4.2.so
-rwxr-xr-x 1 root root 349912 Feb 27 2003
/usr/lib/librpmio-4.2.so
-rw-r--r-- 1 root root 482154 Feb 27 2003 /usr/lib/librpmio.a
-rwxr-xr-x 1 root root 795 Feb 27 2003 /usr/lib/librpmio.la
lrwxrwxrwx 1 root root 15 Oct 14 19:10
/usr/lib/librpmio.so -> librpmio-4.2.so
-rwxr-xr-x 1 root root 849 Feb 27 2003 /usr/lib/librpm.la
lrwxrwxrwx 1 root root 13 Oct 14 19:10
/usr/lib/librpm.so -> librpm-4.2.so
09:17:40 [EMAIL PROTECTED] /download/updaters/apt]
# cp --preserve=all /download/updaters/apt/rut/usr/lib/librpm.so.0.0.0
/usr/lib/
09:18:10 [EMAIL PROTECTED] /download/updaters/apt]
# cd /usr/lib
09:25:20 [EMAIL PROTECTED] /usr/lib]
# ll /usr/lib/librpm*
-rwxr-xr-x 1 root root 298016 Feb 27 2003
/usr/lib/librpm-4.2.so
-rw-r--r-- 1 root root 388864 Feb 27 2003 /usr/lib/librpm.a
-rwxr-xr-x 1 root root 142268 Feb 27 2003
/usr/lib/librpmbuild-4.2.so
-rw-r--r-- 1 root root 177966 Feb 27 2003
/usr/lib/librpmbuild.a
-rwxr-xr-x 1 root root 903 Feb 27 2003
/usr/lib/librpmbuild.la
lrwxrwxrwx 1 root root 18 Oct 14 19:10
/usr/lib/librpmbuild.so -> librpmbuild-4.2.so
-rwxr-xr-x 1 root root 898968 Feb 27 2003
/usr/lib/librpmdb-4.2.so
-rw-r--r-- 1 root root 1336524 Feb 27 2003 /usr/lib/librpmdb.a
-rwxr-xr-x 1 root root 842 Feb 27 2003 /usr/lib/librpmdb.la
lrwxrwxrwx 1 root root 15 Oct 14 19:10
/usr/lib/librpmdb.so -> librpmdb-4.2.so
-rwxr-xr-x 1 root root 349912 Feb 27 2003
/usr/lib/librpmio-4.2.so
-rw-r--r-- 1 root root 482154 Feb 27 2003 /usr/lib/librpmio.a
-rwxr-xr-x 1 root root 795 Feb 27 2003 /usr/lib/librpmio.la
lrwxrwxrwx 1 root root 15 Oct 14 19:10
/usr/lib/librpmio.so -> librpmio-4.2.so
-rwxr-xr-x 1 root root 849 Feb 27 2003 /usr/lib/librpm.la
lrwxrwxrwx 1 root root 13 Oct 14 19:10
/usr/lib/librpm.so -> librpm-4.2.so
-rwxr-xr-x 1 root root 323969 Sep 14 2000
/usr/lib/librpm.so.0.0.0
09:25:28 [EMAIL PROTECTED] /usr/lib]
# ln -s librpm.so.0.0.0 librpm.so.0
09:26:36 [EMAIL PROTECTED] /usr/lib]
# ll /usr/lib/librpm*
-rwxr-xr-x 1 root root 298016 Feb 27 2003
/usr/lib/librpm-4.2.so
-rw-r--r-- 1 root root 388864 Feb 27 2003 /usr/lib/librpm.a
-rwxr-xr-x 1 root root 142268 Feb 27 2003
/usr/lib/librpmbuild-4.2.so
-rw-r--r-- 1 root root 177966 Feb 27 2003
/usr/lib/librpmbuild.a
-rwxr-xr-x 1 root root 903 Feb 27 2003
/usr/lib/librpmbuild.la
lrwxrwxrwx 1 root root 18 Oct 14 19:10
/usr/lib/librpmbuild.so -> librpmbuild-4.2.so
-rwxr-xr-x 1 root root 898968 Feb 27 2003
/usr/lib/librpmdb-4.2.so
-rw-r--r-- 1 root root 1336524 Feb 27 2003 /usr/lib/librpmdb.a
-rwxr-xr-x 1 root root 842 Feb 27 2003 /usr/lib/librpmdb.la
lrwxrwxrwx 1 root root 15 Oct 14 19:10
/usr/lib/librpmdb.so -> librpmdb-4.2.so
-rwxr-xr-x 1 root root 349912 Feb 27 2003
/usr/lib/librpmio-4.2.so
-rw-r--r-- 1 root root 482154 Feb 27 2003 /usr/lib/librpmio.a
-rwxr-xr-x 1 root root 795 Feb 27 2003 /usr/lib/librpmio.la
lrwxrwxrwx 1 root root 15 Oct 14 19:10
/usr/lib/librpmio.so -> librpmio-4.2.so
-rwxr-xr-x 1 root root 849 Feb 27 2003 /usr/lib/librpm.la
lrwxrwxrwx 1 root root 13 Oct 14 19:10
/usr/lib/librpm.so -> librpm-4.2.so
lrwxrwxrwx 1 root root 15 Dec 10 09:26
/usr/lib/librpm.so.0 -> librpm.so.0.0.0
-rwxr-xr-x 1 root root 323969 Sep 14 2000
/usr/lib/librpm.so.0.0.0
09:26:39 [EMAIL PROTECTED] /usr/lib]
# cd /download/updaters/apt/
09:26:56 [EMAIL PROTECTED] /download/updaters/apt]
# ll
total 3024
-rw-rw-r-- 1 rafael rafael 950057 Dec 8 14:37
apt-0.5.4cnc9-1cl.i386.rpm
-rw-rw-r-- 1 rafael rafael 2130440 Dec 10 08:48 rpm-4.0-6x.i386.rpm
drwxr-xr-x 6 root root 4096 Dec 10 09:13 rut
09:26:57 [EMAIL PROTECTED] /download/updaters/apt]
# rpm --test -hvi ./apt-0.5.4cnc9-1cl.i386.rpm
warning: ./apt-0.5.4cnc9-1cl.i386.rpm: V3 DSA signature: NOKEY, key ID
92a38df6
error: Failed dependencies:
librpm.so.0 is needed by apt-0.5.4cnc9-1cl
09:28:49 [EMAIL PROTECTED] /download/updaters/apt]
#
David Looney
Ralph Shumaker wrote:
I've been trying for days now to get apt-get installed on my system
(rh9). It all boils down to where I get stuck for lack of one stoopid
file that I can only find packaged in older versions of RPM. (In my
research, I came across a couple of horror stories where they attempted
to install the older version while thinking they would just be able to
re-install the newer version.)
"man rpm" doesn't give me anything that looks like I can get rpm to
install just one file from a package in the place where it is supposed
to go and *not* update any databases in the process. (It has a switch
to do the opposite, namely to update the database without installing any
files.)
If it's not possible to get rpm to do what I want, is there some other
way to extract just one file from a package and know where to copy it to?
--
[email protected]
http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-list