Назад | Перейти на главную страницу

Связь между famd и slapd висит

У моих пользователей проблемы с почтовыми ящиками 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 не так надежны.

Еще одна вещь: подумайте об использовании голубятни вместо курьера. Это как курьер только лучше.