Features
- Support for multiple repositories.
- Simple configuration.
- Automatic dependency calculation.
- Fast operation.
- RPM-consistent behavior.
- Package group support, including multiple-repository groups.
- Simple interface.
Let us install a local yum server using CentOS 6.3. The steps provided here are tested in CentOS 6.3. But it will work fine in RHEL 6.x and Scientific Linux 6.x too.
Setup Local YUM Server in CentOS
In this example the hostname of the server is myserver.ostechnix.com and IP Address is 192.168.56.101.
Login to your system and Mount the contents of your CentOS 6.3 DVD in the /mnt directory or wherever you want. In the Terminal window, type the following command:
# mount /dev/cdrom1 /mnt/

Change to the directory where you mounted CentOS DVD. In our example we have mounted the CentOS DVD in /mnt directory.
# cd /mnt/Packages # rpm -ivh vsftpd-2.2.2-11.el6.i686.rpm
Start the FTP Service:
# service vsftpd start
# rpm -ivh createrepo-0.9.8-5.el6.noarch.rpm
# rpm -ivh deltarpm-3.5-0.5.20090913git.el6.i686.rpm
# rpm -ivh python-deltarpm-3.5-0.5.20090913git.el6.i686.rpm
Now install the createrepo package:
Create a folder called localyumserver (You can use your own) in /var/ftp/pub directory to save all the packages from the CentOS DVD. Copy all the files in the Packages folder from the DVD to /var/ftp/pub/localyumserver folder:
# mkdir /var/ftp/pub/localyumserver # cp -ar *.* /var/ftp/pub/localyumserver
# nano /etc/yum.repos.d/localyumserver.repo
Type the following entries and save the file (CTRL+O to save and CTRL+X to exit):
Where,
[localyumserver] ==> Name of the Local Repository.
comment ==> Information about the Repository.
baseurl ==> Path of the Repository (i.e where we had copied the contents from CentOS DVD)
gpgcheck ==> Authentication of the Repository, which is disabled in our case.
Now it is time to create our repository. Enter the following command in the Terminal:
# createrepo -v /var/ftp/pub/localyumserver
Now the local YUM repository creation process will begin.
Note: Delete or rename all the other repo files except the newly created repo file i.e in our example it is localyumserver.repo.
yum clean all
yum update
You're done now.
Client side configuration
Create a repo file in your client system as mentioned above in the /etc/yum.repos.d/ directory and remove or rename the existing repositories. Then modify the baseurl as mentioned below:
[localyumserver] comment ="My Local Repository" baseurl=ftp://myserver.ostechnix.com/pub/localyumserver gpgcheck=0 enabled=1
Or,
[localyumserver] comment ="My Local Repository" baseurl=ftp://192.168.56.101/pub/localyumserver gpgcheck=0 enabled=1
That's it. Start using installing packages from local Yum repository.
26 comments
wow Thank you man I have configured Yum from your guide .Thanks
Thanks alot
not working please help me.where to type ‘yum clean all’ and ‘yum update’ in server or client
Try these commands on both systems. It should work.
Thanks. it works…
Wonderful beat ! I would like to apprentice even as you amend your web
site, how can i subscribe for a blog website? The account helped me a
applicable deal. I were a little bit familiar of this your broadcast provided bright transparent concept
Tremendous issues here. I am very satisfied to see your post.
Thank you a lot and I’m looking forward to contact you. Will you kindly drop me a e-mail?
Hi there to all, the contents existing at this web site are in fact awesome for
people knowledge, well, keep up the good work fellows.
Thanks.
gentle man , how we can install a group package from this yum server
Hi
Refer the following link about group install.
http://thevagabondgeek.com/5-centos-yum-groupinstall-basics
Howdy! This article couldn’t be written much better! Looking at this post reminds me of my previous roommate! He continually kept preaching about this. I will forward this post to him. Fairly certain he will have a very good read. Thank you for sharing!
Good article! We are linking to this great article on our website.
Keep up the great writing.
This is a great tip especially to those fresh to the blogosphere.
Simple but very accurate information… Many thanks for sharing this one.
A must read article!
I feel this is among the most important info for me.
And i am happy studying your article. However wanna remark on few general things, The
web site taste is wonderful, the articles is truly great : D.
Excellent activity, cheers
This is really fascinating, You are a very professional blogger.
I have joined your feed and look forward to in search of
more of your wonderful post. Additionally, I have shared your website
in my social networks
Hey there! This is kind of off topic but I need some guidance
from an established blog. Is it very difficult to set up your own blog?
I’m not very techincal but I can figure things out pretty fast. I’m thinking about making my own but I’m not sure where to start. Do you have any points or suggestions? Many thanks
Its not that difficult. Very easy and free..You can try wordpress and blogger. Good luck.
Hey there! Someone in my Myspace group shared this site with us so I came to
take a look. I’m definitely enjoying the information. I’m book-marking and will be tweeting this to my followers!
Superb blog and outstanding style and design.
This is really attention-grabbing, You’re a very professional blogger. I’ve joined your rss feed and look ahead to seeking extra of your excellent post.
Additionally, I have shared your web site in my social networks
Outstanding post! I had to allow port 21 on the server’s firewall for the client to work, but other than that your post was spot on. Thank you for sharing.
great one .thanks hope I will get more information from this site
Hey brother you are just awesome man.. I have never seen such a great explanation on anyother site in earth for linux… you are fantastic man… Thank you so much man….
Brother you are awesome man, just love it man….
It is working.
Thanks
It is working ..Thanks a lot man.wasted one day by following some irrelevant pages.Thanks again for the easy and working steps 🙂
It is interesting, thanks.