【Linux】不同操作系统的差异还真大

来源:互联网 发布:mysql控制台删除用户 编辑:程序博客网 时间:2024/06/06 19:03

这段时间分别在 CentOS、Ubuntu 和 Enterprise Linux 上安装配置了邮件系统,结果发现除了相关配置文件存放位置不同外,就连配置文件里的配置信息也有差异。

一、所使用软件
数据库/目录服务:MySQL
Web服务:apache + php
邮件传输代理(MTA):postfix
邮件投递代理(MDA):maildrop
IMAP/POP3服务:courier-imap
SMTP认证库:Cyrus-SASL
其他数据认证库:Courier-Authlib
WebMail系统:ExtMail

二、安装说明
CentOS 利用 yum 和 rpm 安装,Ubuntu 利用 apt-get 安装,所有软件都安装在默认位置。
EL 采用源码编译安装,所有软件指定安装位置。

三、配置文件存放区别
Courier-Authlib 配置文件 authdaemonrc,authmysqlrc
CentOS:/etc/authlib
Ubuntu:/etc/courier
Cyrus-SASL 配置文件 smtpd.conf
CentOS:/usr/lib/sasl2
Ubuntu:/etc/postfix/sasl
—— 当时在配置 Ubuntu 时,就为 smtpd.conf 文件耽误了很多时间,还好有一个办法是特别实用的,就是当找不到想找的文件时,可以通过下面的方法获得信息:
* 有默认配置文件的,如:authdaemonrc
CentOS:
# rpm -qa | grep courier-authlib    -- 查找 courier-authlib
# rpm -ql courier-authlib-0.63.0-1    -- 查找 courier-authlib-0.63.0-1 的文件安装位置,其中的 courier-authlib-0.63.0-1 就是由前一指令查出
Ubuntu:
# dkpg -l | grep sasl    -- 查找 Cyrus-SASL
# dpkg -L sasl2-bin    -- 查找 Cyrus-SASL 的文件安装位置
* 无默认配置文件的,如:smtpd.conf
只能通过网上搜索,看看有没有相关的资料。只要能找到,哪怕在一个大篇幅文章里就只有一句提到,也算幸运了。

四、文件配置差异
在配置 Ubuntu 时花费时间最多的就是遇到 /etc/log/mail.log 里的这个错误:
postfix/trivial-rewrite[985]: warning: connect to mysql server localhost: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'
开始认为是 /var/run/mysqld/mysqld.sock 的授权问题,但设置了 777 不行,接着给这文件作了一个连接,也不行,想想干脆更改了这个 mysqld.sock 的存放位置,错误结果还是一样。
在网上查了很久,看到有提到将配置文件里的 localhost 更改为 127.0.0.1,花了很多时间重新将各配置文件重做一遍,将所有的 localhost 都更改为 127.0.0.1,终于解除了错误,完成安装。
—— 老实说:到现在也没想明白,这是什么原因,系统配置文件 /etc/hosts 里清清楚楚地指明 127.0.0.1 localhost,而其他不管是 ping,还是 telnet 都是 ok 的,就是这个邮件系统不认账,郁闷!

由于 EL 采用指定安装位置的方式,因此没有可比性,不过 EL 的配置跟 CentOS 的配置没有区别,可以直接复制过去使用。

原创粉丝点击