On Fri, 2006-02-17 at 12:32 -0500, James Pifer wrote:
This week I set up a local mirror for a few dists, including Centos 4.0 and 4.2, and Fedora Core 3 and 4. I'm using a script called yum-pull. For the most part I really like the script, it automates the setup of your mirrors and tries a bunch of different mirrors when it goes out to get updates, if it fails on one it tries another. It uses the usual suspects, createrepo and repoview, among others.
That being said I have it all setup, but I have the following problem. For some reason the paths are not always right when you run yum update from a workstation. I'm installing a fresh copy of centos 4.2 right now so I can test the centos mirror, but I definitely have problems with my FC3 and 4 ones.
One example, if I include atrpms in my repo file, it's looking for the RPMs in this directory: http://mirror.myserver.com/repomirror/fedora/linux/4/i386/atrpms/ BUT it should be looking here: http://mirror.myserver.com/repomirror/fedora/linux/4/i386/atrpms/packages/
Can anyone tell me where this is screwed up at?
The directory structure looks like this: repomirror/fedora/linux/4/i386/atrpms/headers/ repomirror/fedora/linux/4/i386/atrpms/packages/ repomirror/fedora/linux/4/i386/atrpms/repodata/
repomirror/fedora/linux/4/i386/updates/headers/ repomirror/fedora/linux/4/i386/updates/packages/ repomirror/fedora/linux/4/i386/updates/repodata/
etc.
I just tried my centos4.2 mirror on the new test install and it worked ok. Still, any help understanding this is appreciated. I did some googling on createrepo but have yet to find my answer.
When you run createrepo, it should find all the RPMS in the directory it is run in .... and in all directories under that .. if you run it from the updates directory (in your example) it should work OK if you point to repomirror/fedora/linux/4/i386/updates/ with your yum ... and it should find RPMS in packages/.
If you want to point your yum to repomirror/fedora/linux/4/i386/updates/packages/ then you need to run createrepo from within the pacakages/ directory and the headers and repodata directories will be there instead of inside the updates directory.