[Dovecot] A lot of dovecot/imap processes
C3PO sysadmin
jcs at c3po.es
Wed Jan 30 17:09:09 EET 2013
Hello!
I have a dovecot installed and many users could login via IMAP over SSL
(40 users at same time aprox).
Users could have "Check mail every X time" enabled in their client
(Thunderbird or K-9 mail) - Is this required feature? I noted that if I
disable it I still getting news mails without having to check for new
mails manually - .
I noted that dovecot is creating a lot of process (dovecot/imap and
dovecot/imap-login) and is requiring more and more RAM.
I think that every login starts a process but never is endend.
The output of /*ps aux | grep dovecot | wc*/ is increasing until 250
lines aprox. I think that is limited by process_limit = 256. But if I
put process_limit = 100, in the log appers a message that dovecot is
aborting logins (and I noted that new connections sometimes couldn't login).
Anyway the mailserver is working well, but I'm afraid of the consumtion
of RAM.
Is that normal?
Details:
# 2.0.19: /etc/dovecot/dovecot.conf
# OS: Linux 3.2.0-36-generic-pae i686 Ubuntu 12.04.1 LTS nfs
auth_mechanisms = plain login
dotlock_use_excl = no
log_timestamp = "%Y-%m-%d %H:%M:%S "
mail_fsync = always
mail_location = maildir:/mnt/vmail/%d/%n/Maildir
mail_privileged_group = mail
managesieve_notify_capability = mailto
managesieve_sieve_capability = fileinto reject envelope
encoded-character vacation subaddress comparator-i;ascii-numeric
relational regex imap4flags copy include variables body enotify
environment mailbox date ihave vacation-seconds
mmap_disable = yes
namespace {
inbox = yes
location =
prefix =
separator = .
subscriptions = yes
type = private
}
passdb {
args = /etc/dovecot/dovecot-sql.conf
driver = sql
}
plugin {
autocreate = Trash
autocreate2 = Sent
autocreate3 = Drafts
autosubscribe = Trash
autosubscribe2 = Sent
autosubscribe3 = Drafts
sieve = /mnt/vmail/%d/%n/Maildir/.dovecot.sieve
sieve_dir = ~/sieve
sieve_extensions = +vacation-seconds
sieve_global_dir = /etc/dovecot/sieve_global_dir
sieve_global_path = /etc/dovecot/default.sieve
sieve_vacation_default_period = 2s
sieve_vacation_max_period = 3s
sieve_vacation_min_period = 1s
}
protocols = imap lmtp sieve
service auth {
unix_listener /var/spool/postfix/private/auth {
group = postfix
mode = 0660
user = postfix
}
unix_listener auth-master {
group = vmail
mode = 0600
user = vmail
}
user = root
}
service imap-login {
inet_listener imap {
port = 0
}
process_limit = 256
}
service managesieve-login {
inet_listener sieve {
port = 4190
}
process_min_avail = 1
service_count = 1
vsz_limit = 64 M
}
service managesieve {
process_limit = 10
}
service pop3-login {
process_limit = 256
}
ssl = required
ssl_cert = </etc/ssl/certs/dovecot.pem
ssl_key = </etc/ssl/private/dovecot.pem
userdb {
driver = passwd
}
userdb {
args = uid=5000 gid=5000 home=/mnt/vmail/%d/%n allow_all_users=yes
driver = static
}
protocol imap {
imap_capability = IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID
ENABLE IDLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS MULTIAPPEND
UNSELECT CHILDREN NAMESPACE UIDP LUS LIST-EXTENDED I18NLEVEL=1 ESEARCH
ESORT SEARCHRES WITHIN CONTEXT=SEARCH LIST-STATUS
mail_plugins = autocreate
}
protocol pop3 {
pop3_uidl_format = %08Xu%08Xv
}
protocol lda {
auth_socket_path = /var/run/dovecot/auth-master
log_path = /var/log/dovecot-deliver.log
mail_plugins = " sieve"
postmaster_address = ###@###.###
}
protocol sieve {
info_log_path = /var/log/dovecot-sieve.log
log_path = /var/log/dovecot-sieve-errors.log
managesieve_implementation_string = dovecot
managesieve_max_line_length = 65536
}
protocol lmtp {
info_log_path = /var/log/dovecot-lmtp.log
log_path = /var/log/dovecot-lmtp-errors.log
mail_plugins = " sieve"
}
Thank-you very much.
More information about the dovecot
mailing list