Virtual User CentOS Postfix & Courier w/ mailstore on SMB Share(NAS) fetch failure...

Discussion in 'HOWTO-Related Questions' started by AlyK, Jul 14, 2009.

  1. AlyK

    AlyK New Member

    Sorry This is re-post. I would really appreciate some assistance. I didn't get to many replies and this project was put on the back burner - its now back on my plate. I have make all sorts of adjustments to the fstab mount line so no improvement. Anyone's assistance is greatly appreciated

    I have successfully followed the howto for Virtual Users And Domains With Postfix, Courier, MySQL And SquirrelMail (CentOS 5.3 x86_64) (but for x86) and I have implemented this system successfully a few times. However I seem to have hit a issue. I have a situation where i have to place the mailstore on a windows NAS. I can sucessfully mounted the share with the correct gid/uid and i can get postfix to delivery mail to it properly however i can't seem to get courier to fetch the mail / display mail in any app (squirrel for example).

    It shows that there is in new messages eg: [Inbox (2)] but isn't able to display the mail itself.

    I have also attempted to maually telnet into the imap server and fetch mail and recieved the following error:
    a fetch 2 body[text]
    * 2 FETCH ()
    * NO Cannot open message 2
    a OK FETCH completed.
    a fetch 1 body[text]
    * 1 FETCH ()
    * NO Cannot open message 1
    a OK FETCH completed.

    After trying manually or via an mail app i see the following errors in the /var/log/maillog:
    Jun 18 09:33:48 mail01 imapd: rename(./new/1245268538.V17I22ed9bM285388.mail01.company.net,S= 1034,./cur/1245268538.V17I22ed9bM285388.mail01.company.net,S= 1034:2,)
    failed: No such file or directory


    fstab:
    //192.168.0.50/linuxmail /MailStoreAmun cifs username=net/linuxmail,password=Password1,uid=vmail,gid=vmail 0 0
    I have also tried modes 0777 just to test with no change in results.

    authmysql(key parts for this issue):
    MYSQL_UID_FIELD 5000
    MYSQL_GID_FIELD 5000
    MYSQL_HOME_FIELD "/MailStoreAmun"
    MYSQL_MAILDIR_FIELD CONCAT(SUBSTRING_INDEX(email,'@',-1),'/',SUBSTRING_INDEX(email,'@',1),'/')
     
  2. AlyK

    AlyK New Member

    Solved!!

    Hey all...
    Although no one replied to the post I thought I would post my finding in case anyone ever ran across this issue. The reason the SMB (Win-based NAS) wasn't working was because Courier fetch in Maildir format contained a colon which is not allowed in win based file names.

    However on the same device there was a NFS option we attemped to use this but obviously ran into the same issue. However using Character Translation Maps in the the winblows NFS server we can trasnlate the colon to be converted to something else while on the win filesystem and converted back when read by the NFS client:

    To configure:

    Configuring Server for NFS to Use a Character Translation File

    1. Log on to the Server for NFS computer by using an administrative level account.

    2. Open Services for UNIX Administration.

    3. Click the Server for NFS pane, and then click the Server Settings tab.

    4. Under File name handling, click to select the Translate File names check box.

    5. CREATE a pain text file that simply contains a hex translation (one per line) as followings

    0x00 0x3a : 0x00 0x2d ; replace client ":" with server dash "-"

    Save / exit

    6 . Type the full path to the translation file that you created in the Use character translation files box, or click Browse to locate the file.

    7. Click Apply.

    8. Change Locking time to 15seconds (Locking tab), click apply

    9. Restart NFS


    Although clearly not my first choice to use anything Win based for this solution, sometimes you have to work with what you have and when no one wants to shell out any money this is what it comes down too.

    BTW, you can also do the following prior to building the package with courier to avoid the colon

    However I chose not to go this route as this could violate standard maildir format

    Hope this helps someone else.

    Thanks

    Aly
     
    Last edited: Jul 20, 2009

Share This Page