add documentation on wheezy upgrades
authorMartin Zobel-Helas <zobel@debian.org>
Sun, 2 Dec 2012 12:41:51 +0000 (13:41 +0100)
committerMartin Zobel-Helas <zobel@debian.org>
Sun, 2 Dec 2012 12:42:14 +0000 (13:42 +0100)
Signed-off-by: Martin Zobel-Helas <zobel@debian.org>
input/howto/upgrade-to-wheezy.mdwn [new file with mode: 0644]
input/index.mdwn

diff --git a/input/howto/upgrade-to-wheezy.mdwn b/input/howto/upgrade-to-wheezy.mdwn
new file mode 100644 (file)
index 0000000..aed3b60
--- /dev/null
@@ -0,0 +1,178 @@
+
+# Upgrade from lenny to squeeze
+
+Make sure to coordinate with whoever uses the host, be it the buildd
+operator, the QA team, the ftp team or just announce it if it's a
+general developer box.
+
+on buildds:
+
+       cd ~buildd
+       sudo su - buildd
+       touch NO-DAEMON-PLEASE EXIT-DAEMON-PLEASE && exit
+
+       now wait for the buildd to quit
+
+turn off samhain
+
+       cd /etc/rc2.d/
+       service samhain stop &&
+       prio=$(ls -1 S*samhain | cut -b 2-3); mv S${prio}samhain K${prio}samhain # so it stays down
+
+
+maybe turn off exim
+
+       cd /etc/rc2.d/
+       service exim4 stop &&
+       prio=$(ls -1 S*exim4* | cut -b 2-3); mv S${prio}exim4 K${prio}exim4 # so it stays down
+
+
+install deborphan, clean up
+
+       apt-get autoremove
+       apt-get install deborphan dialog
+       orphaner
+       orphaner -n
+       orphaner -a
+       orphaner -a -n
+
+purge removed packages
+
+       dpkg --get-selections | awk '$2=="deinstall" {print $1}' &&
+       echo "really purge these [y/N]?" && read ans && [ "$ans" = "y" ] && dpkg --purge `dpkg --get-selections | awk '$2=="deinstall" {print $1}'` &&
+       echo "These are not at install:" && dpkg --get-selections | awk '$2!="install" {print $1}'
+
+change sources list entries to squeeze:
+
+       cd /etc/apt/sources.list.d && sed -i "s#squeeze#wheezy#g" debian.list && sed -i "s#squeeze#wheezy#g" volatile.list && sed -i "s#squeeze#wheezy#g" security.list
+
+update apt list
+
+       apt-get update
+
+upgrade
+
+       apt-get install locales-all apt dpkg base-files
+
+answer question to libc6 "Restart services automaticaly" with "yes"
+
+answer "Yes" to changes of /etc/default/rcS, [http://bugs.debian.org/694928](BR#694928)
+and change "FSCKFIX=yes" afterwards, at least on hardware without remote access (like arm*)
+
+rest follows
+
+       apt-get dist-upgrade
+
+use dash as system shell (/bin/sh).
+
+reject changes to /etc/pam.d/sudo (puppet will install a new file later anyway)
+
+reject changes to /etc/munin/plugin-conf.d/munin-node (puppet will install a new file later anyway)
+
+ * keep local (i.e. reject (N)):
+  * all changes relating to exim  (in /etc/exim4 and in logrotate)
+  * /etc/nagios/nrpe.cfg
+  * /etc/ldap/ldap.conf
+  * /etc/puppet/puppet.conf
+
+  * /etc/samhain/samhainrc
+  * /etc/munin/munin-node.conf
+  * /etc/logrotate.d/apache2
+  * /etc/apache2/apache2.conf
+  * /etc/apache2/ports.conf
+
+ * install new version:
+  * /etc/init.d/stunnel4
+
+update dsa-nagios.git (add host to squeeze hostgroup)
+
+update dsa-puppet.git (add to squeeze list in local.yaml)
+
+do a puppet run:
+
+       puppetd -t; puppetd -t
+
+upgrade once more (security etc)
+
+       apt-get update && apt-get dist-upgrade
+
+if you are moving from a dsa kernel to a debian kernel, add non-free to sources list, then
+
+       apt-get install firmware-linux
+
+maybe also
+
+       apt-get install firmware-bnx2
+
+if you are an nfs client, make sure to load the module before boot completes:
+
+       echo nfs >> /etc/modules
+
+if you are an autofs node, make sure to load the module before boot completes:
+
+       echo autofs4 >> /etc/modules
+
+These last two are because autofs in particular lazy loads the modules, and it
+will happen after we've disabled module loading.
+
+clean up transitions
+
+       dpkg --purge dhcp3-client && apt-get install isc-dhcp-client  # mark as non-auto
+
+Do the same for grub/grub-pc if you did upgrade-from-grub-legacy
+
+       (reboot)
+       upgrade-from-grub-legacy
+       (reboot)
+       apt-get purge grub &&
+       apt-get install grub-pc
+
+clean up old libs
+
+       orphaner
+       orphaner -n
+       orphaner -a
+       orphaner -a -n
+
+check for unneeded/obsolete packages
+
+       apt-get autoremove
+
+       /usr/lib/nagios/plugins/dsa-check-packages
+
+purge removed packages
+
+       dpkg --get-selections | awk '$2=="deinstall" {print $1}' &&
+       echo "really purge these [y/N]?" && read ans && [ "$ans" = "y" ] && dpkg --purge `dpkg --get-selections | awk '$2=="deinstall" {print $1}'` &&
+       echo "These are not at install:" && dpkg --get-selections | awk '$2!="install" {print $1}'
+
+purge cruft that upgrade doesn't remove
+
+       apt-get remove --purge emacs22-common libxmlrpc-ruby libcap1 emacs22-nox emacs22-bin-common libvolume-id0 gcc-4.2-base ifenslave libopenssl-ruby1.8 mailx
+
+re-init samhain
+
+possibly reboot
+
+re-enable exim, samhain
+
+       mv /etc/rc2.d/K??exim4 /etc/rc2.d/S02exim4
+       mv /etc/rc2.d/K??samhain /etc/rc2.d/S02samhain
+       env -i /etc/init.d/exim4 start
+       env -i /etc/init.d/samhain start
+
+       insserv
+
+re-init samhain
+
+### Troubleshooting
+
+### Problems with CCISS
+
+On custom kernels in squeeze it seems that udev stopped to create cciss devices, thus in /lib/udev/devices do a /dev/MAKEDEV cciss and reboot.
+
+       cd /lib/udev/devices
+       /dev/MAKEDEV cciss
+
+### mailq plugin no longer works
+       apt-get install nagios-plugins-standard
index 309c92c..cc2aba7 100644 (file)
@@ -42,6 +42,7 @@ ticket.
 * [[howto/puppet-setup]]
 * [[howto/upgrade-to-lenny]]
 * [[howto/upgrade-to-squeeze]]
+* [[howto/upgrade-to-wheezy]]
 * [[howto/install-ganeti]]: ganeti related documentation
 * [[howto/ilo-https]]
 * [[howto/backup]]