http://www.debian.org/releases/stable/i386/release-notes/ch-upgrading.en.html
backup /etc, /var/lib/dpkg and the output of dpkg --get-selections "*"
change /etc/apt/preferences
New /etc/apt/sources.list:
------------------
deb http://security.debian.org/ etch/updates main contrib non-free
deb ftp://ftp.nl.debian.org/debian etch main contrib non-free
deb-src ftp://ftp.nl.debian.org/debian etch main contrib non-free
------------------
aptitude -y -s -f --with-recommends dist-upgrade
shows how much free space you need
aptitude upgrade
does a minimal upgrade without removing the packages
NB shorewall needs some edits:
/etc/shorewall/zones now looks something like this
net ipv4
loc ipv4
fw firewall
(nb also look at /etc/shorewall/interfaces)
aptitude install initrd-tools
aptitude install udev
aptitude install discover
make sure lvm2 is installed, as lvm 1 is incompatible, as are snapshot volumes, so they need to be removed from /etc/fstab and can safely be destroyed.
Also make sure dmsetup is installed.
If the machine exports NFS volumes, make sure the portmapper is listening to all ports (/etc/default/portmap)
Make sure the packages which were changed are running under the new configuration
Upgrade the Kernel:
apt-cache search linux-image-2.6- | grep -v transition
aptitude install linux-image-2.6-686
/etc/lilo.conf initrd configuration. use mkinitrd to create it if it isn't there allready. Check the existence of the files!
-----------------
image=/vmlinuz
label=Linux
read-only
initrd=/initrd.img
# restricted
# alias=1
image=/vmlinuz.old
label=LinuxOLD
read-only
optional
# restricted
# alias=2
-------------------
rerun lilo after editing lilo.conf
check mountpoints and exports - make sure nothing is accessing them before the next step, so make sure any servers using those mountpoints have unmounted them cleanly!
reboot
pray a bit
login
backup the mysql databases
aptitude dist-upgrade (nb make sure of free diskspace!)
NB if you get shit during the upgrade process from sed, delete the file ik keeps talking about, don't bother about trying to fix the dependancies, then go back to the dist-upgrade.
to get the package signature checking mechanism:
apt-get install debian-keyring
apt-key add /usr/share/keyrings/debian-role-keys.gpg
aptitude update
in /etc/default/snmpd
change
SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid'
to allow access from all hosts
/etc/X11/xdm/Xaccess there's some broadcast option set which I'm not sure yet if it's important.
make sure that in /etc/kernel-img.conf
do_bootloader = Yes
exists
check the raid arrays
mdadm --detail /dev/md0
(http://svn.debian.org/wsvn/pkg-mdadm/mdadm/trunk/debian/README.upgrading-2.5.3?op=file)