Creating a local Fedora repository with anonymous rsync

Posted on

Creating a local Fedora repository with anonymous rsync – Managing your servers can streamline the performance of your team by allowing them to complete complex tasks faster. Plus, it can enable them to detect problems early on before they get out of hand and compromise your business. As a result, the risk of experiencing operational setbacks is drastically lower.

But the only way to make the most of your server management is to perform it correctly. And to help you do so, this article will share nine tips on improving your server management and fix some problem about linux, repository, fedora, , .

I am trying to create a local Fedora 13 repository in a local LAN network

Unfortunately I cannot run rsync in daemon mode because I’m behind a firewall on which I have no control. So I had to try using rsync over shell.

I tried the mirrors in http://mirrors.fedoraproject.org/publiclist , I get prompted for passwords. I thought these were supposed to be anonymous access. What am I doing wrong?

Lets say I want to create a local repository for Fedora 13 i386 os, what command would I need to issue on my local system? It would be of immense help if someone could provide a working example.

Thanks in advance!

Solution :

You won’t be allowed to SSH into a mirror.

You could use wget to mirror but http://fedoraproject.org/wiki/Infrastructure/Mirroring#Mirroring says “The only sane way to do mirroring is to use rsync.”

I’m behind a firewall on which I have no control.

This is the problem you need to solve. If you are in a (sane) corporate environment then if you provide a business justification for having a local mirror then the firewall would be changed to allow the traffic.

It’s been awhile, but here’s what I did to create a local repository on my network.

mkdir /repos

rsync -avuH --exclude=debug/ --exclude=drpms/ rsync://mirrors.reflected.net/fedora/linux/releases/11/Fedora/i386/os/Packages/ /repos/releases/11/i386/os/Packages/

rsync -avuH --exclude=debug/ --exclude=drpms/ rsync://mirrors.reflected.net/fedora/linux/updates/11/i386/ /repos/updates/11/i386/

createrepo -g /repos/releases/11/i386/os/repodata/comps.xml /repos/releases/11/i386/os/

createrepo -g /repos/updates/11/i386/repodata/comps-f11.xml /repos/updates/11/i386/

I don’t recall offhand where I got the group files (comps.xml and comps-f11.xml). I think I probably copied whatever was in http://mirrors.reflected.net/fedora/linux/releases/11/Everything/i386/os/repodata/ and changed the name to make it shorter.

Almost forgot, you should be able to just change 11 in my examples to 13. Like I said, it’s been awhile since I set this up.

Leave a Reply

Your email address will not be published. Required fields are marked *