Need to set up yum repository for locally-mounted DVD on Red Hat Enterprise Linux 7
Need to set up yum repository for locally-mounted DVD on Red Hat Enterprise Linux 7
Environment
Red Hat Enterprise Linux 7
Issue
- How to set up yum repository to use locally-mounted DVD with Red Hat Enterprise Linux (RHEL) 7
- Would like to upgrade server from RHEL 7.x to RHEL 7.y
- Have a secure environment that will never be connected to the internet, but still needs to be updated
- Way to update the packages on server, with no satellite server and servers disconnected from internet
- Offline patches for Red Hat systems
- How do I create a local repository in RHEL 7?
Resolution
Please note: If the system is registered to Red Hat Network, yum
can be run with the --noplugins
option to prevent it from connecting to RHN. The safer option would be to unregister the system to avoid updating to the latest release.
-
Mount the RHEL 7 installation ISO to a directory like
/mnt
, e.g.:# mount -o loop RHEL7.1.iso /mnt
If you use DVD media , you can mount like below.
# mount /dev/sr0 /mnt
-
Copy the
media.repo
file from the root of the mounted directory to/etc/yum.repos.d/
and set the permissions to something sane, e.g.:# cp /mnt/media.repo /etc/yum.repos.d/rhel7dvd.repo # chmod 644 /etc/yum.repos.d/rhel7dvd.repo
-
Edit the new repo file, changing the
gpgcheck=0
setting to1
and adding the following 3 linesenabled=1 baseurl=file:///mnt/ gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
In the end, the new repo file could look like the following (though the
mediaid
will be different depending on the version of RHEL):[InstallMedia] name=DVD for Red Hat Enterprise Linux 7.1 Server mediaid=1359576196.686790 metadata_expire=-1 gpgcheck=1 cost=500 enabled=1 baseurl=file:///mnt/ gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
-
clear the related caches by
yum clean all
andsubscription-manager clean
once# yum clean all # subscription-manager clean
-
check whether you can get the packages list from the DVD repo
# yum --noplugins list
-
if no problem , you will update
# yum --noplugins update