1 If you still have installed vmm 0.4.x you have to proceed this step first:  | 
         | 
     2   | 
         | 
     3     * upgrade your vmm installation to version 0.5.2  | 
         | 
     4   | 
         | 
     5   | 
         | 
     6 If you have installed vmm 0.5.2 you have to proceed this steps:  | 
         | 
     7   | 
         | 
     8     * stop Postfix and Dovecot  | 
         | 
     9     * backup/dump your database.  | 
         | 
    10     * backup/dump your database!  | 
         | 
    11   | 
         | 
    12     * start psql and connect to the appropriate database  | 
         | 
    13       (ex. psql mailsys vmm -W -h 127.0.0.1)  | 
         | 
    14     * update the database,  | 
         | 
    15       - Dovecot < 1.2.0  | 
         | 
    16 	\i vmm-x.y.z/pgsql/update_tables_0.5.x-0.6.pgsql  | 
         | 
    17       - Dovecot >= 1.2.0, 2.0.0 and 2.1.0  | 
         | 
    18 	\i vmm-x.y.z/pgsql/update_tables_0.5.x-0.6-dovecot-1.2.x.pgsql  | 
         | 
    19     * Set database permissions.  | 
         | 
    20       (see python set-permissions.py -h for details)  | 
         | 
    21       python vmm-x.y.z/pgsql/set-permissions.py -a -H 127.0.0.1 -U vmm  | 
         | 
    22   | 
         | 
    23   | 
         | 
    24     /!\ Important note /!\  | 
         | 
    25   | 
         | 
    26     All the views (dovecot_* and postfix_*) have been replaced by database  | 
         | 
    27     functions. So you have to adjust all your postfix/pgsql-*.cf files and  | 
         | 
    28     also your /etc/dovecot/dovecot-sql.conf or  | 
         | 
    29     /etc/dovecot/dovecot-sql.conf.ext.  | 
         | 
    30     (See the vmm-x.y.z postfix/pgsql-*.cf files and INSTALL/Configure.Dovecot_2  | 
         | 
    31     files for the new query.)  | 
         | 
    32   | 
         | 
    33   | 
         | 
    34     * execute upgrade.sh  | 
         | 
    35       This will also upgrade your vmm.cfg and apply the following modifications:  | 
         | 
    36   | 
         | 
    37 	     old			     new  | 
         | 
    38 	------------------------------------------------------------  | 
         | 
    39 	domdir.mode		->	domain.directory_mode  | 
         | 
    40 	domdir.delete		->	domain.delete_directory  | 
         | 
    41 	domdir.base		->	misc.base_directory  | 
         | 
    42 	domdir			->	_section domdir deleted_  | 
         | 
    43   | 
         | 
    44 	maildir.mode		->	account.directory_mode  | 
         | 
    45 	maildir.diskusage	->	account.disk_usage  | 
         | 
    46 	maildir.delete		->	account.delete_directory  | 
         | 
    47 	maildir.folders		->	mailbox.folders  | 
         | 
    48 	maildir.name		->	mailbox.root  | 
         | 
    49 	maildir			->	_section maildir deleted_  | 
         | 
    50   | 
         | 
    51 	misc.forcedel		->	domain.force_deletion  | 
         | 
    52 	misc.transport		->	domain.transport  | 
         | 
    53 	misc.passwdscheme	->	misc.password_scheme  | 
         | 
    54 	misc.dovecotvers	->	misc.dovecot_version (12 -> 1.2.11)  | 
         | 
    55 	misc.gid_mail		->	/dev/null  | 
         | 
    56   | 
         | 
    57 	services.smtp		->	domain.smtp  | 
         | 
    58 	services.pop3		->	domain.pop3  | 
         | 
    59 	services.imap		->	domain.imap  | 
         | 
    60 	services.sieve		->	domain.sieve  | 
         | 
    61 	services		->	_section services deleted_  | 
         | 
    62   | 
         | 
    63 	_NEW_.random_password	->	account.random_password  | 
         | 
    64 	_NEW_.password_length	->	account.password_length  | 
         | 
    65 	_NEW_.auto_postmaster	->	domain.auto_postmaster  | 
         | 
    66 	_NEW_.quota_bytes	->	domain.quota_bytes  | 
         | 
    67 	_NEW_.quota_messages	->	domain.quota_messages  | 
         | 
    68 	_NEW_.module		->	database.module  | 
         | 
    69 	_NEW_.port		->	database.port  | 
         | 
    70 	_NEW_.sslmode		->	database.sslmode  | 
         | 
    71 	_NEW_.format		->	mailbox.format  | 
         | 
    72 	_NEW_.crypt_blowfish_rounds ->	misc.crypt_blowfish_rounds  | 
         | 
    73 	_NEW_.crypt_sha256_rounds   ->	misc.crypt_sha256_rounds  | 
         | 
    74 	_NEW_.crypt_sha512_rounds   ->	misc.crypt_sha512_rounds  | 
         | 
    75   | 
         | 
    76 	config.done             ->	/dev/null  | 
         | 
    77 	config                  ->	_section config deleted_  | 
         | 
    78   | 
         | 
    79   | 
         | 
    80     * start Dovecot and Postfix again  | 
         | 
    81   | 
         | 
    82   | 
         | 
    83 If you have installed vmm 0.6.0 you have to proceed this steps:  | 
         | 
    84   | 
         | 
    85     * Database fixes:  | 
         | 
    86 	- Due to an error in usertransport's argument parsing, it is  | 
         | 
    87 	  possible that some users' transport-ID points to the erroneous  | 
         | 
    88 	  transport 'domain'. To fix that error in your database, execute  | 
         | 
    89 	  the following SQL statement:  | 
         | 
    90   | 
         | 
    91 	   UPDATE users SET tid = NULL  | 
         | 
    92    	    WHERE tid = (SELECT tid FROM transport WHERE transport = 'domain');  | 
         | 
    93   | 
         | 
    94 	- If you are using Dovecot < v1.2.0:  | 
         | 
    95 	  You have to replace the database FUNCTION dovecotpassword().  | 
         | 
    96 	  (see file: pgsql/create_tables.pgsql)  | 
         | 
    97 	  The service_set.ssid was selected unconditionally. This may cause  | 
         | 
    98 	  an empty result, which will make logins impossible.  | 
         | 
    99   | 
         | 
   100     * execute upgrade.sh  | 
         | 
   101   | 
         | 
   102   | 
         | 
   103 If you have installed vmm 0.6.1 you simply have to:  | 
         | 
   104   | 
         | 
   105     * execute upgrade.sh  | 
         | 
   106   | 
         | 
   107 else  | 
         | 
   108      * read INSTALL  | 
         |