[Dovecot] Imap unlink "failed, is a directory".

Dovecot at corwyn.net Dovecot at corwyn.net
Tue Feb 10 03:44:41 EET 2009



Dovecot 1.1.8-0_85.el5

I'm seeing this set of messages repeat every 15 min. My best guess is 
the user tried to delete an imap folder and is failing?

Feb  9 20:05:58 mailserver dovecot: imap-login: Login: 
user=<user at example.com>, method=PLAIN, rip=10.0.0.1, lip=192.168.250.80, TLS
Feb  9 20:05:58 mailserver dovecot: IMAP(user at example.com): 
unlink(/var/spool/mail/example.com/user/Maildir/cur/cur:2,ST) failed: 
Is a directory
Feb  9 20:05:58 mailserver dovecot: IMAP(user at example.com): 
unlink(/var/spool/mail/example.com/user/Maildir/cur/new:2,ST) failed: 
Is a directory
Feb  9 20:05:58 mailserver dovecot: IMAP(user at example.com): 
Disconnected: Logged out bytes=66/623

 From here:
http://wiki.dovecot.org/VirtualUsers#homedirs  I suspect it's a 
problem with access to the home directory. The users have a home directory:
/var/spool/mail/domain/user  (or at least that's where Maildir ends 
up).  vuser has 700 access to that entire structure (everything under 
var/spool/mail/). Users log in with mysql accounts.

/etc/passwd:
...
dovecot:x:97:97:dovecot:/usr/libexec/dovecot:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
vacation:x:65501:65501::/var/spool/vacation:/sbin/nologin
vuser:x:1015:105:,,,:/home/vuser:/bin/false
...

dovecot-sql.conf
driver = mysql
connect = host=localhost dbname=postfix user=postfix password=xxxxxxx

default_pass_scheme = MD5-CRYPT
password_query = SELECT username, domain, password FROM mailbox WHERE 
username = '%u' AND domain = '%d' AND active = '1'

user_query = SELECT 1015 as uid, 105 as gid, '/var/spool/mail/%d/%n' 
as home, 'maildir:/var/spool/mail/%d/%n/Maildir' as mail, 
concat('*:storage=', quota, 'B') as quota_rule FROM mailbox WHERE 
username = '%u' AND domain = '%d' and active = '1'



dovecot -n
# 1.1.8: /etc/dovecot.conf
# OS: Linux 2.6.18-92.el5 i686 Red Hat Enterprise Linux Server 
release 5.2 (Tikanga) ext3
ssl_cert_file: /etc/httpd/certs/example_invtitle_com.crt
ssl_key_file: /etc/httpd/certs/example.com.key.no.password
login_dir: /var/run/dovecot/login
login_executable(default): /usr/libexec/dovecot/imap-login
login_executable(imap): /usr/libexec/dovecot/imap-login
login_executable(pop3): /usr/libexec/dovecot/pop3-login
mail_uid: 1015
mail_gid: 105
mail_location: maildir:/var/spool/mail/%d/%n/Maildir
mail_executable(default): /usr/libexec/dovecot/imap
mail_executable(imap): /usr/libexec/dovecot/imap
mail_executable(pop3): /usr/libexec/dovecot/pop3
mail_plugins(default): quota imap_quota
mail_plugins(imap): quota imap_quota
mail_plugins(pop3): quota
mail_plugin_dir(default): /usr/lib/dovecot/imap
mail_plugin_dir(imap): /usr/lib/dovecot/imap
mail_plugin_dir(pop3): /usr/lib/dovecot/pop3
imap_client_workarounds(default): delay-newmail outlook-idle
imap_client_workarounds(imap): delay-newmail outlook-idle
imap_client_workarounds(pop3):
pop3_client_workarounds(default):
pop3_client_workarounds(imap):
pop3_client_workarounds(pop3): outlook-no-nuls oe-ns-eoh
auth default:
   mechanisms: plain login
   passdb:
     driver: sql
     args: /etc/dovecot-sql.conf
   userdb:
     driver: passwd
   userdb:
     driver: sql
     args: /etc/dovecot-sql.conf
   userdb:
     driver: static
   socket:
     type: listen
     client:
       path: /var/spool/postfix/private/auth
       mode: 432
       user: postfix
       group: postfix
     master:
       path: /var/run/dovecot/auth-master
       mode: 384
       user: vuser
       group: vuser
plugin:
   quota: maildir
   quota_rule: *:storage=102400000
   quota_rule2: Trash:storage=100M

Rick Steeves
http://www.sinister.net

"The journey is the destination"



More information about the dovecot mailing list