У моих пользователей проблемы с почтовыми ящиками IMAP. Процессы IMAP зависают и истекает время ожидания. По истечении времени ожидания пользователи могут увидеть пустой почтовый ящик.
Но настоящая проблема, похоже, заключается в общении между slapd и famd.
Немного предыстории:
Система:
nsswitch.conf содержит:
passwd: files ldap group: files ldap shadow: files ldap
Файл конфигурации imap courier содержит в возможностях "IDLE", но его удаление (и возня с IMAP_ENHANCEDIDLE) ничего не дает. Прочитав, я бы подумал, что это остановит courier imap от использования fam, но я думаю, что нет.
проверка процесса imap (когда он зависает) показывает, что он зависает при связи с fam. Поэтому я перезапустил fam (что устранило проблему на несколько часов) и продолжил поиск неисправностей, чтобы найти корень проблемы.
Поскольку программа все еще висела, продолжал искать.
stracing famd показал, что зависает при общении с slapd. Удар по slapd ненадолго решил проблему. slapd реагировал на другие запросы, но со временем становился медленнее.
Самое странное, что эти проблемы только начали появляться. И единственные пакеты, которые я обновил, которые я думаю мощь актуальны следующие:
base-files 5lenny4 libmysqlclient15off 5.0.51a-24+lenny2 libssl0.9.8 0.9.8g-15+lenny3 openssl 0.9.8g-15+lenny3 tzdata 2009l-0lenny1 udev 0.125-7+lenny3
Похоже (я пока не подтверждаю это), что связь между famd и slapd является долгоживущей (через nscd).
Ой, написав это, я только что понял, что nscd - это еще одна штука, которую я не тестировал. Думаю, я займусь этим.
РЕДАКТИРОВАТЬ: Только что подтвердил, что запуск nscd тоже решает проблему.
Не используйте для этого пользователей системы. Вместо этого используйте «виртуальный», когда все файлы принадлежат одному пользователю, и разрешите курьеру напрямую обращаться к серверу ldap.
Библиотеки nss-ldap не так надежны.
Еще одна вещь: подумайте об использовании голубятни вместо курьера. Это как курьер только лучше.