RPM's
Bill Mullen
moonmullen at attbi.com
Fri Apr 25 18:46:30 EDT 2003
On Fri, 25 Apr 2003, Jason Stephenson wrote:
> Derek Martin wrote:
> > In the case of Red Hat, I think the best thing to do is simply go to
> > their FTP site (or a fast mirror), and download all the files in the
> > updates tree, and apply them using something like:
> [Snippage]
> > For Red Hat 7.2, the URL for the updates tree (for intel systems) is:
> >
> > ftp://ftp.redhat.com/pub/redhat/linux/updates/7.2/en/os/i386
> >
> > Note that the last 4 directories fit the pattern:
> >
> > <RH release>/<language>/os/<architecture>
> >
>
> I get them like this:
>
> wget -m ftp://updates.redhat.com/<release>/en/os/
>
> This gets all the latest updates for a particular release for all
> architectures. It takes a little longer to download and a bit more disk
> space to store, but you've got everything.
>
> For the 7.2 release it would look like:
>
> wget -m ftp://updates.redhat.com/7.2/en/os/
Though it won't help the OP any, I just can't resist chiming in here and
contrasting my update method with the ones that have been offered for RH.
I first type (as root):
urpmi.update --wget -a
This updates, without further input from me, my local database of what is
available on all of the various non-removable RPM sources that I have
previously defined (which can be local dirs, nfs mounts, and/or http- or
ftp-accessed mirrors), including the list of dependencies for each RPM.
(I use the --wget option because it defaults to curl, which I detest.) :)
Once this completes (a minute or so), I then type:
urpmi --wget --auto-select
This takes a quick glance at the local DB of installed RPMs, determines
which ones updated versions are now available for, figures out exactly
what it needs to fetch - and from where - to update them all without *any*
dependency problems (including such situations as when foo-1.1 has been
superseded by foo-1.2, which now depends on bar-0.9.8, which is on the
install CDs/"main" distro mirrors but is one which I had not previously
installed, because foo-1.1 didn't need it), and presents me with a list of
what it is planning to retrieve and install for my approval. I type:
y
And it gets them and installs them. Just like that. And, it may be worth
noting, without needing to have any of my system's own configuration info
anywhere other than in the same local DB that the "rpm" command uses.
Oh, yeah, and if I were looking for which RPM contains "libc.so.6"?
moon at tvbox:~$ urpmf libc.so.6
anonftp:/var/ftp/lib/libc.so.6
glibc:/lib/i686/libc.so.6
glibc:/lib/libc.so.6
glibc_lsb:/lib/lsb/libc.so.6
glibc:/lib/i686/libc.so.6
glibc:/lib/libc.so.6
moon at tvbox:~$
Note that "glibc" is mentioned twice, as both an updated and an original
RPM are available for it; this search has included both installed *and*
uninstalled-but-available-from-my-sources RPMs, of course. :)
One can also do some nifty things with constructs such as:
moon at tvbox:~$ urpmf --provides libc.so.6 | grep 2.2.5
glibc:provides:libc.so.6(GLIBC_2.2.5)
glibc_lsb:provides:libc.so.6(GLIBC_2.2.5)
glibc:provides:libc.so.6(GLIBC_2.2.5)
moon at tvbox:~$
A brief one-page rundown of the apps in the urpmi system, with examples:
http://myweb.tiscali.co.uk/jwrobinson/docs/urpmi-howto/tools.html
For any other Mandrake users here on the list, here is a page that will
help you to configure your sources for urpmi with a minimum of bother:
http://plf.zarb.org/~nanardon
These users should note that by adding a source to the urpmi database, you
have added it to the same database that its GUI frontend (rpmdrake, a.k.a.
"Software Manager", a component part of the Mandrake Control Center) uses.
The urpmi system is my personal favorite of the various config tools that
are included in Mandrake distros, and IMHO gives Debian's apt-get a real
run for its money in the convenience department.
--
Bill Mullen moon at lunarhub.com MA, USA RLU #270075 MDK 8.1 & 9.0
"Electric communication will never be a substitute for the face of
someone who with their soul encourages another person to be brave and
true." -- Charles Dickens
More information about the gnhlug-discuss
mailing list