document how to stop buildds
[mirror/dsa-wiki.git] / input / howto / upgrade-to-squeeze.mdwn
1
2 # Upgrade from lenny to squeeze
3
4 on buildds:
5
6         cd ~buildd
7         sudo su - buildd
8         touch NO-DAEMON-PLEASE EXIT-DAEMON-PLEASE && exit
9
10         now wait for the buildd to quit
11
12 turn off samhain
13
14         /etc/init.d/samhain stop &&
15         mv /etc/rc2.d/S19samhain /etc/rc2.d/K19samhain # and stay down
16
17
18 maybe turn off exim
19
20         /etc/init.d/exim4 stop &&
21         mv /etc/rc2.d/S20exim4 /etc/rc2.d/K20exim4 # so it stays down
22
23
24 install deborphan, clean up
25
26         apt-get install deborphan dialog
27         orphaner
28         orphaner -n
29         orphaner -a
30         orphaner -a -n
31
32 unhold puppet
33
34         echo puppet install | dpkg --set-selections &&
35         echo puppet-common install | dpkg --set-selections
36
37 purge removed packages
38
39         dpkg --get-selections | awk '$2=="deinstall" {print $1}' &&
40         echo "really purge these [y/N]?" && read ans && [ "$ans" = "y" ] && dpkg --purge `dpkg --get-selections | awk '$2=="deinstall" {print $1}'` &&
41         echo "These are not at install:" && dpkg --get-selections | awk '$2!="install" {print $1}'
42
43 change sources list entries to squeeze:
44
45         cd /etc/apt/sources.list.d && sed -i "s#lenny#squeeze#g" debian.list
46
47 update apt list
48
49         apt-get update
50
51 upgrade
52
53         apt-get install locales-all apt dpkg
54
55 rest follows
56
57         apt-get dist-upgrade
58
59 use dash as system shell (/bin/sh).
60
61 reject changes to /etc/pam.d/sudo (puppet will install a new file later anyway)
62
63 reject changes to /etc/munin/plugin-conf.d/munin-node (puppet will install a new file later anyway)
64
65  * keep local (i.e. reject (N)):
66   * all changes relating to exim  (in /etc/exim4 and in logrotate)
67   * /etc/ldap/ldap.conf
68   * /etc/nagios/nrpe.cfg
69   * /etc/samhain/samhainrc
70   * /etc/munin/munin-node.conf
71   * /etc/logrotate.d/apache2
72   * /etc/apache2/apache2.conf
73   * /etc/apache2/ports.conf
74
75 update nagios.git (add host to squeeze hostgroup)
76
77 update dsa-puppet.git (add to squeeze list in local.yaml)
78
79 do a puppet run:
80
81         puppetd -t; puppetd -t; puppetd -t
82
83 upgrade once more (security etc)
84
85         apt-get update && apt-get dist-upgrade
86
87 if you are moving from a dsa kernel to a debian kernel, add non-free to sources list, then
88
89         apt-get install firmware-linux
90
91 maybe also
92
93         apt-get install firmware-bnx2
94
95 if you are an nfs client, make sure to load the module before boot completes:
96
97         echo nfs >> /etc/modules
98
99 if you are an autofs node, make sure to load the module before boot completes:
100
101         echo autofs4 >> /etc/modules
102
103 These last two are because autofs in particular lazy loads the modules, and it
104 will happen after we've disabled module loading.
105
106 clean up transitions
107
108         dpkg --purge dhcp3-client && apt-get install isc-dhcp-client  # mark as non-auto
109
110 Do the same for grub/grub-pc if you did upgrade-from-grub-legacy
111
112         (reboot)
113         upgrade-from-grub-legacy
114         (reboot)
115         apt-get purge grub &&
116         apt-get install grub-pc
117
118 clean up old libs
119
120         orphaner
121         orphaner -n
122         orphaner -a
123         orphaner -a -n
124
125 check for unneeded/obsolete packages
126
127         apt-get autoremove
128
129         /usr/lib/nagios/plugins/dsa-check-packages
130
131 purge removed packages
132
133         dpkg --get-selections | awk '$2=="deinstall" {print $1}' &&
134         echo "really purge these [y/N]?" && read ans && [ "$ans" = "y" ] && dpkg --purge `dpkg --get-selections | awk '$2=="deinstall" {print $1}'` &&
135         echo "These are not at install:" && dpkg --get-selections | awk '$2!="install" {print $1}'
136
137 purge cruft that upgrade doesn't remove
138
139         apt-get remove --purge emacs22-common libxmlrpc-ruby libcap1 emacs22-nox emacs22-bin-common libvolume-id0 gcc-4.2-base ifenslave libopenssl-ruby1.8
140
141 re-init samhain
142
143 possibly reboot
144
145 re-enable exim, samhain
146
147         mv /etc/rc2.d/K02exim4 /etc/rc2.d/S02exim4
148         mv /etc/rc2.d/K02samhain /etc/rc2.d/S02samhain
149         env -i /etc/init.d/exim4 start
150         env -i /etc/init.d/samhain start
151
152         insserv
153
154 re-init samhain
155
156
157 ### Problems with CCISS
158
159 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.
160
161         cd /lib/udev/devices
162         /dev/MAKEDEV cciss