How to Configure YUM in RHEL6
Easy way to create your own repo
1. Put your RHEL6 media on DVD drive
2. Create a partition with size 6GB and mount it as /yum
3. Download the below script to /yum
https://sites.google.com/site/ansilh/rhel6_repo.sh
4. Give execute permission to the downloaded script
5. Please open the file and try to understand it. If you found all safe ,then go to next step
6. Execute it...You will get an RHEL repo accessible through ftp
***Please feel free to comment your experience ***
=======================================
Manual Steps (*Different approach from above script .The repo file not look like usual one)
YouTube Link : http://www.youtube.com/watch?v=scBtTTwLze0
1.create a directory to store packages .(Better you create a partition with 5GB size and mount it as /YUM)
mkdir /YUM
2.mount RHEL6 DVD
mount /dev/dvd /mnt
3.go to the mounted directory
cd /mnt/Packages/
4.copy all contents of DVD to /YUM (Note the "." in command )
cp . /YUM/
5.Install createrepo package with dependancies
rpm -ivh deltarpm-**.el6.x86_64.rpm python-deltarpm-**.el6.x86_64.rpm createrepo-**.rpm
6.install FTP server
rpm -ivh vsftpd-2.2.2-6.el6.x86_64.rpm
7.Create repository using
createrepo -g /YUM/HighAvailability/repodata/****-comps-rhel6-HighAvailability.xml –o \
/YUM/HighAvailability/ /YUM/Packages/
createrepo -g /YUM/LoadBalancer/repodata/*****-comps-rhel6-LoadBalancer.xml –o \
/YUM/LoadBalancer/ /YUM/Packages/
createrepo -g /YUM/ResilientStorage/repodata/****-comps-rhel6-ResilientStorage.xml –o \
/YUM/ResilientStorage/ /YUM/Packages/
createrepo -g /YUM/ScalableFileSystem/repodata/****-comps-rhel6-ScalableFileSystem.xml –o \
/YUM/ScalableFileSystem/ /YUM/Packages/
createrepo -g /YUM/Server/repodata/****-comps-rhel6-Server.xml -o /YUM/Server/ /YUM/Packages/
8.Create a repo file in /etc/yum.repos.d/
The Server id contains the main path to the packages.(bold in [Server] baseurl )
vi /etc/yum.repos.d/rhel6-1.repo
[Server]
name=rhel6-1 Server repo
baseurl=ftp://192.168.8.2/Server
ftp://192.168.8.2/Packages
enabled=1
gpgcheck=0
[HighAvailability]
name=rhel6-1 HighAvailability repo
baseurl=ftp://192.168.8.2/HighAvailability
enabled=1
gpgcheck=0
[ScalableFileSystem]
name=rhel6-1 ScalableFileSystem repo
baseurl=ftp://192.168.8.2/ScalableFileSystem
enabled=1
gpgcheck=0
[ResilientStorage]
name=rhel6-1 ResilientStorage repo
baseurl=ftp://192.168.8.2/ResilientStorage
enabled=1
gpgcheck=0
[LoadBalancer]
name=rhel6-1 LoadBalancer repo
baseurl=ftp://192.168.8.2/LoadBalancer
enabled=1
gpgcheck=0
9.Edit ftp server configuration file to make /YUM as anonymous root
vi /etc/vsftpd/vsftpd.conf
anon_root=/YUM
10.Restart ftp service
service vsftpd restart
11.Add a rule in iptables to accept ftp connections in /etc/sysconfig/iptables
vi /etc/sysconfig/iptables
-A INPUT -p tcp -s 192.168.8.0/24 --dport 21 -i eth0 -j ACCEPT
12.Add ip_conntrack_ftp module in /etc/sysconfig/iptables-config which is needs to be added for FTP support[ip_nat_ftp]
vi /etc/sysconfig/iptables-config
IPTABLES_MODULES="ip_conntrack_ftp"
service iptables restart
13.Install the following packages[both clients and server need these packages] to transfer files
You need to install it from DVD
Follow step 2 and 3 and then
rpm -ivh libedit-2.11-4.20080712cvs.1.el6.x86_64 openssh-clients-5.3p1-20.el6.x86_64 ftp-0.17-51.1.el6.x86_64.rpm
14.transfer yum configuraion files to clients
scp /etc/yum.repos.d/rhel6-1.repo *.*.*.*:/etc/yum.repos.d/
15.Check yum configuratoin
yum grouplist will give you these ouputs
Installed Groups:
E-mail server
FTP server
Available Groups:
Additional Development
Afrikaans Support
...
Enjoy RHEL6 Package Management
I've made a video for easy understanding
http://www.youtube.com/watch?v=scBtTTwLze0
1. Put your RHEL6 media on DVD drive
2. Create a partition with size 6GB and mount it as /yum
3. Download the below script to /yum
https://sites.google.com/site/ansilh/rhel6_repo.sh
4. Give execute permission to the downloaded script
5. Please open the file and try to understand it. If you found all safe ,then go to next step
6. Execute it...You will get an RHEL repo accessible through ftp
***Please feel free to comment your experience ***
=======================================
Manual Steps (*Different approach from above script .The repo file not look like usual one)
YouTube Link : http://www.youtube.com/watch?v=scBtTTwLze0
1.create a directory to store packages .(Better you create a partition with 5GB size and mount it as /YUM)
mkdir /YUM
2.mount RHEL6 DVD
mount /dev/dvd /mnt
3.go to the mounted directory
cd /mnt/Packages/
4.copy all contents of DVD to /YUM (Note the "." in command )
cp . /YUM/
5.Install createrepo package with dependancies
rpm -ivh deltarpm-**.el6.x86_64.rpm python-deltarpm-**.el6.x86_64.rpm createrepo-**.rpm
6.install FTP server
rpm -ivh vsftpd-2.2.2-6.el6.x86_64.rpm
7.Create repository using
createrepo -g /YUM/HighAvailability/repodata/****-comps-rhel6-HighAvailability.xml –o \
/YUM/HighAvailability/ /YUM/Packages/
createrepo -g /YUM/LoadBalancer/repodata/*****-comps-rhel6-LoadBalancer.xml –o \
/YUM/LoadBalancer/ /YUM/Packages/
createrepo -g /YUM/ResilientStorage/repodata/****-comps-rhel6-ResilientStorage.xml –o \
/YUM/ResilientStorage/ /YUM/Packages/
createrepo -g /YUM/ScalableFileSystem/repodata/****-comps-rhel6-ScalableFileSystem.xml –o \
/YUM/ScalableFileSystem/ /YUM/Packages/
createrepo -g /YUM/Server/repodata/****-comps-rhel6-Server.xml -o /YUM/Server/ /YUM/Packages/
8.Create a repo file in /etc/yum.repos.d/
The Server id contains the main path to the packages.(bold in [Server] baseurl )
vi /etc/yum.repos.d/rhel6-1.repo
[Server]
name=rhel6-1 Server repo
baseurl=ftp://192.168.8.2/Server
ftp://192.168.8.2/Packages
enabled=1
gpgcheck=0
[HighAvailability]
name=rhel6-1 HighAvailability repo
baseurl=ftp://192.168.8.2/HighAvailability
enabled=1
gpgcheck=0
[ScalableFileSystem]
name=rhel6-1 ScalableFileSystem repo
baseurl=ftp://192.168.8.2/ScalableFileSystem
enabled=1
gpgcheck=0
[ResilientStorage]
name=rhel6-1 ResilientStorage repo
baseurl=ftp://192.168.8.2/ResilientStorage
enabled=1
gpgcheck=0
[LoadBalancer]
name=rhel6-1 LoadBalancer repo
baseurl=ftp://192.168.8.2/LoadBalancer
enabled=1
gpgcheck=0
9.Edit ftp server configuration file to make /YUM as anonymous root
vi /etc/vsftpd/vsftpd.conf
anon_root=/YUM
10.Restart ftp service
service vsftpd restart
11.Add a rule in iptables to accept ftp connections in /etc/sysconfig/iptables
vi /etc/sysconfig/iptables
-A INPUT -p tcp -s 192.168.8.0/24 --dport 21 -i eth0 -j ACCEPT
12.Add ip_conntrack_ftp module in /etc/sysconfig/iptables-config which is needs to be added for FTP support[ip_nat_ftp]
vi /etc/sysconfig/iptables-config
IPTABLES_MODULES="ip_conntrack_ftp"
service iptables restart
13.Install the following packages[both clients and server need these packages] to transfer files
You need to install it from DVD
Follow step 2 and 3 and then
rpm -ivh libedit-2.11-4.20080712cvs.1.el6.x86_64 openssh-clients-5.3p1-20.el6.x86_64 ftp-0.17-51.1.el6.x86_64.rpm
14.transfer yum configuraion files to clients
scp /etc/yum.repos.d/rhel6-1.repo *.*.*.*:/etc/yum.repos.d/
15.Check yum configuratoin
yum grouplist will give you these ouputs
Installed Groups:
E-mail server
FTP server
Available Groups:
Additional Development
Afrikaans Support
...
Enjoy RHEL6 Package Management
I've made a video for easy understanding
http://www.youtube.com/watch?v=scBtTTwLze0
nice work man.....thanx.its really helpfull .....im new to linux....:)
ReplyDeleteThanks ..Did you faced any trouble while configuring ..?
Deletehow to install yum in rhel6 without using rpm...coz i can do that thing in rhel5 bt i cant in rhel6...tell me if u know anything regarding dis..mah email id is (arundasouni@ymail.com)
ReplyDeletehey ansil...... i still has confusion in it, i am using vmware 8 with linux 6.1 installed on it , i connected my iso to it and copied the content of iso along with packages to /root/dvd directory i am facing confusion what to write in base url of my *.repo file??? please suggest!!
ReplyDeleteJust you need to type the ip address of your computer or write baseurl=file:///var/ftp/pub/Server If you have created in this location other wise write the location where you have created.
DeleteThanks for the prompt reply Chandra
DeleteI am also confusion for this steps.Please explane clearly
ReplyDeleteI hope you copied all DVD contents to /YUM directory
DeletePlease add "anon_root=/YUM" on /etc/vsftpd/vsftpd.conf file and restart vsftpd service
(Anonymous user will get directory /YUM on ftp login)
Hii..
ReplyDeleteI am new to Linux....i am finding difficult in installing the JDK1.7 on rhel6.....plz help...
This comment has been removed by the author.
DeleteHi,
DeletePlease download the JDK 7 from Oracle download portal.You can either download RPM or "Compressed Binary package"
Download the package to /tmp from below URL
http://www.oracle.com/technetwork/java/javase/downloads/java-se-jdk-7-download-432154.html
1) RPM base installation is straight forward..
* rpm -ivh --test /tmp/java-xxx.rpm
If everything is fine go with
* rpm -ivh /tmp/java-xxx.rpm
2) Compressed Binary Installation is also easy.
* tar -xvf /tmp/.tar.gz
* chmod /tmp/java-xxx.bin
* cd /usr/
* /tmp/java-xxx.bin <- Execute the binary file
* Set JAVA_HOME variable accordingly
Please let me know if you need any help
Thanks
1)Inser Linux os Disk
Delete2)Os disk copy to another Location in Root(/)
cp -vr /media/RHEL^..... /Destnation
3)Install The createrepo Package
rpm -ivh createrepo* --force --aid
4)After we goto this Location
cd /etc/yum.repos.d/
5)to create database
createrepo --database /desination dir path
6)edit the file
vi rhel-source.repo
Shift+G
[localhost/localdomain]
name=rhel6
baseurl=file://destination dir path
gpqchech=0
enabled=1
:wq
7)yum repolist
8)yum clean all
i want to create a .repo file that will enable installation of fusecompress using yum. (yum install fusecompress).
ReplyDeleteHow do we create the .repo file
Thanks in advance.
Which Linux you are using - Fedora or RedHat ?
DeleteFedora OS itself having the repository details to download all the packages and fusecompress is already present on Fedora repo.
Try using fedora and you will get the way to RHEL
i manually configured yum using these steps
Delete# Mount the CDROM #
# mount -t iso9660 /dev/sr0 /mnt
# df -h /mnt
Filesystem Size Used Avail Use% Mounted on
/dev/sr0 3.2G 3.2G 0 100% /mnt
# Preparation for Yum Master Server #
1) Install the required packages.
[root@server Packages]# pwd
/mnt/Packages
[root@server Packages]# rpm -ivh vsftpd-2.2.2-6.el6.x86_64.rpm
warning: vsftpd-2.2.2-6.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
Preparing... ########################################### [100%]
1:vsftpd ########################################### [100%]
[root@server Packages]# rpm -ivh createrepo-0.9.8-4.el6.noarch.rpm
warning: createrepo-0.9.8-4.el6.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
error: Failed dependencies:
deltarpm is needed by createrepo-0.9.8-4.el6.noarch
python-deltarpm is needed by createrepo-0.9.8-4.el6.noarch
[root@server Packages]# rpm -ivh deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm
warning: deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
Preparing... ########################################### [100%]
1:deltarpm ########################################### [100%]
[root@server Packages]# rpm -ivh python-deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm
warning: python-deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
Preparing... ########################################### [100%]
1:python-deltarpm ########################################### [100%]
[root@server Packages]# rpm -ivh createrepo-0.9.8-4.el6.noarch.rpm
warning: createrepo-0.9.8-4.el6.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
Preparing... ########################################### [100%]
1:createrepo ########################################### [100%]
[root@server Packages]#
2) Copy the Packages from CDROM to /var/ftp/pub folder. The folder will be automatically created once we install the vsftpd rpm.
[root@server /]# cp -r /mnt/Packages /var/ftp/pub/
[root@server /]#
3) Create a repodata which will be used as a repository of packages for Yum configuration [including master itself and clients].
[root@server Packages]# createrepo -v .
1/3431 - augeas-libs-0.7.2-3.el6.i686.rpm
2/3431 - hunspell-vi-0.20080604-3.1.el6.noarch.rpm
3/3431 - urw-fonts-2.4-10.el6.noarch.rpm
|
|
|
|
3429/3431 - libusb-0.1.12-23.el6.x86_64.rpm
3430/3431 - tigervnc-server-1.0.90-0.10.20100115svn3945.el6.x86_64.rpm
3431/3431 - kde-l10n-Spanish-4.3.4-5.el6.noarch.rpm
Saving Primary metadata
Saving file lists metadata
Saving other metadata
[root@server Packages]#
4) Configuration of YUM Master.
[root@server /]# cd /etc/yum.repos.d
[root@server yum.repos.d]# vi server.repo
[server]
name=server.hp.com
baseurl=ftp://10.1.2.47/pub/Packages
enabled=1
gpgcheck=0
[root@server yum.repos.d]#
But after this i got an error
[root@m47 ~]# yum update
Loaded plugins: refresh-packagekit, rhnplugin
This system is not registered with RHN.
RHN support will be disabled.
ftp://10.1.2.47/pub/Packages/repodata/repomd.xml: [Errno 14] PYCURL ERROR 7 - ""
Trying other mirror.
Error: Cannot retrieve repository metadata (repomd.xml) for repository: server. Please verify its path and try again
Hi
DeleteDid you check anonymous ftp access to your FTP server ?
and are you able to see "pub" directory after you got login ?
hi nice info..
ReplyDeletesome times while creating yum repositories by default redhat.repo is automatically creating even after deleting it comes again and again y?
and how can i solve the problem
its wonderful help for Linux survivor...........
ReplyDeletetx 2 do dat..>>>>
heh i am confused after that 8th point where we give the server address should we copy the same address and 13th command i copy and run it its not running
Deleteplz help me in this regard
when i fins and
root@local Packages]# yum install mysql-server
Loaded plugins: refresh-packagekit, rhnplugin
This system is not registered with RHN.
RHN support will be disabled.
ftp://192.168.8.2/HighAvailability/repodata/repomd.xml: [Errno 14] PYCURL ERROR 7 - ""
Trying other mirror.
Error: Cannot retrieve repository metadata (repomd.xml) for repository: HighAvailability. Please verify its path and try again
heh i am confused after that 8th point where we give the server address should we copy the same address and 13th command i copy and run it its not running
ReplyDeleteplz help me in this regard
when i fins and
root@local Packages]# yum install mysql-server
Loaded plugins: refresh-packagekit, rhnplugin
This system is not registered with RHN.
RHN support will be disabled.
ftp://192.168.8.2/HighAvailability/repodata/repomd.xml: [Errno 14] PYCURL ERROR 7 - ""
Trying other mirror.
Error: Cannot retrieve repository metadata (repomd.xml) for repository: HighAvailability. Please verify its path and try again
Hi Sabari,
DeleteI would suggust to check on FTP configuration.
1.Are you able to see "HighAvailability" directory after just logged on to ftp server using anonymous user ?
2.Check the contents inside "HighAvailability"
3.If it is not there , then you need to execute "createrepo" command for "HighAvailability"
4.Aslo check for DVD copied content permissions.
We used two url on setp 8
baseurl=ftp://192.168.8.2/Server
ftp://192.168.8.2/Packages
Because the second one will act as a mirror and it wil bypass all package download request from clients to second ftp url.All our packages are in "Packages".Other directories only contains metadata files (xml and gz files).
[root@sercon2 Packages]# createrepo -g /down/RHEL6/HighAvailability/repodata/2ae2772083e8ae96b26fb7b9c871a5a0ea988308ad91a1918744986ba200c4aa-comps-rhel6-HighAvailability.xml -o /down/RHEL6/Packages/
ReplyDeleteError: Must specify a directory to index.
Usage: genpkgmetadata.py [options]
Syntax error , you Should specify where you need to store metadata files.I've marked the same in quotes below
Deletecreaterepo -g /YUM/HighAvailability/repodata/****-comps-rhel6-HighAvailability.xml –o \
"/YUM/HighAvailability/" /YUM/Packages/
hi sir iam using RHEL 6 on vmware8 and in that i am trying to configure yum i was configure yum server successfully but i dont where i have configure yum client pls help me how to configure yum client in vmware8 rhel6 plssssssss
ReplyDeleteHi,
DeleteI'm preparing a video for this, I hope it will be finished end of this month (end of July 2013)
Here it is :- http://www.youtube.com/watch?v=scBtTTwLze0
DeleteCheers ..:)
Thank Ansil It's realy worked .........!
ReplyDeleteHello
ReplyDeletei am using RHEL6 on vmware. and i use iso of rhel6 32 bit.. plz tell me how i can configure yum. when i follow the step there gives me a some error :
mount: /root/Desktop/media/rhel6.0-32bit.iso is not a block device (maybe try `-o loop'?)
it the error
plzz tell me..
you can try :
Deletemount iso image of RHEL 6 in Vmware settings then,
mount /dev/dvd/ /mnt
cd /mnt
& rest given in above article .. Plz read...
Regards,
PGA
Good work dude...nicely wrote.
ReplyDeleteRegards,
PGA
good one . it helped me
ReplyDeleteHello, I have a unique twist on a repo server. I'd like to respin the RHEL6.5 DVD to include the latest packages. I switched out the old packages in the build tree (the RHEL6.5 iso) (under the Packages directory) then used createrepo -g repodata/*comps*.xml . Which should use the Server comps file from repodata and since my CWD has the Packages directory in it all should be well. I create the repository OK and during the install the dependency check is just fine, but then the install just hangs. I'm using a VM and getting to the alternate screens isn't working (ugh). I feel like I'm either really close or I've completely missed the boat. Suggestions would be greatly appreciated. Michelle
ReplyDeleteHello, i have wifi internet connection but iam not able to connect in redhat linux 6.0.
ReplyDeletecould you please tell the configuration settings ?? thanks in advance.
you can rpy in my mail also... sharique.javed@gmail.com
just copy all packages to a folder /var/ftp/pub/rhel6. and create a repo file inside /etc/yum.repos.d/test.repo. and edit this test.repo as following
ReplyDelete[server]
name=test
baseurl=file:///var/ftp/pub/rhel6/
gpgcheck=0
enabled=1
Hi Ansil,
ReplyDeleteThanks for the post, but could you please help me with the error I am getting at step 7 as below:
[root@prud-linux Desktop]# createrepo -g /YUM/ResilientStorage/repodata/****-comps-rhel6-ResilientStorage.xml –o /YUM/ResilientStorage/ /YUM/Packages/
Error: Only one directory allowed per run.
Usage: genpkgmetadata.py [options]
[root@prud-linux Desktop]# createrepo -g /YUM/ResilientStorage/repodata/****-comps-rhel6-ResilientStorage.xml –o \ /YUM/ResilientStorage/ /YUM/Packages/
Error: Only one directory allowed per run.
Usage: genpkgmetadata.py [options]
Great Post.Thank you for sharing with us.
ReplyDeleteQuickbooks Hostiing
Cool and that i have a keen supply: Who Repair House Windows house renovation contractors
ReplyDelete