Before explaining how to upgrade, please note, that you do this update on your productive server on your own risk. Debian Edu/Skolelinux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. Please read this chapter completly before attempting to upgrade.

More [http://www.debian.org/releases/stable/installmanual information about the Debian etch release] is available in its installation manual.

If you want to be sure that after the upgrade everything works like before , you should test the upgrade on a test server, which is configured the same way as your production server. There you can test the upgrade without risk and see if everything works as it should.

Also it might be wise to wait a bit and keep running sarge for some more weeks, so that others can test the upgrade, experience problems and document them here. Debian Edu sarge will receive continued support for some time in the future, but when Debian [http://www.debian.org/security/faq#lifespan ceases support for sarge], Debian Edu will (have to) do that too. This is expected to happen in April 2008.

Upgrades from Debian Edu sarge

Please read this chapter completly before you start upgrading your systems.

In case of problems you could also read the [http://www.debian.org/releases/stable/releasenotes releasenotes for Debian etch]. (Debian Edu/Skolelinux "2.0 Terra" installed a 2.6 kernel as default, but if you are running a 2.4 kernel, you should read the [http://www.debian.org/releases/stable/i386/release-notes/ch-information.en.html#s-upgrade-to-2.6 notes on upgrading from kernel 2.4 to 2.6] before you upgrade!)

Partioning scheme changed

The main problem upgrading from the sarge-based Release to Terra is that the Partition Scheme changed completly. The sarge-based Release has two volume Groups:

But the etch based release has only 1 Volume Group due to internal changes of the Installer.

The main problem is that the vg_system volumegroup is quite small since the data in this partition is mostly static. When trying the upgrade on a virtual machine with an 8GB harddrive, the upgrade failed since it was not possible to free more space on the vg_sytem. Please note that you should have about 1,5GB free space on /var and about 600MB free space on /usr. If this is not the case the upgrade will fail because of too little free space on the device.

Prepare the system

If you have enough space in the vg_system volumegroup but not in the lv_var partition, you have to resize this partition:

umount /var/spool/squid umount -fl /var }}}

mount /var/spool/squid /etc/init.d/squid start }}}

Now modify /etc/apt/sources.list to contain these lines

deb http://security.debian.org/ etch/updates main deb http://ftp.skolelinux.org/skolelinux etch local}}}

And start the upgrade with:

aptitude dist-upgrade }}}

Answers to debconf questions raising during upgrade

Here we can give you some hints, what you should answer to the debconf question during the upgrade. But please note: This upgrade HowTo is based on a very plain fresh installation of an mainserver + terminalserver.

Which questions exactly raise up in addition to the ones described here depends on what is additionally installed on your system. (Additionally to what is installed as default in the sarge based Debian Edu release). So if there are any questions which you don't know how to answer, don't hesitate to ask us at the mailinglist (debian-edu@lists.debian.org) or at IRC (irc.oftc.net): #debian-edu.

* Configure nagios-common.

* Configure console-data

* Configure openssh-server

* Configure systat

* Configure popularity-contest

* Configure libnss-ldap

  1. Change the prompt to: ldaps://ldap/

  2. Change the prompt to: dc=skole,dc=skolelinux,dc=no

  3. Use ldapversion 3 here
  4. Which account should root use for ldap lookups FIXME
  5. Which password should root use here FIXME

* Upgrade glibc now. Answer "yes".

* Restart Services. Answer "yes".

These are the debconf questions you will see if you have no additional packages installed.

Now the upgrade process will start to upgrade the packages.

Please note: You will be asked several times if you want to keep your old modified version of a configfile or if you want to get the latest. The default is to keep your modified one. Unless you really have modified something, please always choose: "Install the latest one".

The upgrade will fail with this error message: {{{Errors were encountered while processing:

E: Sub-process /usr/bin/dpkg returned an error code (1) }}} To fix this you have to edit these two files: /var/lib/dpkg/info/mozilla-firefox-locale-it.postrm and /var/lib/dpkg/info/mozilla-firefox-local-el.postrm and comment out in both the line containing: update-mozilla-firefox-chrome. Then restart the upgrade process with:

apt-get -f install

Now the upgrade continues:

* Several Modified configuration files (nagios)

Then the installation failes another time: {{{Errors were encountered while processing:

E: Sub-process /usr/bin/dpkg returned an error code (1) }}}

In order to fix this, rename this directory: /var/backups/dc=skole,dc=skolelinux,dc=no-2.2.23-8.ldapdb and since openldap now runs as user openldap (instead of as root) the permissions of the configuration files have to be changed:

{{{ chown -R openldap:openldap /etc/ldap/ apt-get -f install}}}

Then the installation should finish without an error. Since now many packages are not upgrades please restart the dist-upgrade process again with:

aptitude dist-upgrade

The next error raising up is this one: {{{Errors were encountered while processing:

E: Sub-process /usr/bin/dpkg returned an error code (1)}}}

Please remove the package: courier-ldap with

aptitude remove courier-ldap

and wait until it is finished.Then restart the dist-upgrade process again.

If you have only the default packages installed the upgrade process should now finish without raising more errors.

Problem upgrading bind

The only remaining upgrade issue is that the user of bind9 has changed, so you'll have to chown all bind-configuration files.

chown bind:root -R /etc/bind 

See [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=386791 #386791] for more information.

Samba groupmaps handeling changed

There has been a change in how samba handles groupmaps between sarge and etch. Samba in sarge handled groupmaps internally, so a unix group was also a samba group. In etch samba keeps groupmap information in the LDAP database. Unfortunatly this issue was discovered too late for our LDAP admin tool "lwat" to be aware of the situation.

When you upgrade your LDAP from a sarge installation, you must make sure to create the Domain Admins account, neccessary for correct samba domain operation. Create the Domain Admins account with the command:

/usr/bin/net groupmap add rid=512 unixgroup=admins \
             type=domain ntgroup="Domain Admins" \
             comment="All system administrators in the school"

If you want your Windows computers to be aware of what groups users are in, you must create the groupmaps in LDAP manually, this is explained in more detail in the [:DebianEdu/Documentation/Etch/HowTo/NetworkClients:HowTo/NetworkClients] chapter of this manual.

Upgrades from older Debian Edu / Skolelinux installations

Upgrades from the woody based Debian Edu / Skolelinux installation are not supported. Upgrade to the sarge based version first, a howto can be found at [http://wiki.debian.org/DebianEdu/HowTo/UpgradeFrom1.0]. Then upgrade to Terrra (etch-based Release).