Failed to find user "system" from expanded string "${lookup{$domain}lsearch*

ProvidaGroup

Registered
Apr 15, 2010
2
0
51
Hello, I hope someone can help me, since yesterday all internal emails have been getting stuck in the mail queue (e.g. logwatch reports, cron jobs) however any external emails get through just fine.

When clicking 'deliver now' I get the following errror mesage
Delivery attempt for Message ID 1O27of-0007ye-Fe

Message 1O27of-0007ye-Fe is not frozen
LOG: MAIN
cwd=/usr/local/cpanel/whostmgr/docroot 4 args: /usr/sbin/exim -v -M 1O27of-0007ye-Fe
delivering 1O27of-0007ye-Fe
LOG: MAIN PANIC
Failed to find user "system" from expanded string "${lookup{$domain}lsearch* {/etc/userdomains}{$value}}" for the central_filter router
LOG: MAIN
== *removed address of my server for security* R=central_filter defer (-1): Failed to find user "system" from expanded string "${lookup{$domain}lsearch* {/etc/userdomains}{$value}}" for the central_filter router
Can anyone help me with this, I'm sure it will be something simple, but there seems to be nothing on Google
 

hostsale

Member
Jan 31, 2008
12
0
51
Found the problem, edit your /etc/userdomains - find the domain in question.

The correct entry for this domain is:

your_domain.com: youruser

Incorrect:

your_domain.com: system

In my case it was in userdomains 2x - check to make sure it is already in there before adding it again.
 

JaredR.

Well-Known Member
Feb 25, 2010
1,834
27
143
Houston, TX
cPanel Access Level
Root Administrator
Use grep

Something that might help would be to use grep to find all instances of "system" in the files in /var/cpanel/users. There should be no instances of it. The following command will show if there are, and which file(s) contain it:

Code:
# grep system /var/cpanel/users/*
If there are any instances of "system", edit the file and substitute the correct cPanel username for "system." The username will be the same as the filename. After editing any file in /var/cpanel/users, be sure to run the following command:

Code:
# /scripts/updateuserdomains
 

hostsale

Member
Jan 31, 2008
12
0
51
True enough, but all of the files have the word 'system' in them because of the following note in each file:

cPanel -- If you edit this file directly you must run /scripts/updateuserdomains afterwards to rebuild the system caches
 

JaredR.

Well-Known Member
Feb 25, 2010
1,834
27
143
Houston, TX
cPanel Access Level
Root Administrator
A more refined grep command would be the following:

Code:
# grep ": system" /var/cpanel/users/*
This would find all instances of "system" after a colon and a space, which is more specific than the original command I mentioned. I apologize for the oversight.
 

zosorock

Member
Sep 12, 2006
16
0
151
Please see below for excerpt from my exim_mainlog (replaced username and domain).

I am getting the same errors when I try to run a PHP script that sends email to localdomains... but the problem is, I checked /etc/userdomains and none of the domains has system as the user. Any clue on what else can it be?

Thanks in advance!

2010-05-30 01:00:39 1OIadb-0002hB-87 Failed to find user "domaindotcom" from expanded string "${lookup{$domain}lsearch* {/etc/userdomains}{$value}}" for the central_filter router
2010-05-30 01:00:39 1OIadb-0002hB-87 == [email protected] R=central_filter defer (-1): Failed to find user "domaindotcom" from expanded string "${lookup{$domain}lsearch* {/etc/userdomains}{$value}}" for the central_filter router