In the RH 5.2 Cookbook section 11.4.3 explains maintaining package repositories for system service. I know this is probably a large topic with many ways of maintaining systems but I am curious if this method is used out in the real world. If not what, what is a common method? As you can tell from the question you have a newbie on your hands. Thanks Matt
11.4.3 Updating packages on the server The RPMs are located in the /Server subdirectory of the install tree. Beneath this directory, there is a subdirectory named /repodata which contains repository files used by yum. Whenever a new set of RPMs is added to the /Server directory, you must rebuild the repository data with the createrepo command. On the controller, first install the createrepo RPM with: # yum install createrepo ... Running Transaction Installing: createrepo ######################### [1/1] Installed: createrepo.noarch 0:0.4.4-2.fc6 Complete! Note: Red Hat signs each RPM with a private GPG key, which is compared to your public key each time a package is installed. This method ensures that the RPM is a genuine, unaltered package. When installing an RPM, if you ever see a message similar to the following, it means that either the correct GPG key has not been imported, or the package itself has been altered by a third party: Header V3 DSA signature: NOKEY, key ID 897da07a 158 The Virtualization Cookbook for Red Hat Enterprise Linux 5.2 Next, back up the current repository and create a new one with the createrepo command: # cd /nfs/rhel5.2/Server # mv repodata repodata.orig # createrepo /nfs/rhel5.2/Server 96/2480 - system-config-network-1.3.97-1.el5.noarch.rpm ... It should take about five minutes to build the new repository data, depending on the number of RPMs. You now have a new repository based on the RPMs in /nfs/rhel5.2/Server. Repeat this procedure any time an RPM (or set of RPMs) change. You can also use this to create multiple RPM repositories, based on anything you like. For example, you can have a repository named "test" containing the latest packages from RHN, as well as a "production" repository based on an official RHEL update. You can then create a .repo file on the client pointing to either repository, based on the role of that client. For example, on the server: # cd /nfs/rhel5.2 # cp -a Server Server.production # cp -a Server Server.test Now, any time you update an RPM in /nfs/rhel5.2/Server.test/, run createrepo on that directory. On the client, in the /etc/yum.repos.d/ directory you can have: /etc/yum.repos.d/rhel5.2.production.repo: [RHEL5.2] name=RHEL 5.2 production baseurl=file:///nfs/rhel5.2/Server.production/ Or you can have: /etc/yum.repos.d/rhel5.test.repo: [RHEL5.2] name=RHEL 5.2 test baseurl=file:///nfs/rhel5.2/Server.test/ Note that this method requires maintaining separate copies of each directory of RPMs, which can fill the /nfs directory on the controller quickly. Red Hat provides a separate product named Satellite which maintains a single tree, while managing the RPM version differences Matthew Dazzo Sr MVS Systems Programmer Publishers Clearing House Port Washington NY 516-944-4816 ---------------------------------------------------------------------- For LINUX-390 subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO LINUX-390 or visit http://www.marist.edu/htbin/wlvindex?LINUX-390 ---------------------------------------------------------------------- For more information on Linux on System z, visit http://wiki.linuxvm.org/
