Creating a local RPM repository

Patrick O'Callaghan pocallaghan at gmail.com
Sun Nov 8 03:04:42 UTC 2009


On Sat, 2009-11-07 at 19:01 +0000, Timothy Murphy wrote:
> Patrick O'Callaghan wrote:
> 
> >> 
> >> >> Concretely, I want yum to look first in /var/cache/yum/updates on my
> >> >> laptop, then in alfred:/var/cache/yum/updates on a local machine,
> >> >> and then in the remote repository.
> >> >> 
> >> >> What exactly can I put in /etc/yum.repos.d/fedora-updates.repo
> >> >> to implement this?
> >> > 
> >> > yum install yum-plugin-priorities
> >> 
> >> Thanks.
> >> I've installed that, but haven't worked out
> >> how to use it to make yum look on my local network ...
> > 
> > yum doesn't know anything about "looking on your local network". You
> > still have to set up a repo and point to it.
> 
> In that case, I'm not clear how yum-plugin-priorities would help.

If you set up a local repo (i.e. a repo on your some other machine on
your LAN) then you can give it a higher priority than repos farther
afield.

> I see that there is a yum-downloadonly package,
> which I just installed.
> This adds an option --downloadonly.
> 
> I assume that you can then later run "yum update",
> and it will install or update the packages that were downloaded,
> as well as any other new ones.
> 
> If that is so, then it seems to imply that yum looks first
> in /var/cache/yum/ to see if required packages are already downloaded.
> If it finds them there then it uses them;
> otherwise it downloads them from a remote repository.

It doesn't look just at the package files but at the package database,
but essentially that's what's happening.

> That being so, my question is: why not allow yum to look at
> what yum has saved on another computer?

Because yum only knows how to talk to repos, which have a specific
layout (i.e. they aren't simply a yum cache directory). If the other
computer doesn't have its stuff organized as a repo, how is yum going to
know what's there? Note that it also has to run a transport demon that
yum understands, i.e. http or ftp.

> I notice that after installing the yum-downloadonly package,
> there is another new option --downloaddir=DLDIR
> which seems to allow RPMs (and other files in /var/cache/yum/ ?)
> to be installed in a specified directory.
> 
> It's not clear to me if yum will remember this new directory
> if I use both these options --downloadonly and --downloaddir=OLDIR ?
> Or will I have to specify --downloaddir again when updating?
> 
> Is all this a possible way of saving RPMs on a /common directory
> served by NFS?

What you mean is to have your yum cache directory mounted from an NFS
server? In principle yes, but I'm not sure about locking issues.

> I suspect I may have misunderstood the basics of yum ...

I suspect you may :-)

poc




More information about the fedora-list mailing list