Updating from SME 7.1.x or earlier

From SME Server
Revision as of 21:48, 19 August 2007 by Cactus (talk | contribs) (Wikified bugzilla link)
Jump to navigation Jump to search

There seem to be a lot of questions about updating to SME v7.2

This document will attempt to compile the various questions and answers in one place.

CD Update

  Note:
For this you need physical access to your server as SSH access is unavailable during CD updates.


  1. Insert the CD into your server and issue a reboot, follow the instructions presented to you on the server screen to update to SME Server 7.2.
  2. Reset yum to the new default configuration as described here: AddingSoftware#Restoring_Default_Yum_Repositories
  3. Reset other settings to new defaults as shown here: Updating_to_SME_7.2#Updating_Configuration_Database_with_New_Default_Values
  4. Perform a final yum update to obtain updates or patches released after the generation of the 7.2 iso.

Yum Update

  1. Install the latest yum support files: yum update smeserver-support smeserver-yum yum yum-plugin-fastest-mirror python-sqlite signal-event post-upgrade; signal-event reboot
  2. Clean your yum cache and update, forcing your system to use the default repositories yum clean all yum --disablerepo=* \ --enablerepo=base \ --enablerepo=updates \ --enablerepo=smeaddons \ --enablerepo=smeos \ --enablerepo=smeupdates \ update signal-event post-upgrade; signal-event reboot
  3. Reset yum to the new default configuration as described here: AddingSoftware#Restoring_Default_Yum_Repositories. For more information on why this is required for all users, see Ensuring the correct yum repository configuration.
  4. Reset other settings to new defaults as shown here: Updating_to_SME_7.2#Updating_Configuration_Database_with_New_Default_Values
  5. Perform a final yum update to obtain updates or patches released after the generation of the 7.2 CD image.

Cleanup Tasks

Ensuring the correct yum repository configuration

  Warning:
All SME systems installed from CD (or ISO image) prior to 7.2 need to have the yum repository configuration corrected!


The default yum repository configuration changed with the release of SME version 7.1.1 in order to allow installation of unmodified and non-conflicting CentOS packages directly from the CentOS repositories.

The SME update process does not reconfigure your yum repositories automatically in order to preserve any existing custom configurations you have created.

As a result:

  • Even if your server now says it is running SME 7.1.3 your system may not be up to date, and you may be missing vital updates from the CentOS repositories that will only be installed after correcting your yum repository configuration!
  • You will STILL need to correct your yum repository configuration even after updating from the 7.2 CD.
  • A fresh install from the SME 7.2 CD is the only instance in which you do not need to reconfigure your yum repositories.

Therefore, unless you are an expert with yum and have made specific sme-related customizations for some reason, you must reset your yum repository configuration to the SME defaults using the instructions found at AddingSoftware#Restoring_Default_Yum_Repositories or your yum updates will fail sooner or later.

All SME updates assume that the default repositories are enabled, and that any 3rd party repositories you may have configured are

  • disabled by default
  • created with appropriate "Exclude" paramaters
  • accessed manually when necessary using the yum --enablerepo=xxx syntax.

Updating Configuration Database with New Default Values

SME 7.2 includes different default values for some settings. This section tells you how to change those values.

Generic Instructions

Any configuration database item that has a "default" value can be set to the default value using

config delprop key prop
/etc/e-smith/events/actions/initialize-default-databases

Afterwards, you will need to re-expand the affected templates and restart the affected services:

signal-event post-upgrade; signal-event reboot

qpsmtpd LogLevel

SME 7.0 - 7.1.3 all defaulted to qpsmtpd LogLevel 8 (or 'debug') in order to make sure that the logfile contained all plugin results.

SME 7.2 now includes the qpsmtpd logterse plugin allowing us to reduce the LogLevel to 6 without loss of critical tracking information and simultaneously reducing log activity significantly.

config delprop qpsmtpd LogLevel
/etc/e-smith/events/actions/initialize-default-databases
signal-event email-update
svc -t /var/service/qpsmtpd
  Note:
If you are using Brian Read's spamfilter-stats-7.pl script to get daily emails of mail server activity, you should update to the latest version to ensure that you have support for the logterse plugin. The update is available from http://mirror.contribs.org/smeserver/contribs/bread/mailstats .

Installation instructions here: http://mirror.contribs.org/smeserver/contribs/bread/mailstats/install_howto.txt or here: http://wiki.contribs.org/Email_Statistics


RHSBL Servers

RHSBL or Right-Hand Side Black List: Search for known spam hosts by host name.

If you want to try out the RHSBL servers configured by default in SME 7.2:

config delprop qpsmtpd SBLList
config setprop qpsmtpd SBLList bogusmx.rfc-ignorant.org:multi.surbl.org:black.uribl.com\
:rhsbl.sorbs.net:bulk.rhs.mailpolice.com:fraud.rhs.mailpolice.com\
:porn.rhs.mailpolice.com:adult.rhs.mailpolice.com:ex.dnsbl.org\
:blackhole.securitysage.com
signal-event email-update

This will enable the following SBL servers for your system. Be sure to check them out to see if they are consistent with your policies before enabling them. Don't forget that RHSBL is disabled by default in SME!

DNSBL Servers

DNSBL (DNS Block List): Block spam hosts based on the IP address of the remote system.

If you want to try out the DNSBL servers configured by default in SME 7.2:

config delprop qpsmtpd RBLList
config setprop qpsmtpd RBLList bl.spamcop.net:combined.njabl.org:dnsbl.ahbl.org\
:dnsbl-1.uceprotect.net:dnsbl-2.uceprotect.net:list.dsbl.org\
:multihop.dsbl.org:psbl.surriel.com:zen.spamhaus.org
signal-event email-update

This will enable the following DNSBL servers for your system. Be sure to check them out before enabling them. (List updated 7/31/2007 to replace sbl-xbl.spamhaus.org with the new zen.spamhaus.org).

Don't forget that DNSBL is disabled by default in SME!

Known Issues or Problems

Webmail / Horde

If you have created custom templates designed to change the appearance of Webmail or Horde on your system, you may have to delete your existing custom templates, copy the new version of the same template fragments, and make your customizations on the new copies.

  Note:
Anyone that has a custom-template of 110AppRegistryHorde is going to be affected, because of the webroot detection changes in horde 3.1.4. It doesn't work as advertised. Copying the new 110AppRegistryHorde to templates-custom and then making your changes will allow you to customize your setup once again. See Bugzilla:3181.


IMAP subfolders do not show in IMP

  • The 'Folder' drop-down list in webmail only offers INBOX
  • /var/log/messages shows entries like:
...: PHP Notice:  Undefined index:  a in /home/httpd/html/horde/lib/Horde/IMAP/Tree.php on line 1275
...: PHP Notice:  Undefined index:  a in /home/httpd/html/horde/lib/Horde/IMAP/Tree.php on line 1438
...: PHP Notice:  Undefined index:  value in /home/httpd/html/horde/imp/folders.php on line 361

From Bugzilla:1701(Courtesy of Alain):

  1. rm /etc/e-smith/templates-custom/var/service/imap/config/IMAP_CAPABILITY
  2. signal-event post-upgrade; signal-event reboot (note: signal-event email-update is not enough)

Remote Administration using SSH Tunnels

Prior versions of SME Server allowed you to access server-manager using http://localhost:980/server-manager after establishing an ssh tunnel on port 980 to your SME server.

You could also establish a tunnel from local port xxxx to port 443 on your SME server, then access server-manager at https://localhost:xxxx/server-manager

Both of these options will now generate a page not found error after entering your admin username & password, as the login page automatically redirects both of these to "https://localhost/server-manager".

You can work-around this issue in one of 3 ways:

  1. Tunnel port 443, then login at https://localhost/server-manager
  2. Tunnel whatever port you used previously, get the error message, then manually return to your original URL
  3. Enable PPTP on your SME server and use a PPTP VPN for remote access to access server-manager.

Missing email folders after upgrade

This link explains why you may appear to be missing your mail folders after an upgrade: After I upgrade my SMESERVER, my email folders have disappeared when using IMAP

10fix_privilege_tables in message log

These messages are generated by /usr/share/mysql/mysql_fix_privilege_tables.sql. The script itself says:

You can safely ignore all 'Duplicate column' and 'Unknown column' errors
because these just mean that your tables are already up to date.
This script is safe to run even if your tables are already up to date!

See also Bugzilla:3223.