Permission denied: cannot create /domain.tld/postmaster/Maildir

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

Permission denied: cannot create /domain.tld/postmaster/Maildir

Mark
Hi Guys,

Tearing my hair out here trying to solve this one. I know it's supposed to be a permissions issue but bear with me first please.

variable.php: $mailroot = "/home/exim4u/mail/";

Permissions are set to exim (UID / GID 93) for the above directory:
drwxr-xr-x 3 exim exim 4096 Oct 28 13:32 .
drwxr-xr-x 6 root root 4096 Oct 28 13:32 ..
drwxr-xr-x 3 exim exim 4096 Oct 31 12:25 mail

I create a domain eg domain.tld. System UID and GID are set to 93. Domain mail directory appears as /home/exim4u/mail/ which I believe is correct as it should then create /home/exim4u/mail/domain.tld for the mailboxes.

However, it doesn't create the folder and this is what I see in exim/main.log:
2013-10-31 13:35:55 1VbqXb-0004fN-Is == /domain.tld/postmaster/Maildir <[hidden email]> R=virtual_domains T=virtual_delivery defer (13): Permission denied: cannot create /domain.tld/postmaster/Maildir

I've been struggling to figure out why it's not creating /home/exim4u/mail/domain.tld with no success, even manually creating the domain.tld directory under /home/exim4u/mail.  I then decided to create /domain.tld off the root since that appears on the surface to be what it's actually trying to do! Guess what, the mail got delivered and the postmaster directory created as /domain.tld/postmaster/Maildir.

Why is it trying to create the directory off the root and not under the correct mailroot directory?

_______________________________________________
users mailing list
[hidden email]
https://exim4u.org/mailman/listinfo/users
Reply | Threaded
Open this post in threaded view
|

Re: Permission denied: cannot create /domain.tld/postmaster/Maildir

Odhiambo Washington
On 31 October 2013 14:46, Mark Shearar <[hidden email]> wrote:

> Hi Guys,
>
> Tearing my hair out here trying to solve this one. I know it's supposed to be a permissions issue but bear with me first please.
>
> variable.php: $mailroot = "/home/exim4u/mail/";
>
> Permissions are set to exim (UID / GID 93) for the above directory:
> drwxr-xr-x 3 exim exim 4096 Oct 28 13:32 .
> drwxr-xr-x 6 root root 4096 Oct 28 13:32 ..
> drwxr-xr-x 3 exim exim 4096 Oct 31 12:25 mail
>
> I create a domain eg domain.tld. System UID and GID are set to 93. Domain mail directory appears as /home/exim4u/mail/ which I believe is correct as it should then create /home/exim4u/mail/domain.tld for the mailboxes.
>
> However, it doesn't create the folder and this is what I see in exim/main.log:
> 2013-10-31 13:35:55 1VbqXb-0004fN-Is == /domain.tld/postmaster/Maildir <[hidden email]> R=virtual_domains T=virtual_delivery defer (13): Permission denied: cannot create /domain.tld/postmaster/Maildir
> I've been struggling to figure out why it's not creating /home/exim4u/mail/domain.tld with no success, even manually creating the domain.tld directory under /home/exim4u/mail.  I then decided to create /domain.tld off the root since that appears on the surface to be what it's actually trying to do! Guess what, the mail got delivered and the postmaster directory created as /domain.tld/postmaster/Maildir.
>
> Why is it trying to create the directory off the root and not under the correct mailroot directory?

The reason looks rather obvious to me. When you created this domain
using the web UI, did you by any chance change the parameter for
"Domain Mail Directory"? It should have remained as
"/home/exim4u/mail/" and Exim would append domain.tld when delivering
the mail. I suspect you did change "Domain Mail Directory" to /, hence
the reason Exim is trying to deliver to /domain.tld

Please login as siteadmin and ensure that the value of Domain Mail
Directory points to /home/exim4u/mail/. If it does, then login to
mysql shell and show us the output of:

select domain, maildir from domains where domain = 'domain.tld';




--
Best regards,
Odhiambo WASHINGTON,
Nairobi,KE
+254733744121/+254722743223
"I can't hear you -- I'm using the scrambler."

_______________________________________________
users mailing list
[hidden email]
https://exim4u.org/mailman/listinfo/users
Reply | Threaded
Open this post in threaded view
|

Re: Permission denied: cannot create /domain.tld/postmaster/Maildir

Mark
Not sure if I'm supposed to top post or bottom post but here goes :)

>The reason looks rather obvious to me. When you created this domain using the web UI, did you by any chance change the parameter >for "Domain Mail Directory"? It should have remained as "/home/exim4u/mail/" and Exim would append domain.tld when delivering >the mail. I suspect you did change "Domain Mail Directory" to /, hence the reason Exim is trying to deliver to /domain.tld

>Please login as siteadmin and ensure that the value of Domain Mail Directory points to /home/exim4u/mail/. If it does, then login to ?>mysql shell and show us the output of:

>select domain, maildir from domains where domain = 'domain.tld';

When creating the domain I tried both "/home/exim4u/mail/" and "/home/exim4u/mail" to see if the trailing "/" made any difference which it didn't (at least it didn't solve my problem).  But yes, "Domain Mail Directory" was definitely set to "/home/exim4u/mail/".
I asked someone else to run the query for me and email the results as I'm nowhere near at the moment unfortunately. I also can't remember if I deleted the domain again out of frustration or left it as it was :/ This is what they sent me back:
domain_id 1
domain  admin
maildir
uid 93
gid 93
max_accounts 0
quotas 0
type \N
avscan 0
blocklists 0
complexpass 0
enabled 1
mailinglists 0
maxmsgsize 0
pipe 0
spamassassin 0
sa_tag 0
sa_refuse 0
relay_address
outgoing_ip

>1) Examine the exim4u mysql database and verify the values of the "maildir", "uid" and "gid" fields in the >domains table.  Also, the "pop" field in the users table should specify each user's mail directory.  If you are >not a mysql whiz then you can easily view these tables by installing and using phpMyAdmin which provides >an easy to use web interface for mysql.

I didn't create an exim4u user, but I chose to use the exim user instead. I thought it would make life easier :)     UID and GID is both 93. Verified by "id -u exim". The UID and GID fields are correct in the domains table, although the above shows the maildir as being blank I distinctly remember seeing "/domain.tld/<username>/Maildir" in either the domains table or the users table. This of course is the problem in that it should be "/home/exim4u/mail/domain.tld/<username>/Maildir".

Am going to be doing my 4th installation sometime soon (also on Centos 5) so will be interesting to see if I can replicate my issues. Hopefully not!  On that note, is Centos 6 now the preferred OS of choice for exim4u or should I stick to 5?

Regards
Mark

_______________________________________________
users mailing list
[hidden email]
https://exim4u.org/mailman/listinfo/users
Reply | Threaded
Open this post in threaded view
|

Re: Permission denied: cannot create /domain.tld/postmaster/Maildir

Odhiambo Washington
Your answer is useless to me so I can't help from this point onwards -
unless you answer me properly.

On 8 November 2013 15:08, Mark Shearar <[hidden email]> wrote:

> Not sure if I'm supposed to top post or bottom post but here goes :)
>
>>The reason looks rather obvious to me. When you created this domain using the web UI, did you by any chance change the parameter >for "Domain Mail Directory"? It should have remained as "/home/exim4u/mail/" and Exim would append domain.tld when delivering >the mail. I suspect you did change "Domain Mail Directory" to /, hence the reason Exim is trying to deliver to /domain.tld
>
>>Please login as siteadmin and ensure that the value of Domain Mail Directory points to /home/exim4u/mail/. If it does, then login to ?>mysql shell and show us the output of:
>
>>select domain, maildir from domains where domain = 'domain.tld';
>
> When creating the domain I tried both "/home/exim4u/mail/" and "/home/exim4u/mail" to see if the trailing "/" made any difference which it didn't (at least it didn't solve my problem).  But yes, "Domain Mail Directory" was definitely set to "/home/exim4u/mail/".
> I asked someone else to run the query for me and email the results as I'm nowhere near at the moment unfortunately. I also can't remember if I deleted the domain again out of frustration or left it as it was :/ This is what they sent me back:
> domain_id       1
> domain    admin
> maildir
> uid     93
> gid     93
> max_accounts    0
> quotas  0
> type    \N
> avscan  0
> blocklists      0
> complexpass     0
> enabled 1
> mailinglists    0
> maxmsgsize      0
> pipe    0
> spamassassin    0
> sa_tag  0
> sa_refuse       0
> relay_address
> outgoing_ip
>
>>1) Examine the exim4u mysql database and verify the values of the "maildir", "uid" and "gid" fields in the >domains table.  Also, the "pop" field in the users table should specify each user's mail directory.  If you are >not a mysql whiz then you can easily view these tables by installing and using phpMyAdmin which provides >an easy to use web interface for mysql.
>
> I didn't create an exim4u user, but I chose to use the exim user instead. I thought it would make life easier :)     UID and GID is both 93. Verified by "id -u exim". The UID and GID fields are correct in the domains table, although the above shows the maildir as being blank I distinctly remember seeing "/domain.tld/<username>/Maildir" in either the domains table or the users table. This of course is the problem in that it should be "/home/exim4u/mail/domain.tld/<username>/Maildir".
>
> Am going to be doing my 4th installation sometime soon (also on Centos 5) so will be interesting to see if I can replicate my issues. Hopefully not!  On that note, is Centos 6 now the preferred OS of choice for exim4u or should I stick to 5?
>
> Regards
> Mark
>
> _______________________________________________
> users mailing list
> [hidden email]
> https://exim4u.org/mailman/listinfo/users



--
Best regards,
Odhiambo WASHINGTON,
Nairobi,KE
+254733744121/+254722743223
"I can't hear you -- I'm using the scrambler."

_______________________________________________
users mailing list
[hidden email]
https://exim4u.org/mailman/listinfo/users
Reply | Threaded
Open this post in threaded view
|

can not create user / domain /alias and anything else

Holger Glaess
hi

i can create user, domains and else by wthe web gui.

i got a lot of lines at the apache error log like

[Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:  
Undefined index: realname in /usr/share/exim4u/config/variables.php on
line 120
[Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:  
Undefined index: localpart in /usr/share/exim4u/config/variables.php on
line 122
[Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:  
Undefined variable: _SESSION in /usr/share/exim4u/config/variables.php
on line 122
[Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:  
Undefined variable: _SESSION in /usr/share/exim4u/config/variables.php
on line 125
[Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:  
Undefined variable: _SESSION in /usr/share/exim4u/config/variables.php
on line 126
[Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:  
Undefined index: domain in /usr/share/exim4u/config/variables.php on
line 130
[Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:  
Undefined variable: domheaderrow in /usr/share/exim4u/config/header.php
on line 15
[Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:  
Undefined variable: domheaderrow in /usr/share/exim4u/config/header.php
on line 15
[Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:  
Undefined variable: usrheaderrow in /usr/share/exim4u/config/header.php
on line 17
[Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:  
Undefined variable: usrheaderrow in /usr/share/exim4u/config/header.php
on line 17
[Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:  
Undefined index: login in /usr/share/exim4u/config/header.php on line 86

but the database looks good an work together with exim .

exim can receive mail for the known domains and send too.

i check the tables by hand , and everything looks fine and also the
permissions of the files.

did have somebody a clue for this problem ?


regards

holger
.




_______________________________________________
users mailing list
[hidden email]
https://exim4u.org/mailman/listinfo/users
Reply | Threaded
Open this post in threaded view
|

Re: can not create user / domain /alias and anything else

Rimas Kudelis
Hello Holger,

Let me start by saying that to anyone who groups their e-mail by thread,
the "Hit reply, erase everything and write whatever you wanted" practice
is kind of annoying, because it makes completely unrelated topics appear
as one conversation. Next time, please just hit the mailing list address
instead of a reply button, it's not much harder.

Now, onto your topic, the errors you have pasted are PHP coding errors
derived from Vexim. They are already fixed upstream (
https://github.com/avleen/vexim2/commit/49fa6bc53eba81d41169cdca3db1b8bb2bbb23f0 
), but they aren't really fatal errors, and you can safely ignore them
in this case.

While on this, I would like to suggest to the authors of Exim4U to sync
their fork of Vexim with upstream. We have some really nice changes
there (probably the biggest one being migration from Pear-DB to PDO as a
database backend). Although I personally tend to think that a full
rewrite or a replacement would still be desired (e.g., has anyone tried
ViMbAdmin).

Regards,
Rimas

2013.12.12 14:06, Holger Glaess wrote:

> i can create user, domains and else by wthe web gui.
>
> i got a lot of lines at the apache error log like
>
> [Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:
> Undefined index: realname in /usr/share/exim4u/config/variables.php on
> line 120
> [Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:
> Undefined index: localpart in /usr/share/exim4u/config/variables.php on
> line 122
> [Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:
> Undefined variable: _SESSION in /usr/share/exim4u/config/variables.php
> on line 122
> [Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:
> Undefined variable: _SESSION in /usr/share/exim4u/config/variables.php
> on line 125
> [Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:
> Undefined variable: _SESSION in /usr/share/exim4u/config/variables.php
> on line 126
> [Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:
> Undefined index: domain in /usr/share/exim4u/config/variables.php on
> line 130
> [Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:
> Undefined variable: domheaderrow in /usr/share/exim4u/config/header.php
> on line 15
> [Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:
> Undefined variable: domheaderrow in /usr/share/exim4u/config/header.php
> on line 15
> [Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:
> Undefined variable: usrheaderrow in /usr/share/exim4u/config/header.php
> on line 17
> [Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:
> Undefined variable: usrheaderrow in /usr/share/exim4u/config/header.php
> on line 17
> [Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:
> Undefined index: login in /usr/share/exim4u/config/header.php on line 86
>
> but the database looks good an work together with exim .
>
> exim can receive mail for the known domains and send too.
>
> i check the tables by hand , and everything looks fine and also the
> permissions of the files.
>
> did have somebody a clue for this problem ?


_______________________________________________
users mailing list
[hidden email]
https://exim4u.org/mailman/listinfo/users
Reply | Threaded
Open this post in threaded view
|

Re: can not create user / domain /alias and anything else

gldickens3
Administrator
In reply to this post by Holger Glaess
I don't think that anything is wrong. Your error_reporting value in your
php.ini file is probably just set to strictly such that you are
reporting information notices in addition to errors.  To only show
errors and not information notices use something like the following in
php.ini:

error_reporting = E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR

FYI,

Gordon


On 12/12/2013 07:06 AM, Holger Glaess wrote:

> hi
>
> i can create user, domains and else by wthe web gui.
>
> i got a lot of lines at the apache error log like
>
> [Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:
> Undefined index: realname in /usr/share/exim4u/config/variables.php on
> line 120
> [Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:
> Undefined index: localpart in /usr/share/exim4u/config/variables.php on
> line 122
> [Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:
> Undefined variable: _SESSION in /usr/share/exim4u/config/variables.php
> on line 122
> [Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:
> Undefined variable: _SESSION in /usr/share/exim4u/config/variables.php
> on line 125
> [Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:
> Undefined variable: _SESSION in /usr/share/exim4u/config/variables.php
> on line 126
> [Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:
> Undefined index: domain in /usr/share/exim4u/config/variables.php on
> line 130
> [Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:
> Undefined variable: domheaderrow in /usr/share/exim4u/config/header.php
> on line 15
> [Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:
> Undefined variable: domheaderrow in /usr/share/exim4u/config/header.php
> on line 15
> [Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:
> Undefined variable: usrheaderrow in /usr/share/exim4u/config/header.php
> on line 17
> [Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:
> Undefined variable: usrheaderrow in /usr/share/exim4u/config/header.php
> on line 17
> [Thu Dec 12 11:58:30 2013] [error] [client 84.118.155.64] PHP Notice:
> Undefined index: login in /usr/share/exim4u/config/header.php on line 86
>
> but the database looks good an work together with exim .
>
> exim can receive mail for the known domains and send too.
>
> i check the tables by hand , and everything looks fine and also the
> permissions of the files.
>
> did have somebody a clue for this problem ?
>
>
> regards
>
> holger
> .
>
>
>
>
> _______________________________________________
> users mailing list
> [hidden email]
> https://exim4u.org/mailman/listinfo/users


_______________________________________________
users mailing list
[hidden email]
https://exim4u.org/mailman/listinfo/users