postfix 无法启动 CentOS 6.5

postfix 无法启动 CentOS 6.5

免责声明:我是 CentOS 的新手,所以如果我忽略了一些简单的事情,请原谅我。

这是我的问题:

我最近刚刚将我的服务器重新格式化为 CentOS 6.5 x64,但在使用 postfix 时遇到了问题。

我正在遵循这个指南:http://www.krizna.com/centos/setup-mail-server-in-centos-6/安装 postfix MTA。

我已遵循所有步骤,但是当我尝试启动服务器(服务 postfix 启动)时出现此错误:

启动后缀:[失败]

我查看了我的邮件日志和消息日志,没有发现任何有关无法启动的错误。我是否应该查看其他日志?

当我运行命令时

后配置-n

我收到以下错误:

postconf:加载共享库时出错:libmysqlclient.so.16:无法打开共享对象文件:没有此文件或目录

我从源代码编译了最新版本的 MySQL,它可以与 apache 一起使用,但我找不到 libmysqlclient.so.16,只能找到 libmysqlclient.so.18。是不是因为我的 MySQL 版本对于 postfix 版本来说太新了?

Postfix 版本 2.6.6(使用 yum 安装)MySQL 版本 5.6.19(从源代码安装)

更奇怪的是,我有另一台运行相同操作系统的服务器(从同一磁盘安装),并且 postfix 启动正常。(使用 CentOS 附带的 postfix,我的另一台服务器上没有安装任何东西)。这可能是我的操作系统安装方式的问题吗?

这个问题让我抓狂,任何帮助都将不胜感激。

注意:所有这一切都是以 root 身份进行的,我真淘气!:-)

答案1

您对 linux/Centos 等缺乏经验,因此您必须使用 yum 安装程序,编译 MySQL 服务器并使用 yum 安装其他软件包 - 永远不要再这样做了。检查您已有的存储库,至少我知道 IUS 和 REMI 有最新的 mysql 软件包和所有依赖项。然后运行:
yum install mysql mysql-server

答案2

我通过安装 mysql-community-libs-compat 包解决了这个问题。您需要做的是:

 yum provides "/usr/lib64/libmysqlclient.so.16"

之后你需要运行如下命令:

yum install mysql-community-libs-compat.x86_64

现在重新启动 postfix

答案3

您遇到问题的原因是 postfix(和其他几个包)针对该libmysqlclient.so.16库进行编译。当您更新到较新版本的 MySQL 时,您仍然必须提供此库来满足依赖关系。

IUS 项目有一个名为 的软件包mysqlclient16可以为您解决这个问题。此外,我们还有适用于 MySQL 5.5、5.6 和 5.7 的软件包可供安装(分别为mysql55mysql56umysql57u)。大多数人没有时间从源代码进行编译,尤其是当您考虑到持续的维护成本以保持源安装更新和安全时。

相关内容