UPGRADE: Added a note about upgrading from 0.6.1.
If you still have installed vmm 0.4.x you have to proceed this step first:
* upgrade your vmm installation to version 0.5.2
If you have installed vmm 0.5.2 you have to proceed this steps:
* stop Postfix and Dovecot
* backup/dump your database.
* backup/dump your database!
* start psql and connect to the appropriate database
(ex. psql mailsys vmm -W -h 127.0.0.1)
* update the database,
- Dovecot < 1.2.0
\i vmm-x.y.z/pgsql/update_tables_0.5.x-0.6.pgsql
- Dovecot >= 1.2.0, 2.0.0 and 2.1.0
\i vmm-x.y.z/pgsql/update_tables_0.5.x-0.6-dovecot-1.2.x.pgsql
* Set database permissions.
(see python set-permissions.py -h for details)
python vmm-x.y.z/pgsql/set-permissions.py -a -H 127.0.0.1 -U vmm
/!\ Important note /!\
All the views (dovecot_* and postfix_*) have been replaced by database
functions. So you have to adjust all your postfix/pgsql-*.cf files and
also your /etc/dovecot/dovecot-sql.conf or
/etc/dovecot/dovecot-sql.conf.ext.
(See the vmm-x.y.z postfix/pgsql-*.cf files and INSTALL/Configure.Dovecot_2
files for the new query.)
* execute upgrade.sh
This will also upgrade your vmm.cfg and apply the following modifications:
old new
------------------------------------------------------------
domdir.mode -> domain.directory_mode
domdir.delete -> domain.delete_directory
domdir.base -> misc.base_directory
domdir -> _section domdir deleted_
maildir.mode -> account.directory_mode
maildir.diskusage -> account.disk_usage
maildir.delete -> account.delete_directory
maildir.folders -> mailbox.folders
maildir.name -> mailbox.root
maildir -> _section maildir deleted_
misc.forcedel -> domain.force_deletion
misc.transport -> domain.transport
misc.passwdscheme -> misc.password_scheme
misc.dovecotvers -> misc.dovecot_version (12 -> 1.2.11)
misc.gid_mail -> /dev/null
services.smtp -> domain.smtp
services.pop3 -> domain.pop3
services.imap -> domain.imap
services.sieve -> domain.sieve
services -> _section services deleted_
_NEW_.random_password -> account.random_password
_NEW_.password_length -> account.password_length
_NEW_.auto_postmaster -> domain.auto_postmaster
_NEW_.quota_bytes -> domain.quota_bytes
_NEW_.quota_messages -> domain.quota_messages
_NEW_.module -> database.module
_NEW_.port -> database.port
_NEW_.sslmode -> database.sslmode
_NEW_.format -> mailbox.format
_NEW_.crypt_blowfish_rounds -> misc.crypt_blowfish_rounds
_NEW_.crypt_sha256_rounds -> misc.crypt_sha256_rounds
_NEW_.crypt_sha512_rounds -> misc.crypt_sha512_rounds
config.done -> /dev/null
config -> _section config deleted_
* start Dovecot and Postfix again
If you have installed vmm 0.6.0 you have to proceed this steps:
* Database fixes:
- Due to an error in usertransport's argument parsing, it is
possible that some users' transport-ID points to the erroneous
transport 'domain'. To fix that error in your database, execute
the following SQL statement:
UPDATE users SET tid = NULL
WHERE tid = (SELECT tid FROM transport WHERE transport = 'domain');
- If you are using Dovecot < v1.2.0:
You have to replace the database FUNCTION dovecotpassword().
(see file: pgsql/create_tables.pgsql)
The service_set.ssid was selected unconditionally. This may cause
an empty result, which will make logins impossible.
* execute upgrade.sh
If you have installed vmm 0.6.1 you simply have to:
* execute upgrade.sh
else
* read INSTALL