TipsAndTricks/CreatingUpdateMedia

Some users with limited bandwidth may want to use “sneakernet” to update from removable media (such as CD, DVD, or USB memory stick) created on a machine that has a fast internet connection and adequate disk space to hold all updates. To create a CD/DVD containing all the updates follow this procedure.

  • CentOS-5.2 updates are currently about 3.6 GB for i386, 3.6 GB for x86_64 – implies DVD.

For example, for the i386 updates, the top level of the DVD should have the contents of the updates/i386 directory:

  • repodata
  • RPMS

With k3b one can create this DVD quite easily by selecting “New Data DVD Project”, navigating to a previously-downloaded copy (or local mirror) of the updates for the desired arch, dragging the 2 directories to the DVD window, and selecting “Burn”.

  • To create a local mirror one can use tools including rsync, lftp, wget, or Dag Wieers’ mrepo

Example using lftp to update a repo for CentOS-5 i386 (substitute a path on a mirror close to you for ftp://ftp.gtlib.gatech.edu/pub/centos/):

[[email protected] ~]# lftp ftp://ftp.gtlib.gatech.edu/pub/centos/5/updates
cd ok, cwd=/pub/centos/5/updates
lftp ftp.gtlib.gatech.edu:/pub/centos/5> lcd /my_share/CentOS/5/updates
lcd ok, local cwd=/my_share/CentOS/5/updates
lftp ftp.gtlib.gatech.edu:/pub/centos/5> mirror --verbose --delete i386 i386
...

By using the above example, you can write a shell script and run it as a cron job to automate the update:

#/bin/sh
# CentOS 5 updates
cd /my_share/CentOS/5/updates
lftp -e 'open ftp://ftp.gtlib.gatech.edu/pub/centos/5/updates && mirror -c --delete i386 && exit'
lftp -e 'open ftp://ftp.gtlib.gatech.edu/pub/centos/5/updates && mirror -c --delete x86_64 && exit'
.....

For CentOS-4 and CentOS-5 a CentOS-Media.repo file already exists in /etc/yum.repos.d.

Mount the update DVD on the connectivity-challenged machine and do:

# yum --disablerepo=* --enablerepo=c4-media update

New media can be created when enough updates, or important enough updates, come out to justify the effort.

  • One could follow a similar technique to put updates on other removable media such as a USB key. The /etc/yum.repos.d/CentOS-Media.repo could be used as a guide to produce a /etc/yum.repos.d/USB.repo file pointing to the appropriate mount point. Updates could also be copied to hard disk and a repo file created pointing to the mount point. This would allow original DVD install media to be used for OS packages via the c4-media repo, or vice versa. Having both base OS and Updates repos available simultaneously will allow new packages from updates that have deps in the base repo to be installed, or new base packages to be installed with updated packages for dependencies. This technique can also be expanded to put other repos, such as extras or centosplus, on removable media.

This page created and maintained by PhilSchaffner. Other Wiki contributors are invited to make corrections, additions, or modifications.