New: upgrade/0-upgrade.iredmail.0.8.1-0.8.2.md.

This commit is contained in:
Zhang Huangbin 2014-12-06 19:42:05 +08:00
parent e8d7ed7ae2
commit 1645e2d18b
8 changed files with 572 additions and 13 deletions

View File

@ -8,8 +8,8 @@ We're migrating [old wiki documents](http://www.iredmail.org/wiki) to Markdown f
* [Setup DNS records for your iRedMail server](https://bitbucket.org/zhb/docs.iredmail.org/src/default/installation/setup.dns.md)
* [Perform silent/unattended iRedMail installation](https://bitbucket.org/zhb/docs.iredmail.org/src/default/installation/unattended.iredmail.installation.md)
# Release notes and upgrade tutorials
* [iRedMail: release notes and upgrade tutorials](https://bitbucket.org/zhb/docs.iredmail.org/src/default/upgrade/1-iredmail.releases.md)
* [iRedAdmin-Pro: release notes and upgrade tutorial](https://bitbucket.org/zhb/docs.iredmail.org/src/default/upgrade/2-iredadmin-pro.releases.md)
* [iRedMail release notes and upgrade tutorials](https://bitbucket.org/zhb/docs.iredmail.org/src/default/upgrade/1-iredmail.releases.md)
* [iRedAdmin-Pro release notes and upgrade tutorial](https://bitbucket.org/zhb/docs.iredmail.org/src/default/upgrade/2-iredadmin-pro.releases.md)
# Configure mail client applications
* [Configure Thunderbird as mail client (POP3/IMAP, SMTP and global ldap address book)](https://bitbucket.org/zhb/docs.iredmail.org/src/default/mua/configure.thunderbird.md)
# How to

View File

@ -21,8 +21,8 @@
</ul>
<h3 id="release-notes-and-upgrade-tutorials">Release notes and upgrade tutorials</h3>
<ul>
<li><a href="iredmail.releases.html">iRedMail: release notes and upgrade tutorials</a></li>
<li><a href="iredadmin-pro.releases.html">iRedAdmin-Pro: release notes and upgrade tutorial</a></li>
<li><a href="iredmail.releases.html">iRedMail release notes and upgrade tutorials</a></li>
<li><a href="iredadmin-pro.releases.html">iRedAdmin-Pro release notes and upgrade tutorial</a></li>
</ul>
<h3 id="configure-mail-client-applications">Configure mail client applications</h3>
<ul>

View File

@ -1,7 +1,7 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>iRedAdmin-Pro: release notes and upgrade tutorial</title>
<title>iRedAdmin-Pro release notes and upgrade tutorial</title>
<link href="./css/markdown.css" rel="stylesheet"></head>
</head>
<body>
@ -10,10 +10,10 @@
<a href="http://www.iredmail.org" target="_blank">iRedMail web site</a>
// <a href="./index.html">Document Index</a>
</div><h1 id="iredadmin-pro-release-notes-and-upgrade-tutorial">iRedAdmin-Pro: release notes and upgrade tutorial</h1>
</div><h1 id="iredadmin-pro-release-notes-and-upgrade-tutorial">iRedAdmin-Pro release notes and upgrade tutorial</h1>
<div class="toc">
<ul>
<li><a href="#iredadmin-pro-release-notes-and-upgrade-tutorial">iRedAdmin-Pro: release notes and upgrade tutorial</a><ul>
<li><a href="#iredadmin-pro-release-notes-and-upgrade-tutorial">iRedAdmin-Pro release notes and upgrade tutorial</a><ul>
<li><a href="#iredadmin-pro-ldap-for-openldap-backend">iRedAdmin-Pro-LDAP (for OpenLDAP backend)</a></li>
<li><a href="#iredadmin-pro-mysql-for-mysqlmariadb-backend">iRedAdmin-Pro-MySQL (for MySQL/MariaDB backend)</a></li>
<li><a href="#iredadmin-pro-pgsql-for-postgresql-backend">iRedAdmin-Pro-PGSQL (for PostgreSQL backend)</a></li>

View File

@ -1,7 +1,7 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>iRedMail: release notes and upgrade tutorials</title>
<title>iRedMail release notes and upgrade tutorials</title>
<link href="./css/markdown.css" rel="stylesheet"></head>
</head>
<body>
@ -10,7 +10,7 @@
<a href="http://www.iredmail.org" target="_blank">iRedMail web site</a>
// <a href="./index.html">Document Index</a>
</div><h1 id="iredmail-release-notes-and-upgrade-tutorials">iRedMail: release notes and upgrade tutorials</h1>
</div><h1 id="iredmail-release-notes-and-upgrade-tutorials">iRedMail release notes and upgrade tutorials</h1>
<p>Usually, upgrading iRedMail is just updating some config files to achieve new
features or fix bugs, you do <strong>NOT</strong> need to download the latest iRedMail and
run the script.</p>
@ -26,7 +26,7 @@ there's an alternative solution: <a href="./migrate.to.new.iredmail.server.html"
<li><a href="http://www.iredmail.org/forum/topic5167-news-announcements-bug-fixes-iredmail085-has-been-released.html">0.8.5</a>, Jul 16, 2013. <a href="./upgrade.iredmail.0.8.4-0.8.5.html">Upgrade from iRedMail-0.8.4</a></li>
<li><a href="http://www.iredmail.org/forum/topic4646-news-announcements-bug-fixes-iredmail084-has-been-released.html">0.8.4</a>, Mar 26, 2013. <a href="./upgrade.iredmail.0.8.3-0.8.4.html">Upgrade from iRedMail-0.8.3</a></li>
<li><a href="http://www.iredmail.org/forum/topic4016-news-announcements-bug-fixes-iredmail083-has-been-released.html">0.8.3</a>, Oct 13, 2012. <a href="./upgrade.iredmail.0.8.2-0.8.3.html">Upgrade from iRedMail-0.8.2</a></li>
<li><a href="http://www.iredmail.org/forum/topic3913-news-announcements-bug-fixes-iredmail082-has-been-released.html">0.8.2</a>, Sep 19, 2012. <a href="http://www.iredmail.org/wiki/index.php?title=Upgrade/iRedMail/0.8.1-0.8.2">Upgrade from iRedMail-0.8.1</a></li>
<li><a href="http://www.iredmail.org/forum/topic3913-news-announcements-bug-fixes-iredmail082-has-been-released.html">0.8.2</a>, Sep 19, 2012. <a href="./upgrade.iredmail.0.8.1-0.8.2.html">Upgrade from iRedMail-0.8.1</a></li>
<li><a href="http://www.iredmail.org/forum/topic3499-news-announcements-bug-fixes-iredmail081-has-been-released.html">0.8.1</a>, Jun 8, 2012. <a href="http://www.iredmail.org/wiki/index.php?title=Upgrade/iRedMail/0.8.0-0.8.1">Upgrade from iRedMail-0.8.0</a></li>
<li><a href="http://www.iredmail.org/forum/topic3345.html">0.8.0</a>, May 10, 2012. <a href="http://www.iredmail.org/wiki/index.php?title=Upgrade/iRedMail/0.7.4-0.8.0">Upgrade from iRedMail-0.7.4</a></li>
<li><a href="http://www.iredmail.org/forum/topic2816-iredmail074-has-been-released.html">0.7.4</a>, Jan 9, 2012. <a href="http://www.iredmail.org/wiki/index.php?title=Upgrade/iRedMail/0.7.3-0.7.4">Upgrade from iRedMail-0.7.3</a></li>

View File

@ -0,0 +1,284 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Upgrade iRedMail from 0.8.1 to 0.8.2</title>
<link href="./css/markdown.css" rel="stylesheet"></head>
</head>
<body>
<div id="navigation">
<a href="http://www.iredmail.org" target="_blank">iRedMail web site</a>
// <a href="./index.html">Document Index</a>
</div><h1 id="upgrade-iredmail-from-081-to-082">Upgrade iRedMail from 0.8.1 to 0.8.2</h1>
<div class="toc">
<ul>
<li><a href="#upgrade-iredmail-from-081-to-082">Upgrade iRedMail from 0.8.1 to 0.8.2</a><ul>
<li><a href="#changelog">ChangeLog</a></li>
<li><a href="#general-all-backends-should-apply-these-upgrade-steps">General (All backends should apply these upgrade steps)</a><ul>
<li><a href="#update-etciredmail-release-with-iredmail-version-number">Update /etc/iredmail-release with iRedMail version number</a></li>
<li><a href="#upgrade-roundcube-webmail-to-the-latest-stable-release">Upgrade Roundcube webmail to the latest stable release</a></li>
<li><a href="#upgrade-iredapd-postfix-policy-server-to-the-latest-stable-release">Upgrade iRedAPD (Postfix policy server) to the latest stable release</a></li>
<li><a href="#upgrade-iredadmin-open-source-edition-to-the-latest-stable-release">Upgrade iRedAdmin (open source edition) to the latest stable release</a></li>
<li><a href="#remove-improper-spamassassin-spf-score-settings">Remove improper SpamAssassin SPF score settings</a></li>
<li><a href="#add-missing-log-rotate-settings-for-dovecot-log-files-on-openbsd">Add missing log rotate settings for Dovecot log files on OpenBSD</a></li>
<li><a href="#add-missing-log-rotate-settings-for-dovecot-log-files-on-freebsd">Add missing log rotate settings for Dovecot log files on FreeBSD</a></li>
<li><a href="#fix-incorrect-rotate-setting-for-iredapd-log-file-on-freebsd">Fix incorrect rotate setting for iRedAPD log file on FreeBSD</a></li>
</ul>
</li>
<li><a href="#openldap-backend-special">OpenLDAP backend special</a><ul>
<li><a href="#use-the-newest-schema-file">Use the newest schema file</a></li>
<li><a href="#return-correct-maildir-path-while-using-virtual-transport">Return correct maildir path while using virtual transport</a></li>
<li><a href="#add-checkpoint-setting-in-slapdconf-used-for-bdb-recovery">Add checkpoint setting in slapd.conf, used for BDB recovery</a></li>
</ul>
</li>
<li><a href="#mysql-backend-special">MySQL backend special</a><ul>
<li><a href="#add-3-new-columns-required-by-iredadmin">Add 3 new columns required by iRedAdmin</a></li>
</ul>
</li>
<li><a href="#postgresql-backend-special">PostgreSQL backend special</a><ul>
<li><a href="#add-3-new-columns-required-by-iredadmin_1">Add 3 new columns required by iRedAdmin</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<h2 id="changelog">ChangeLog</h2>
<ul>
<li>2012-09-21: Add link of upgrading iRedAdmin open source edition.</li>
<li>2012-09-21: Add link of upgrading iRedAPD.</li>
<li>2012-09-21: Add link of upgrading Roundcube webmail.</li>
<li>2012-09-21: [LDAP] checkpoint setting must be added after line "suffix dc=xxx,dc=xxx". Thanks Jonathan Vomacka <jjvomacka _at_ gmail.com> for the report.</li>
<li>2012-09-08: Add SQL changes for MySQL and PostgreSQL backend, 3 new columns are required: mailbox.isadmin, mailbox.isglobaladmin, mailbox.language.</li>
<li>2012-09-08: Remove SpamAssassin score setting: SPF_PASS, SPF_FAIL.</li>
<li>2012-06-22: [LDAP] Add checkpoint setting in slapd.conf, used for BDB recovery</li>
<li>2012-06-22: [LDAP] Return correct maildir path while using virtual transport.</li>
<li>2012-06-21: Add missing log rotate setting for Dovecot log files on OpenBSD and FreeBSD.</li>
<li>2012-06-17: [LDAP] Use the latest iRedMail LDAP schema file.</li>
<li>2012-06-14: Fix incorrect log rotate setting for iRedAPD on FreeBSD.</li>
</ul>
<h2 id="general-all-backends-should-apply-these-upgrade-steps">General (All backends should apply these upgrade steps)</h2>
<h3 id="update-etciredmail-release-with-iredmail-version-number">Update /etc/iredmail-release with iRedMail version number</h3>
<p>iRedMail stores the release version in <code>/etc/iredmail-release</code> after
installation, it's recommended to update this file after you upgraded iRedMail,
so that you can know which version of iRedMail you're running. For example:</p>
<pre><code># File: /etc/iredmail-release
0.8.2
</code></pre>
<h3 id="upgrade-roundcube-webmail-to-the-latest-stable-release">Upgrade Roundcube webmail to the latest stable release</h3>
<p>Please follow Roundcube official tutorial to upgrade Roundcube webmail to the
latest stable release immediately: <a href="http://trac.roundcube.net/wiki/Howto_Upgrade">How to upgrade Roundcube</a></p>
<h3 id="upgrade-iredapd-postfix-policy-server-to-the-latest-stable-release">Upgrade iRedAPD (Postfix policy server) to the latest stable release</h3>
<p>Please follow below tutorial to upgrade iRedAPD to the latest stable release:
<a href="http://www.iredmail.org/wiki/index.php?title=IRedMail/FAQ/Upgrade.iRedAPD">How to upgrade iRedAPD-1.4.1 or later versions to the latest stable release</a></p>
<h3 id="upgrade-iredadmin-open-source-edition-to-the-latest-stable-release">Upgrade iRedAdmin (open source edition) to the latest stable release</h3>
<p>Please follow this tutorial to upgrade iRedAdmin open source edition to the
latest stable release: <a href="./migrate.or.upgrade.iredadmin.html">Upgrade iRedAdmin to the latest stable release</a></p>
<h3 id="remove-improper-spamassassin-spf-score-settings">Remove improper SpamAssassin SPF score settings</h3>
<p>Please remove below two settings in SpamAssassin config file:</p>
<pre><code>* On Linux and OpenBSD, it's `/etc/mail/spamassassin/local.cf`.
* On FreeBSD, it's `/usr/local/etc/mail/spamassassin/local.cf`.
</code></pre>
<pre><code># Part of file: etc/mail/spamassassin/local.cf
score SPF_PASS -10.000
score SPF_FAIL 5.00
</code></pre>
<h3 id="add-missing-log-rotate-settings-for-dovecot-log-files-on-openbsd">Add missing log rotate settings for Dovecot log files on OpenBSD</h3>
<p><strong>NOTE</strong>: This is only applicable to OpenBSD.</p>
<p>Please add below two lines in <code>/etc/newsyslog.conf</code> to rotate Dovecot log
files: <code>/var/log/dovecot.log</code>, <code>/var/log/sieve.log</code>.</p>
<pre><code># Part of file: /etc/newsyslog.conf
/var/log/dovecot.log vmail:vmail 600 7 * 24 Z &quot;doveadm log reopen&quot;
/var/log/sieve.log vmail:vmail 600 7 * 24 Z &quot;doveadm log reopen&quot;
</code></pre>
<h3 id="add-missing-log-rotate-settings-for-dovecot-log-files-on-freebsd">Add missing log rotate settings for Dovecot log files on FreeBSD</h3>
<p><strong>NOTE</strong>: This fix is only applicable to FreeBSD.</p>
<p>Please add below two lines in <code>/etc/newsyslog.conf</code> to rotate Dovecot log
files: <code>/var/log/dovecot.log</code>, <code>/var/log/sieve.log</code>.</p>
<pre><code># Part of file: /etc/newsyslog.conf
/var/log/dovecot.log vmail:vmail 600 7 * 24 Z /var/run/dovecot/master.pid
/var/log/sieve.log vmail:vmail 600 7 * 24 Z /var/run/dovecot/master.pid
</code></pre>
<h3 id="fix-incorrect-rotate-setting-for-iredapd-log-file-on-freebsd">Fix incorrect rotate setting for iRedAPD log file on FreeBSD</h3>
<p><strong>NOTE</strong>: This fix is only applicable to FreeBSD.</p>
<p>iRedMail-0.8.1 defines incorrectly path of iRedAPD PID file in
<code>/etc/newsyslog.conf</code>, so please fix it manually by editing <code>/etc/newsyslog.conf</code>.</p>
<ul>
<li>Make sure you have below line in <code>/etc/newsyslog.conf</code>:</li>
</ul>
<pre><code># Part of file: /etc/newsyslog.conf
/var/log/iredapd.log root:wheel 640 7 * 24 Z /var/run/iredapd.pid
</code></pre>
<p>Be careful, don't use quotes around path of pid file.</p>
<ul>
<li>Then restart syslogd service:</li>
</ul>
<pre><code># /etc/rc.d/syslogd restart
</code></pre>
<h2 id="openldap-backend-special">OpenLDAP backend special</h2>
<h3 id="use-the-newest-schema-file">Use the newest schema file</h3>
<p>Changes in the newest LDAP schema file shipped in iRedMail-0.8.2:</p>
<ul>
<li>It allows normal mail user to use attribute <code>domainGlobalAdmin</code>. With this
attribute, you can mark mail user as a global admin to manage mail accounts
with iRedAdmin-Pro.</li>
<li>It allows mail list to use <code>shadowAddress</code> for alias domain support.</li>
</ul>
<p>To use the newest iRedMail ldap schem file, we have to:</p>
<ul>
<li>Download the newest iRedMail ldap schema file</li>
<li>Copy old ldap schema file as a backup copy</li>
<li>Replace the old one</li>
<li>Restart OpenLDAP service.</li>
</ul>
<p>Here we go:</p>
<ul>
<li>On RHEL/CentOS/Scientific Linux (both release 5.x and 6.x), openSUSE, Gentoo, OpenBSD:</li>
</ul>
<pre><code># cd /tmp
# wget https://bitbucket.org/zhb/iredmail/raw/a4d8b730d147/iRedMail/samples/iredmail.schema
# cd /etc/openldap/schema/
# cp iredmail.schema iredmail.schema.bak
# cp -f /tmp/iredmail.schema /etc/openldap/schema/
# /etc/init.d/slapd restart # &lt;-- Or: /etc/init.d/ldap restart
</code></pre>
<ul>
<li>On Debian/Ubuntu:</li>
</ul>
<pre><code># cd /tmp
# wget https://bitbucket.org/zhb/iredmail/raw/a4d8b730d147/iRedMail/samples/iredmail.schema
# cd /etc/ldap/schema/
# cp iredmail.schema iredmail.schema.bak
# cp -f /tmp/iredmail.schema /etc/ldap/schema/
# /etc/init.d/slapd restart
</code></pre>
<ul>
<li>On FreeBSD:</li>
</ul>
<pre><code># cd /tmp
# wget https://bitbucket.org/zhb/iredmail/raw/a4d8b730d147/iRedMail/samples/iredmail.schema
# cd /usr/local/etc/ldap/schema/
# cp iredmail.schema iredmail.schema.bak
# cp -f /tmp/iredmail.schema /usr/local/etc/openldap/schema/
# /etc/init.d/slapd restart
</code></pre>
<h3 id="return-correct-maildir-path-while-using-virtual-transport">Return correct maildir path while using <code>virtual</code> transport</h3>
<p>Postfix setting <code>virtual_mailbox_maps</code> doesn't return correct maildir path.
Usually, this is fine because iRedMail uses transport program provided by
Dovecot (command name <code>deliver</code>). But if you want to use Postfix built-in
transport program <code>virtual</code>, mails will be delivered to incorrect path.</p>
<p>To fix it, please open <code>/etc/postfix/ldap/virtual_mailbox_maps.cf</code> (on Linux
and OpenBSD) or <code>/usr/local/etc/postfix/ldap/virtual_mailbox_maps.cf</code> (on
FreeBSD), append parameter <code>result_format = %s/Maildir/</code> line after line
<code>result_attribute= mailMessageStore</code>.</p>
<pre><code># Part of file: etc/postfix/ldap/virtual_mailbox_maps.cf
result_attribute = mailMessageStore
result_format = %s/Maildir/
</code></pre>
<p>Restarting Postfix service is required.</p>
<h3 id="add-checkpoint-setting-in-slapdconf-used-for-bdb-recovery">Add checkpoint setting in slapd.conf, used for BDB recovery</h3>
<p>Add below lines in your OpenLDAP config file, <code>slapd.conf</code>, after the line
<code>suffix dc=xxx,dc=xxx</code>. Please read comments below for more details about what
it's used for.</p>
<pre><code>* On RHEL/CentOS/Scientific Linux, openSUSE, Gentoo, OpenBSD, it's `/etc/openldap/slapd.conf`.
* On Debian, Ubuntu, it's `/etc/ldap/slapd.conf`.
* On FreeBSD, it's `/usr/local/etc/openldap/slapd.conf`.
</code></pre>
<pre><code># Part of file: slapd.conf
# This directive specifies how often to checkpoint the BDB transaction log.
# A checkpoint operation flushes the database buffers to disk and writes a
# checkpoint record in the log. The checkpoint will occur if either &lt;kbyte&gt;
# data has been written or &lt;min&gt; minutes have passed since the last checkpoint.
# Both arguments default to zero, in which case they are ignored. When the
# &lt;min&gt; argument is non-zero, an internal task will run every &lt;min&gt; minutes
# to perform the checkpoint. See the Berkeley DB reference guide for more
# details.
#
# OpenLDAP default is NO CHECKPOINTING.
#
# whenever 128kb data bytes written or 5 minutes has elapsed
checkpoint 128 5
</code></pre>
<p>Restarting OpenLDAP service is required.</p>
<h2 id="mysql-backend-special">MySQL backend special</h2>
<h3 id="add-3-new-columns-required-by-iredadmin">Add 3 new columns required by iRedAdmin</h3>
<p>New version of iRedAdmin (both open source edition and iRedAdmin-Pro) requires
three new columns: <code>mailbox.isadmin</code>, <code>mailbox.isglobaladmin</code>,
<code>mailbox.language</code>.</p>
<pre><code>* With `mailbox.isadmin=1`, this user is a domain admin.
* With `mailbox.isadmin=1` AND `mailbox.isglobaladmin=1`, this user is a
global admin.
* Column `mailbox.language` is used to store short code of language. e.g.
de_DE for German, cs_CZ for Czech.
</code></pre>
<p>Please login to MySQL server as root user, execute SQL commands to add required
columns and indexes.</p>
<pre><code># mysql -uroot -p
mysql&gt; USE vmail;
mysql&gt; ALTER TABLE mailbox ADD COLUMN isadmin TINYINT(1) NOT NULL DEFAULT 0;
mysql&gt; ALTER TABLE mailbox ADD COLUMN isglobaladmin TINYINT(1) NOT NULL DEFAULT 0;
mysql&gt; ALTER TABLE mailbox ADD COLUMN language VARCHAR(5) NOT NULL DEFAULT 'en_US';
mysql&gt; ALTER TABLE mailbox ADD INDEX (isadmin);
mysql&gt; ALTER TABLE mailbox ADD INDEX (isglobaladmin);
</code></pre>
<h2 id="postgresql-backend-special">PostgreSQL backend special</h2>
<h3 id="add-3-new-columns-required-by-iredadmin_1">Add 3 new columns required by iRedAdmin</h3>
<p>New version of iRedAdmin (both open source edition and iRedAdmin-Pro) requires
three new columns: <code>mailbox.isadmin</code>, <code>mailbox.isglobaladmin</code>,
<code>mailbox.language</code>.</p>
<pre><code>* With `mailbox.isadmin=1`, this user becomes a domain admin.
* With `mailbox.isadmin=1` AND `mailbox.isglobaladmin=1`, this user becomes
a global admin.
* Column `mailbox.language` is used to store short code of language. e.g.
de_DE for German, cs_CZ for Czech.
</code></pre>
<p>Please switch to PostgreSQL daemon user, then execute SQL commands to add required columns and indexes:</p>
<pre><code>* On Linux, PostgreSQL daemon user is `postgres`.
* On FreeBSD, PostgreSQL daemon user is `pgsql`.
* On OpenBSD, PostgreSQL daemon user is `_postgresql`.
</code></pre>
<pre><code># su - postgres
$ psql -d vmail
sql&gt; ALTER TABLE mailbox ADD COLUMN isadmin INT2 NOT NULL DEFAULT 0;
sql&gt; ALTER TABLE mailbox ADD COLUMN isglobaladmin INT2 NOT NULL DEFAULT 0;
sql&gt; ALTER TABLE mailbox ADD COLUMN language VARCHAR(5) NOT NULL DEFAULT 'en_US';
sql&gt; CREATE INDEX idx_mailbox_isadmin ON mailbox (isadmin);
sql&gt; CREATE INDEX idx_mailbox_isglobaladmin ON mailbox (isglobaladmin);
</code></pre><p style="text-align: center; color: grey;">Document published under a <a href="http://creativecommons.org/licenses/by-nd/3.0/us/" target="_blank">CC BY-ND 3.0</a> license. If you found something wrong, please do <a href="http://www.iredmail.org/contact.html">contact us</a> to fix it.<!-- Google Analytics -->
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
try {
var pageTracker = _gat._getTracker("UA-3293801-14");
pageTracker._trackPageview();
} catch(err) {}
</script>
</body></html>

View File

@ -0,0 +1,275 @@
# Upgrade iRedMail from 0.8.1 to 0.8.2
[TOC]
## ChangeLog
* 2012-09-21: Add link of upgrading iRedAdmin open source edition.
* 2012-09-21: Add link of upgrading iRedAPD.
* 2012-09-21: Add link of upgrading Roundcube webmail.
* 2012-09-21: [LDAP] checkpoint setting must be added after line "suffix dc=xxx,dc=xxx". Thanks Jonathan Vomacka <jjvomacka _at_ gmail.com> for the report.
* 2012-09-08: Add SQL changes for MySQL and PostgreSQL backend, 3 new columns are required: mailbox.isadmin, mailbox.isglobaladmin, mailbox.language.
* 2012-09-08: Remove SpamAssassin score setting: SPF_PASS, SPF_FAIL.
* 2012-06-22: [LDAP] Add checkpoint setting in slapd.conf, used for BDB recovery
* 2012-06-22: [LDAP] Return correct maildir path while using virtual transport.
* 2012-06-21: Add missing log rotate setting for Dovecot log files on OpenBSD and FreeBSD.
* 2012-06-17: [LDAP] Use the latest iRedMail LDAP schema file.
* 2012-06-14: Fix incorrect log rotate setting for iRedAPD on FreeBSD.
## General (All backends should apply these upgrade steps)
### Update /etc/iredmail-release with iRedMail version number
iRedMail stores the release version in `/etc/iredmail-release` after
installation, it's recommended to update this file after you upgraded iRedMail,
so that you can know which version of iRedMail you're running. For example:
```
# File: /etc/iredmail-release
0.8.2
```
### Upgrade Roundcube webmail to the latest stable release
Please follow Roundcube official tutorial to upgrade Roundcube webmail to the
latest stable release immediately: [How to upgrade Roundcube](http://trac.roundcube.net/wiki/Howto_Upgrade)
### Upgrade iRedAPD (Postfix policy server) to the latest stable release
Please follow below tutorial to upgrade iRedAPD to the latest stable release:
[How to upgrade iRedAPD-1.4.1 or later versions to the latest stable release](http://www.iredmail.org/wiki/index.php?title=IRedMail/FAQ/Upgrade.iRedAPD)
### Upgrade iRedAdmin (open source edition) to the latest stable release
Please follow this tutorial to upgrade iRedAdmin open source edition to the
latest stable release: [Upgrade iRedAdmin to the latest stable release](./migrate.or.upgrade.iredadmin.html)
### Remove improper SpamAssassin SPF score settings
Please remove below two settings in SpamAssassin config file:
* On Linux and OpenBSD, it's `/etc/mail/spamassassin/local.cf`.
* On FreeBSD, it's `/usr/local/etc/mail/spamassassin/local.cf`.
```
# Part of file: etc/mail/spamassassin/local.cf
score SPF_PASS -10.000
score SPF_FAIL 5.00
```
### Add missing log rotate settings for Dovecot log files on OpenBSD
__NOTE__: This is only applicable to OpenBSD.
Please add below two lines in `/etc/newsyslog.conf` to rotate Dovecot log
files: `/var/log/dovecot.log`, `/var/log/sieve.log`.
```
# Part of file: /etc/newsyslog.conf
/var/log/dovecot.log vmail:vmail 600 7 * 24 Z "doveadm log reopen"
/var/log/sieve.log vmail:vmail 600 7 * 24 Z "doveadm log reopen"
```
### Add missing log rotate settings for Dovecot log files on FreeBSD
__NOTE__: This fix is only applicable to FreeBSD.
Please add below two lines in `/etc/newsyslog.conf` to rotate Dovecot log
files: `/var/log/dovecot.log`, `/var/log/sieve.log`.
```
# Part of file: /etc/newsyslog.conf
/var/log/dovecot.log vmail:vmail 600 7 * 24 Z /var/run/dovecot/master.pid
/var/log/sieve.log vmail:vmail 600 7 * 24 Z /var/run/dovecot/master.pid
```
### Fix incorrect rotate setting for iRedAPD log file on FreeBSD
__NOTE__: This fix is only applicable to FreeBSD.
iRedMail-0.8.1 defines incorrectly path of iRedAPD PID file in
`/etc/newsyslog.conf`, so please fix it manually by editing `/etc/newsyslog.conf`.
* Make sure you have below line in `/etc/newsyslog.conf`:
```
# Part of file: /etc/newsyslog.conf
/var/log/iredapd.log root:wheel 640 7 * 24 Z /var/run/iredapd.pid
```
Be careful, don't use quotes around path of pid file.
* Then restart syslogd service:
```
# /etc/rc.d/syslogd restart
```
## OpenLDAP backend special
### Use the newest schema file
Changes in the newest LDAP schema file shipped in iRedMail-0.8.2:
* It allows normal mail user to use attribute `domainGlobalAdmin`. With this
attribute, you can mark mail user as a global admin to manage mail accounts
with iRedAdmin-Pro.
* It allows mail list to use `shadowAddress` for alias domain support.
To use the newest iRedMail ldap schem file, we have to:
* Download the newest iRedMail ldap schema file
* Copy old ldap schema file as a backup copy
* Replace the old one
* Restart OpenLDAP service.
Here we go:
* On RHEL/CentOS/Scientific Linux (both release 5.x and 6.x), openSUSE, Gentoo, OpenBSD:
```
# cd /tmp
# wget https://bitbucket.org/zhb/iredmail/raw/a4d8b730d147/iRedMail/samples/iredmail.schema
# cd /etc/openldap/schema/
# cp iredmail.schema iredmail.schema.bak
# cp -f /tmp/iredmail.schema /etc/openldap/schema/
# /etc/init.d/slapd restart # <-- Or: /etc/init.d/ldap restart
```
* On Debian/Ubuntu:
```
# cd /tmp
# wget https://bitbucket.org/zhb/iredmail/raw/a4d8b730d147/iRedMail/samples/iredmail.schema
# cd /etc/ldap/schema/
# cp iredmail.schema iredmail.schema.bak
# cp -f /tmp/iredmail.schema /etc/ldap/schema/
# /etc/init.d/slapd restart
```
* On FreeBSD:
```
# cd /tmp
# wget https://bitbucket.org/zhb/iredmail/raw/a4d8b730d147/iRedMail/samples/iredmail.schema
# cd /usr/local/etc/ldap/schema/
# cp iredmail.schema iredmail.schema.bak
# cp -f /tmp/iredmail.schema /usr/local/etc/openldap/schema/
# /etc/init.d/slapd restart
```
### Return correct maildir path while using `virtual` transport
Postfix setting `virtual_mailbox_maps` doesn't return correct maildir path.
Usually, this is fine because iRedMail uses transport program provided by
Dovecot (command name `deliver`). But if you want to use Postfix built-in
transport program `virtual`, mails will be delivered to incorrect path.
To fix it, please open `/etc/postfix/ldap/virtual_mailbox_maps.cf` (on Linux
and OpenBSD) or `/usr/local/etc/postfix/ldap/virtual_mailbox_maps.cf` (on
FreeBSD), append parameter `result_format = %s/Maildir/` line after line
`result_attribute= mailMessageStore`.
```
# Part of file: etc/postfix/ldap/virtual_mailbox_maps.cf
result_attribute = mailMessageStore
result_format = %s/Maildir/
```
Restarting Postfix service is required.
### Add checkpoint setting in slapd.conf, used for BDB recovery
Add below lines in your OpenLDAP config file, `slapd.conf`, after the line
`suffix dc=xxx,dc=xxx`. Please read comments below for more details about what
it's used for.
* On RHEL/CentOS/Scientific Linux, openSUSE, Gentoo, OpenBSD, it's `/etc/openldap/slapd.conf`.
* On Debian, Ubuntu, it's `/etc/ldap/slapd.conf`.
* On FreeBSD, it's `/usr/local/etc/openldap/slapd.conf`.
```
# Part of file: slapd.conf
# This directive specifies how often to checkpoint the BDB transaction log.
# A checkpoint operation flushes the database buffers to disk and writes a
# checkpoint record in the log. The checkpoint will occur if either <kbyte>
# data has been written or <min> minutes have passed since the last checkpoint.
# Both arguments default to zero, in which case they are ignored. When the
# <min> argument is non-zero, an internal task will run every <min> minutes
# to perform the checkpoint. See the Berkeley DB reference guide for more
# details.
#
# OpenLDAP default is NO CHECKPOINTING.
#
# whenever 128kb data bytes written or 5 minutes has elapsed
checkpoint 128 5
```
Restarting OpenLDAP service is required.
## MySQL backend special
### Add 3 new columns required by iRedAdmin
New version of iRedAdmin (both open source edition and iRedAdmin-Pro) requires
three new columns: `mailbox.isadmin`, `mailbox.isglobaladmin`,
`mailbox.language`.
* With `mailbox.isadmin=1`, this user is a domain admin.
* With `mailbox.isadmin=1` AND `mailbox.isglobaladmin=1`, this user is a
global admin.
* Column `mailbox.language` is used to store short code of language. e.g.
de_DE for German, cs_CZ for Czech.
Please login to MySQL server as root user, execute SQL commands to add required
columns and indexes.
```
# mysql -uroot -p
mysql> USE vmail;
mysql> ALTER TABLE mailbox ADD COLUMN isadmin TINYINT(1) NOT NULL DEFAULT 0;
mysql> ALTER TABLE mailbox ADD COLUMN isglobaladmin TINYINT(1) NOT NULL DEFAULT 0;
mysql> ALTER TABLE mailbox ADD COLUMN language VARCHAR(5) NOT NULL DEFAULT 'en_US';
mysql> ALTER TABLE mailbox ADD INDEX (isadmin);
mysql> ALTER TABLE mailbox ADD INDEX (isglobaladmin);
```
## PostgreSQL backend special
### Add 3 new columns required by iRedAdmin
New version of iRedAdmin (both open source edition and iRedAdmin-Pro) requires
three new columns: `mailbox.isadmin`, `mailbox.isglobaladmin`,
`mailbox.language`.
* With `mailbox.isadmin=1`, this user becomes a domain admin.
* With `mailbox.isadmin=1` AND `mailbox.isglobaladmin=1`, this user becomes
a global admin.
* Column `mailbox.language` is used to store short code of language. e.g.
de_DE for German, cs_CZ for Czech.
Please switch to PostgreSQL daemon user, then execute SQL commands to add required columns and indexes:
* On Linux, PostgreSQL daemon user is `postgres`.
* On FreeBSD, PostgreSQL daemon user is `pgsql`.
* On OpenBSD, PostgreSQL daemon user is `_postgresql`.
```
# su - postgres
$ psql -d vmail
sql> ALTER TABLE mailbox ADD COLUMN isadmin INT2 NOT NULL DEFAULT 0;
sql> ALTER TABLE mailbox ADD COLUMN isglobaladmin INT2 NOT NULL DEFAULT 0;
sql> ALTER TABLE mailbox ADD COLUMN language VARCHAR(5) NOT NULL DEFAULT 'en_US';
sql> CREATE INDEX idx_mailbox_isadmin ON mailbox (isadmin);
sql> CREATE INDEX idx_mailbox_isglobaladmin ON mailbox (isglobaladmin);
```

View File

@ -1,4 +1,4 @@
# iRedMail: release notes and upgrade tutorials
# iRedMail release notes and upgrade tutorials
Usually, upgrading iRedMail is just updating some config files to achieve new
features or fix bugs, you do __NOT__ need to download the latest iRedMail and
@ -19,7 +19,7 @@ You can always download the latest iRedMail release on [Download page](../downlo
* [0.8.5](http://www.iredmail.org/forum/topic5167-news-announcements-bug-fixes-iredmail085-has-been-released.html), Jul 16, 2013. [Upgrade from iRedMail-0.8.4](./upgrade.iredmail.0.8.4-0.8.5.html)
* [0.8.4](http://www.iredmail.org/forum/topic4646-news-announcements-bug-fixes-iredmail084-has-been-released.html), Mar 26, 2013. [Upgrade from iRedMail-0.8.3](./upgrade.iredmail.0.8.3-0.8.4.html)
* [0.8.3](http://www.iredmail.org/forum/topic4016-news-announcements-bug-fixes-iredmail083-has-been-released.html), Oct 13, 2012. [Upgrade from iRedMail-0.8.2](./upgrade.iredmail.0.8.2-0.8.3.html)
* [0.8.2](http://www.iredmail.org/forum/topic3913-news-announcements-bug-fixes-iredmail082-has-been-released.html), Sep 19, 2012. [Upgrade from iRedMail-0.8.1](http://www.iredmail.org/wiki/index.php?title=Upgrade/iRedMail/0.8.1-0.8.2)
* [0.8.2](http://www.iredmail.org/forum/topic3913-news-announcements-bug-fixes-iredmail082-has-been-released.html), Sep 19, 2012. [Upgrade from iRedMail-0.8.1](./upgrade.iredmail.0.8.1-0.8.2.html)
* [0.8.1](http://www.iredmail.org/forum/topic3499-news-announcements-bug-fixes-iredmail081-has-been-released.html), Jun 8, 2012. [Upgrade from iRedMail-0.8.0](http://www.iredmail.org/wiki/index.php?title=Upgrade/iRedMail/0.8.0-0.8.1)
* [0.8.0](http://www.iredmail.org/forum/topic3345.html), May 10, 2012. [Upgrade from iRedMail-0.7.4](http://www.iredmail.org/wiki/index.php?title=Upgrade/iRedMail/0.7.4-0.8.0)
* [0.7.4](http://www.iredmail.org/forum/topic2816-iredmail074-has-been-released.html), Jan 9, 2012. [Upgrade from iRedMail-0.7.3](http://www.iredmail.org/wiki/index.php?title=Upgrade/iRedMail/0.7.3-0.7.4)

View File

@ -1,4 +1,4 @@
# iRedAdmin-Pro: release notes and upgrade tutorial
# iRedAdmin-Pro release notes and upgrade tutorial
[TOC]