2013-07-04 20 views
17

Su una macchina Ubuntu Server 12.04, ho impostato un inoltro di posta elettronica per un indirizzo specifico in /etc/postfix/virtual: [email protected] [email protected]Postfix non riesce a trovare/etc/postfix/file virtuale

L'indirizzo [email protected] funziona e riceve posta. Quando invio mail a [email protected] ottengo questo nei log:

warning: hash:/etc/postfix/virtual is unavailable. open database /etc/postfix/virtual.db: No such file or directory 
warning: hash:/etc/postfix/virtual lookup error for "[email protected]" 
warning: 705B58190E: virtual_alias_maps map lookup problem for [email protected] -- deferring delivery 

Perché potrebbe postfix non essere in grado di trovare la /etc/postfix/virtual file?

$ ls -la 
total 96 
drwxr-xr-x 3 root root 4096 Jul 4 08:46 . 
drwxr-xr-x 102 root root 4096 Jun 24 06:23 .. 
-rw-r--r-- 1 root root 274 Jun 24 06:23 dynamicmaps.cf 
-rw-r--r-- 1 root root 1549 Jul 4 08:46 main.cf 
-rw-r--r-- 1 root root 5531 Jun 24 06:23 master.cf 
-rw-r--r-- 1 root root 19707 Feb 20 20:03 postfix-files 
-rwxr-xr-x 1 root root 8729 Feb 20 20:03 postfix-script 
-rwxr-xr-x 1 root root 26498 Feb 20 20:03 post-install 
drwxr-xr-x 2 root root 4096 Feb 20 20:03 sasl 
-rw-r--r-- 1 root root 43 Jul 4 08:27 virtual 
-rw-r--r-- 1 root root 130 Jul 4 08:26 vmailbox 

$ cat virtual 
[email protected] [email protected] 

$ cat main.cf | grep virtual 
virtual_mailbox_domains = mydomain.com 
virtual_mailbox_base = /var/mail/vhosts 
virtual_mailbox_maps = hash:/etc/postfix/vmailbox 
virtual_minimum_uid = 100 
virtual_uid_maps = static:5000 
virtual_gid_maps = static:5000 
virtual_alias_domains = fastupfront.com 
virtual_alias_maps = hash:/etc/postfix/virtual 
# virtual_alias_maps = /etc/postfix/virtual # I tried without the 'hash:' prefix as well. 

noti che mydomain.com vengono resi anonimi. In effetti, il nome di dominio che viene utilizzato nei file è un vero nome di dominio che ha i suoi record A e MX puntati sull'indirizzo IP di questo server e serve le pagine Web con Apache. I record DNS sono stati modificati la scorsa settimana, quindi so che si sono propagati.

risposta

31

Il problema era che i seguenti comandi devono essere eseguiti dopo la modifica /etc/postfix/virtual:

$ sudo postmap /etc/postfix/virtual 
$ sudo service postfix reload 
+0

sudo postmap/etc/postfix/virtual di nuovo mi dà lo stesso errore –

+1

risolto anche per me! Stavo impazzendo con "Errore di ricerca temporanea" negli ultimi due giorni. : | – dotslash