Creating a local CentOS mirror

categories:

For my RHCE prep, I’m setting up a small lab of 3 machines.. one machine will act as the server.. For my ease of use, I decided to build a local mirror of the CentOS repository (base and updates).

I had downloaded the 4 ISO images of CentOS 4.4 overnight and burnt them.

Please consider the following : I’m only building a local copy of the base and updates repo for CentOS 4.4 for the i386 architecture.

Follow these steps :

mkdir -p /var/www/html/mirror/centos/4.4/os/i386/ ln -s /var/www/html/mirror/centos/4.4 /var/www/html/mirror/centos/4

Insert CD1 cp -a /media/cdrom/* /var/www/html/mirror/4.4/os/i386/ When done eject /dev/cdrom

Repeat the previous steps for CD2, CD3 and CD4 (say yes when asking for overwriting)

When done, you should make sure your base repository is up to date rsync -avzH --delete eu-msync.centos.org::CentOS/4.4/os/i386/ /var/www/html/mirror/centos/4.4/os/i386/

Then, synchronize the “updates” repository, this should take a while and will download a massive amount of data (around 6.3 Gb when I built the mirror) mkdir -p /var/www/html/mirror/centos/4.4/updates/i386/ rsync -avzH --delete eu-msync.centos.org::CentOS/4.4/updates/i386/ /var/www/html/mirror/centos/4.4/updates/i386/

Make the mirror available through NFS (no security consideration here ! quick and easy way) : vi /etc/exports : /var/www/html/mirror/centos/4/os/i386 *(rw,sync)

Start NFS : service nfs start chkconfig nfs on

Server : server Path : /var/www/html/mirror/centos/4/os/i386/

Making the mirror available through HTTP : service httpd start chkconfig httpd on

Path : http://server/mirror/centos/4/os/i386/

Please note : If you do use the CentOS rsync service, it is implied that you are providing a mirror for public use and give the CentOS admins authority to publicise the mirror

If you use the rsync service to build a local mirror for testing/learning purpose, please just synchronize it once. DON’T ABUSE.




Thanks for reading this post!


Did you find an issue in this article?

- click on the following Github link
- log into Github with your account
- click on the line number containing the error
- click on the "..." button
- choose "Reference in new issue"
- add a title and your comment
- click "Submit new issue"

Your feedback is much appreciated! πŸ€œπŸΌπŸ€›πŸΌ

You can also drop me a line below!