- Set up a local FTP mirror of the ISOS, using lftp:
[root@ftp ~]# cat lftp-centos4-iso.conf_
#
# Get the Centos 4 ISOs
#
mirror -e -c \
ftp://bugs.osu.edu/pub/Linux/Centos/4.0/isos/i386 \
/var/ftp/pub/mirror/centos/centos-4/4.0/isos
#
#
# -I CentOS-3.4-i386-disc* \
# -I MD5SUMS \
#
#
with a command like: lftp -f lftp-centos4-iso.conf_
- And grab the updates as well, using lftp:
[root@ftp ~]# cat lftp-Centos-40-updates.conf
#
# Get the Centos 4 updates
#
mirror -c -e \
http://mirror.centos.org/centos-4/4.0/updates/i386/RPMS \
/var/ftp/pub/mirror/centos/centos-4/4.0/updates/i386/RPMS
#
# The following line is for our yum-arch and
# createrepo logic
#
# yum: /var/ftp/pub/mirror/centos/centos-4/4.0/updates/i386/RPMS
#
with a command in the crontab for root like:
55 6 * * * lftp -f /root/lftp-Centos-40-updates.conf
We actually use a more complex, site local script to do this,
which also uses the content at:
# yum: (etc) to also automatically update our
yum-arch and createrepo yum archive headers. See the
README at ftp://ftp.owlriver.com/pub/mirror/active-release/ for
more gory details.
- Loop mount and hang them on a local host (not the one to
be upgraded) for local FTP access
See the code at:
ftp://ftp.owlriver.com/pub/mirror/ORC/k12ltsp/
in install-from-iso.sh and ORCsetPXE
- As root, make a directory on the host to be upgraded, and
retrieve the following files:
mkdir /boot/upgradeany/
cd /boot/upgradeany/
lftp (local mirror)
get /pub/install/ftpinstall/images/pxeboot/*
[herrold@centos-4 ~]$ lftp ftp
lftp ftp:~> cd pub/install/ftpinstall/images/pxeboot/
cd ok, cwd=/pub/install/ftpinstall/images/pxeboot
lftp ftp:/pub/install/ftpinstall/images/pxeboot> ls
lrwxrwxrwx 1 0 0 51 Apr 07 02:17 README
-> ../../../../loop/ftpinstall/1/images/pxeboot/README
lrwxrwxrwx 1 0 0 55 Apr 07 02:17
initrd.img ->
../../../../loop/ftpinstall/1/images/pxeboot/initrd.img
lrwxrwxrwx 1 0 0 52 Apr 07 02:17
vmlinuz ->
../../../../loop/ftpinstall/1/images/pxeboot/vmlinuz
lftp ftp:/pub/install/ftpinstall/images/pxeboot>
which gets initrd.img and vmlinuz into that directory.
- Edit /boot/grub/grub.conf to add a stanza one thus:
title upgradeany
root (hd0,0)
kernel /upgradeany/vmlinuz upgradeany
initrd /upgradeany/initrd.img
- Reboot and boot option 1 rather than the default option 0.
- Answer the questions.
- Upgrade completed.
- Log in and get the updates in place:
cd /usr/share/doc/centos-release-4/
rpm --import RPM-GPG-KEY
rpm --import RPM-GPG-KEY-centos4
yum -y upgrade
- Make sure you are on the centos-announce mailing list.
- Please report issues or successes here or to me directly.