twitter
Categories:- Unix Commands

Download Yum CentOS Repositories Locally using reposync Command

 

reposync is used to download an entire remote yum repository or a set of remote repositories. It will also synchronize changes in a repository with a local directory.

 

Why reposync is preferred  over an rsync based approach …?

 

  • reposync by default uses HTTP , so it is easier on firewalls (Most of time  outbound ports 80/443 are opened in firewall)
  • reposync can use multiple mirrors, as specified in the 'mirrorlist' directive. So there is no longer a dependency on a single server on the remote end to be up and running
  • There are significantly more HTTP mirrors than rsync ones, so  reposync scripts can play nicely and distribute the load over a larger number of servers.

 

In this tutorials we will download CentOS 6.2 yum repositories locally on my ftp server  and will make available these repositories to my data center centos machines.

 

 

Step:1  Download & install reposync rpm

 

# wget ftp://ftp.pbone.net/mirror/ftp.sourceforge.net/pub/sourceforge/y/yu/yum-repo-sync/yum-repo-sync/2.0/yum-repo-sync-2.0-0.noarch.rpm

# rpm -ivh yum-repo-sync-2.0-0.noarch.rpm

 

Step:2 Create a Directory locally

 

# mkdir /var/ftp/pub/Centos-6.2-RPMS

 

Open the file  "cat /etc/yum.repos.d/CentOS-Base.repo" Copy the name of repositories you want to download and Run the below Command.

 

# nohup reposync -r base -p /var/ftp/pub/Centos-6.2-RPMS/  &

 

A directory with name base will be created automatically under /var/ftp/pub/Centos-6.2-RPMS. We can check the progress of downloading by using below command

 

# tail -f nouhup.out

 

Similarly download all the repositories using above reposync Command , just replace  the name of "base" with  new repository.

 

Note: To get all the updates after downloading repositories , run below command under the directory  /var/ftp/pub/Centos-6.2-RPMS

 

# reposync --repoid=base  --repoid=updates  --repoid=extras  

 

Step:3 Create a repomd (xml-based rpm metadata) repository from a set of rpms

 

# cd /var/ftp/pub/Centos-6.2-RPMS

# createrepo -v base

 

Similarly run the above command for all downloaded repositories.

 

Step:4  Create a repository file under "/etc/yum.repos.d/"

 

First Move all repositories to another folder and create a file.

 

# vi server.repo

 

yum repositories

 

In this tutorials we are assuuming ftp service up and running.

 

Step:5 Now transfer server.repo fils to all centos-6.2 machines.

 

# scp server.repo  root@<ip-address>:/etc/yum.repos.d/

 

For testing , run the below command on Centos Machines :

 

# yum list all

 

It will list all packages corresponding to repositories.

 

 

gucci online sale on, 2014-01-15 05:21:57
Hello, how\'s it going? Just shared this Download Yum CentOS Repositories Locally using reposync Command with a colleague.
Post Your Comments
Name:
Email:
Comment:
Security Code  *
Enter Security Code  *
Can't read the image? click here to refresh