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

CentOS: невозможно запустить Postfix после обновления до версии 3

Мы используем CentOS 7 и только что обновили Postfix до версии 3. Postfix не запускается после обновления. Во-первых, в журнале есть проблема совместимости, но мы решили ее, как было предложено (postconf compatibility_level=2).

Более серьезная проблема

postfix: /usr/libexec/postfix/post-install: Error: /etc/postfix/postfix-files is not a file

Абсолютно застрял там. Мы пытались установить chmod 777 на /etc/postfix, мы пытались использовать postfix-install, но ничего не помогло.

Наконец нашел решение. /etc/postfix/postfix-files отсутствовал, поэтому мы просто использовали:

touch /etc/postfix/postfix-files

... и проблема решена.

Postfix ищет файл postfix-files в каталоге, указанном в meta_directory вариант конфигурации. Некоторые пакеты, похоже, устанавливают это в /usr/share/postfix. Мой main.cf (и, предположительно, ваш) был установлен на /etc/postfix/ вместо этого, и это похоже на значение по умолчанию, которое postfix использует в отсутствие какой-либо конфигурации. (Пакеты, которые помещают его в другое место, помещают правильный путь в свой main.cf по умолчанию, но это, конечно, не помогает, если вы не используете их конфигурацию по умолчанию и вместо этого используете свой собственный файл.) Решение состоит в том, чтобы установить его в main. .cf туда, где его фактически помещает установочный пакет, например

meta_directory = /usr/share/postfix

Та же проблема после обновления постфикса из http://repos.oostergo.net/7/postfix-3.2/

Кажется, что файл установлен в /usr/share/postfix/ хотя, поэтому лучшим решением, чем просто создание пустого файла, вероятно, будет его копирование в место, где post-install ожидает найти:

cp -a /usr/share/postfix/postfix-files /etc/postfix/