[Sysadmins] Dovecot update plan
Max Ivanov
ivanov.maxim на gmail.com
Вт Май 19 14:27:33 MSD 2009
Предлагаю обсудить с заинтересованными лицами как быть с dovecot. Я
взялся за него с одобрения прошлого maintainer :)
Хотелось бы помимо актуальных версий иметь возможность запускать
несколько версий dovecot одновременно, для более плавных переездов. В
конечном итоге я вижу это так (описано для 1.2, для других версий
подставьте 1.1 или 1.0):
конфиги
/etc/dovecot1.2/
бинарники:
/usr/sbin/dovecot1.2
/usr/sbin/dovecotpw1.2
/usr/lib/dovecot1.2/*
/usr/libexec/dovecot1.2/*
разное:
/etc/init.d/dovecot1.2
/var/run/dovecot1.2/ (тут в том числе и auth сокеты)
/etc/control.d/facilities/dovecot1.2-auth
общие файлы
/etc/pam.d/dovecot
пользователь dovecot общий на всех
/var/lib/ssl/certs/dovecot*
/var/lib/ssl/private/dovecot*
При такой раскладке файлов можно будет поставить одновременно
несколько версий dovecot. Оно даже будет работать если в dovecot.conf
правильно выставить base_dir и правильно указать пути до создаваемых
сокетов.
Понятно, что будут и alternatives переключющие симлинки
/usr/libexec/dovecot, /var/run/dovecot на нужные версии. файла
/etc/init.d/dovecot не будет, предполагаю, что нужную версию админ
всётаки должен сам включать и останавливать. Альтернативы нужны
исключительно для того, что б MTA настроить например на
/usr/libexec/dovecot/deliver и не ломать себе голову при переезде на
новую версию.
Теперь начинаются сложности:
- как сделать апгрейд существующего dovecot (тот, что версии 1.1),
ведь нам надо перенести /etc/dovecot/ в /etc/dovecot1.1
- как вообще делать апгрейд любой существующей инсталяции, ведь нам
надо поменять base_dir в конфиге dovecot.conf на новый путь, то же
самое относится и к созданию socket файлов, т.к. создаваться они
должны всегда в родной для данной версии директории, а не по пути
управляемому alternatives.
Автоматом лазить в чужие конфиги я не стану, да никто и не даст :)
Готов выслушать пожелания, критику и пр. насчет этих планов.
Подробная информация о списке рассылки Sysadmins