VMM: Unified parameter names and option names.
handler: Handler.user_delete() renamed parameter:
delete_home -> del_dir
The same as in Handler.domain_delete().
cli/subcommands: renamed userdelete's option
--delete-home -> --delete-directory
So people have to memorize only one option name. It also matches the
setting names of vmm.cfg.
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