Назад | Перейти на главную страницу

Почему из-за ошибки карты NIS postfix не может разрешить локальный псевдоним?

Postfix перестал отправлять мне почту с сервера Ubuntu 10.04LTS. Я потратил от часа до двух на проверку /etc/aliases, запуск и повторный запуск sudo newaliases и sudo postfix reload, поиск моей проблемы в Интернете и т. д.

Пример записи журнала:

Dec  9 11:35:32 localhost postfix/local[1901]: warning: lookup owner-database, NIS domain nisdomain, map mail.aliases: no such map in server's domain
Dec  9 11:35:32 localhost postfix/local[1902]: B33FFACE000: to=<root@server9>, orig_to=<root>, relay=local, delay=833, delays=833/0.02/0/0.09, dsn=4.3.0, status=deferred (alias database unavailable)

я я используя NIS и я не есть mail.aliases карта, но мой /etc/aliases файл в порядке. Он все равно должен работать, правда? Неправильно.

Оказывается, проблема была в NIS. В alias_maps Директива была установлена ​​установщиком в закомментированной строке, удаление второй записи исправило ее.

alias_maps = hash:/etc/aliases, nis:mail.aliases

изменить на

alias_maps = hash:/etc/aliases

Я ожидаю, что в исходной строке Postfix сначала заглянет в /etc/aliases, затем в mail.aliases. Кто-нибудь хочет прокомментировать, почему postfix не отправляет / не должен отправлять вообще, а не только действительную запись из /etc/aliases?

Перед поиском псевдонима postfix проверит все база данных независимо от того, доступна она или нет.

Псевдокод

if all mapping was OK (file was found, external server was reachable)
    for each map in maps_array:
        if found in map
            return result
else 
    fail. give warning in maillog