Архивирование почты на отдельном диске с помощью Dovecot
Используемые термины: Dovecot, IMAP, Linux, NFS.
Создать архив почты на отдельном диске может понадобиться для хранения большей части данных на дешевых носителях, в роли которых могут выступать HDD или сетевые накопители. Мы рассмотрим пример конфигурации Dovecot, с помощью которой пользователи в своих почтовых клиентах будут видеть архивную папку, при помещении почты в которую файлы писем будут помещаться на отдельном носителе.
Настройка Dovecot
Необходимая нам настройка задается с помощью контекстов (пространств имен) или Namespaces. Данные пространства позволяют разделить настройки папок, которые доступны почтовым клиентам по протоколу IMAP.
В зависимости от версии dovecot и типа Linux расположение конфигурационного файла с нужными настройками может быть разным. Классически, все настройки хранятся в файле:
vi /etc/dovecot/dovecot.conf
В более современных версиях:
vi /etc/dovecot/conf.d/15-mailboxes.conf
Добавим строки:
...
namespace archive {
type = private
disabled = no
hidden = no
list = yes
inbox = no
prefix = Архив/
separator = /
location = maildir:/mnt/archive/%d/%u
mailbox Входящие {
auto = subscribe
}
mailbox Отправленные {
auto = subscribe
}
}
* где для нас наибольшее значение имеют опции:
- prefix — задает имя, которое будет отображаться в почтовом клиенте для данного контекста.
- location — путь до каталога, где будут размещаться файлы почты, когда мы будем переносить их в архивную папку.
- mailbox — настройка каталогов в контексте. В нашем примере мы создадим две папки Входящие и Отправленные, которые будут автоматически создаваться для всех почтовых ящиков (опция auto).
В нашем примере мы указали путь до каталога хранения — /mnt/archive/%d/%u. Где %d является переменной домена, а %u — имени почтового ящика. Когда dovecot впервые будет отдавать клиенту информацию об архивном каталоге, он автоматически создаст каталога, указанные как переменные. А корневой раздел (в нашем случае, /mnt/archive) необходимо создать самостоятельно. Выполним команду:
mkdir -p /mnt/archive
* для монтирования каталогов будет полезна инструкция Как настроить автоматическое монтирование дисков в системах Linux. При использовании сетевых дисков имейте ввиду, что dovecot корректно работает только с шарами NFS.
Также у dovecot должны быть права на созданный каталог.
chown vmail:vmail /mnt/archive
* очень часто, dovecot настраивается на работу от пользователя vmail, но это не обязательно будет так в вашем случае. Уточнить пользователя можно в конфигурационном файле. Ищите раздел service lmtp, а в нем директиву user.
Перезапускаем dovecot:
systemctl restart dovecot
Для проверки открываем почтовый клиент. Если все настроено верно, мы должны увидеть дополнительный контекст с созданными в нем каталогами. В моем случае так:
Попробуйте перенести в каталог несколько писем — они должны оказаться в отдельном каталоге, в нашем примере, расположенном в /mnt/archive.
Читайте также
Могут также быть полезными:
1. Настройка Postfix + Dovecot + LDAP.
2. Полноценный почтовый сервер на Ubuntu Server.
3. Полноценный почтовый сервер с iRedMail на Ubuntu или Debian.
4. Почтовый сервер на CentOS / Rocky.
5. Настройка Dovecot + Sieve + ManageSieve + Roundcube на Linux.