Offline Updates
If you are using ClearOS in an environment where you cannot get software updates you may want to get those updates and apply them to a that offline server. Some run ClearOS in this mode because the server must be secure and not connected to the Internet. This can create some difficulty when trying fix bug related problems. This method will help you grab the required updates so that they can be moved to the new system.
Requirements
You will want a 'shadow' system running ClearOS at the same patch level or at a patch level previous to the system you want to update. This can be done as a VM for easy management purposes. On this 'shadow' system download and install the yum 'download only' package.
Getting and Installing
Make a directory on the shadow server as a place for the update files:
mkdir /root/updates.current
Get updates with yum:
yum update -y --downloadonly --downloaddir=/root/updates.current
You should get a lot of messages from the server that looks something like this:
Loading "downloadonly" plugin Loading "protect-packages" plugin Loading "kmod" plugin base-kernels | 951 B 00:00 base-updates | 951 B 00:00 clearcentos-os | 951 B 00:00 base-supplements | 951 B 00:00 base-os | 1.1 kB 00:00 clearcentos-updates | 951 B 00:00 base-console | 951 B 00:00 Setting up Update Process Resolving Dependencies --> Running transaction check ---> Package gcc-gfortran.i386 0:4.1.2-52.el5_8.1 set to be updated ---> Package libobjc.i386 0:4.1.2-52.el5_8.1 set to be updated ---> Package openssl.i686 0:0.9.8e-22.el5_8.4 set to be updated ... ---> Package libstdc++.i386 0:4.1.2-52.el5_8.1 set to be updated ---> Package bind-libs.i386 30:9.3.6-20.P1.el5_8.1 set to be updated ---> Package wget.i386 0:1.11.4-3.el5_8.2 set to be updated --> Finished Dependency Resolution Dependencies Resolved ============================================================================= Package Arch Version Repository Size ============================================================================= Installing: kernel i686 2.6.18-308.1.1.v5 base-updates 19 M Updating: app-firewall i386 5.2-45 base-updates 87 k app-remote-backup i386 5.2-45 base-updates 96 k bind-libs i386 30:9.3.6-20.P1.el5_8.1 clearcentos-updates 864 k bind-utils i386 30:9.3.6-20.P1.el5_8.1 clearcentos-updates 174 k ... openssl-devel i386 0.9.8e-22.el5_8.4 clearcentos-updates 1.9 M tar i386 2:1.15.1-32.el5_8 clearcentos-updates 748 k tzdata i386 2012c-1.el5 clearcentos-updates 766 k wget i386 1.11.4-3.el5_8.2 clearcentos-updates 582 k Transaction Summary ============================================================================= Install 1 Package(s) Update 31 Package(s) Remove 0 Package(s) Total download size: 77 M Downloading Packages: (1/32): wget-1.11.4-3.el5_8.2.i386.rpm | 582 kB 00:00 (2/32): bind-libs-9.3.6-20.P1.el5_8.1.i386.rpm | 864 kB 00:01 (3/32): libstdc++-4.1.2-52.el5_8.1.i386.rpm | 363 kB 00:00 (4/32): glibc-2.5-81.el5_8.2.i686.rpm | 5.3 MB 00:06 ... (29/32): openais-0.80.6-36.el5_8.2.i386.rpm | 404 kB 00:00 (30/32): openssl-0.9.8e-22.el5_8.4.i686.rpm | 1.5 MB 00:02 (31/32): libobjc-4.1.2-52.el5_8.1.i386.rpm | 105 kB 00:00 (32/32): gcc-gfortran-4.1.2-52.el5_8.1.i386.rpm | 3.1 MB 00:04 exiting because --downloadonly specified
Verify that the files are now contained in /root/updates.current
ls /root/updates.current/
Finishing up
You may or may not want to update your shadow server's filed to the current version depending on what works best for your environment.
Copy those files via USB or other device to your target server and install them there.
yum install /path/to/files/*.rpm
Loading "protect-packages" plugin Loading "kmod" plugin Setting up Install Process Parsing package install arguments Examining ./app-firewall-5.2-45.i386.rpm: app-firewall - 5.2-45.i386 Marking ./app-firewall-5.2-45.i386.rpm as an update to app-firewall - 5.2-10.i386 Examining ./app-remote-backup-5.2-45.i386.rpm: app-remote-backup - 5.2-45.i386 Marking ./app-remote-backup-5.2-45.i386.rpm as an update to app-remote-backup - 5.2-38.i386 Examining ./bind-libs-9.3.6-20.P1.el5_8.1.i386.rpm: bind-libs - 30:9.3.6-20.P1.el5_8.1.i386 Marking ./bind-libs-9.3.6-20.P1.el5_8.1.i386.rpm as an update to bind-libs - 30:9.3.6-20.P1.el5.i386 ... Examining ./tzdata-2012c-1.el5.i386.rpm: tzdata - 2012c-1.el5.i386 Marking ./tzdata-2012c-1.el5.i386.rpm as an update to tzdata - 2012b-3.el5.i386 Examining ./wget-1.11.4-3.el5_8.2.i386.rpm: wget - 1.11.4-3.el5_8.2.i386 Marking ./wget-1.11.4-3.el5_8.2.i386.rpm as an update to wget - 1.11.4-3.el5_8.1.i386 Resolving Dependencies --> Running transaction check ---> Package gcc-gfortran.i386 0:4.1.2-52.el5_8.1 set to be updated ---> Package libobjc.i386 0:4.1.2-52.el5_8.1 set to be updated ---> Package tzdata.i386 0:2012c-1.el5 set to be updated ... ---> Package libstdc++.i386 0:4.1.2-52.el5_8.1 set to be updated ---> Package openais.i386 0:0.80.6-36.el5_8.2 set to be updated ---> Package wget.i386 0:1.11.4-3.el5_8.2 set to be updated --> Finished Dependency Resolution Dependencies Resolved ============================================================================= Package Arch Version Repository Size ============================================================================= Installing: kernel i686 2.6.18-308.1.1.v5 ./kernel-2.6.18-308.1.1.v5.i686.rpm 49 M Updating: app-firewall i386 5.2-45 ./app-firewall-5.2-45.i386.rpm 391 k app-remote-backup i386 5.2-45 ./app-remote-backup-5.2-45.i386.rpm 576 k bind-libs i386 30:9.3.6-20.P1.el5_8.1 ./bind-libs-9.3.6-20.P1.el5_8.1.i386.rpm 2.0 M ... tzdata i386 2012c-1.el5 ./tzdata-2012c-1.el5.i386.rpm 1.8 M wget i386 1.11.4-3.el5_8.2 ./wget-1.11.4-3.el5_8.2.i386.rpm 1.4 M Transaction Summary ============================================================================= Install 1 Package(s) Update 31 Package(s) Remove 0 Package(s) Total download size: 209 M Is this ok [y/N]: y