SAC:Debian System Administration

Take this as a start and try to migrate related content here.

= Upgrading OSGeo Debian6 (Squeeze) VM's to Debian7 (Wheezy) = The procedure to upgrade to Debian8 or Debian9 is pretty similar.

NOTE
Some of the "aptitude"-commands suggest removal of numerous packages.

Do not accept these suggestions but instead ask Aptitude for better ones, which, in most cases, replace removal of a package by upgrading.

If you can't avoid removing packages - installing/upgrading "apt-transport-https" doesn't work without -, then make sure you understand which ones are being removed. Make a note and check, which ones require later re-installation (apt-listchanges) and which ones are obsolete.

Procedure

 * First, make sure required Debian keys are in place to pull package lists

~# aptitude install debian-archive-keyring


 * Upgrade basic foundation to prevent later version mismatches

~# aptitude install libc6 dpkg locales locales-all


 * Upgrade encryption

~# aptitude install openssl openssl-blacklist openssl-blacklist-extra openssh-client openssh-server openssh-blacklist openssh-blacklist-extra


 * Be future-proof, will upgrade quite a few dependencies

~# aptitude install apt apt-transport-https


 * These may get lost when introducing "apt-transport-https"

~# aptitude install aptitude apt-listchanges libapt-pkg-perl python-apt


 * Estimate, if there'll be sufficient disk space after downloading all upgrade packages

~# aptitude dist-upgrade -d


 * Finally, upgrade

~# aptitude dist-upgrade


 * Take extra care for having a working GRUB on OSGeo's VM's

~# aptitude install grub-legacy

~# grub-install --recheck /dev/vda

~# update-grub

Software: Trac

 * It is not mandatory to upgrade Trac, but we need to make it available to the default Python. Unpack current Trac stable release into temp directory and install:

/tmp/Trac-1.2.2# python ./setup.py install --prefix=/usr/local


 * Do likewise with the following Trac Plugins:

/tmp/tracldapemailresolverplugin# python setup.py install

/tmp/tracstats-master# python setup.py install

/tmp/spam-filter# python setup.py install

/tmp/spam-filter/Doxygen# python setup.py install

/tmp/sectioneditplugin/1.2# python setup.py install

/tmp/sectioneditplugin/tocmacro/0.11# python setup.py install

Software: PostgreSQL
~# aptitude install postgresql-10 postgresql-client-10 postgresql-contrib
 * While we're at it, upgrading PostgreSQL is usually a good idea as long as PostGIS isn't being used.

~# pg_dropcluster --stop 10 main

~# pg_upgradecluster 9.5 main

Misc

 * Not directly related to the upgrade, but required to let "awstats" read Apache log files (unless someone messes with their permissions):

~# adduser www-data adm

Cleanup

 * Remove python2.5, libdb4.8 and related packages.

Remove /usr/local/lib/python2.5/


 * Check for old GCC packages as well as packages containing "squeeze" in the version tag and remove appropriately.


 * For backwards compatibility reasons, a ancient "sudo" package was kept on some VM's. Please revise "/etc/apt/preferences.d/sudo.pref", preferrably remove it and port the sudoers file accordingly.