当前位置:首页文章首页 IT学院 IT技术

详解Linux下的postfix安装

作者:  来源:  发布时间:2012-2-16 17:16:05  点击:

   邮件系统简介

   邮件系统组成部分: MTA MSA ,MUA,MDA,MAA

   1 MUA :是Mial User Agent 的简称 ,是邮件系统的客户端程序,它提供了阅读,发送和接受电子邮件的用户接口,如:linux中的Mail ,Windowns中的Foxmail,Outlook 等

   2 MSA :是Mail Submmission Agent的简称。是邮件提交代理,负责消息有MTA发送之前必须完成所有准备工作和错误检测,MSA是在MUA和MTA之间插入了一个头脑清醒的检测员,对所有的主机名,从MUA 得到的头信息等信息进行检测

   3 MTA:是Mail Transfer Agent 的简称,邮件转发代理,负责邮件的存储和转发;监视用户的代理请求,根据电子邮件的目标地址找出对应的电子邮件服务器,并将信件在服务器之间传输并且将接受到的邮件进行缓冲。Linux 下有sendmail .Postfix,qmail 等

   4 MDA :是Mail Ddlivery Agent 的简称。邮件投递代理,从MTA接受邮件并进行适当的本地投递,可以投递一个本地用户,一个邮件列表,一个文件或者是一个程序

   5 MAA :是Mail Access Agent。邮件访问代理,用于将用户连接到系统邮件库,使用POP或者Imap协议收取邮件。Linux 下常用的MAA有,Cyrus-IMAP,COURIER-IMAP等邮件中继,当邮件的目的传输是一旦源地址和目的地址都不是本地系统,那么本地系统就是邮件中继站(即是中转站)

  注意:在安装postfix或多或少遇到一些error,我在文档

  http://1413570.blog.51cto.com/1403570/780703

  记录了一部分

  或许记录的不完全,再遇到error时,可以多查找一些资料文件

  第一:安装cmake工具

  安装步骤一点点的来,先从LAMP平台来安装,先安装mysql,我这是一台新安装的linux系统,所以遇到的问题可能会比较多一点

  因为mysql自5.5版本以后都是需要借助工具cmake,所以先从安装cmake工具开始

  解压cmake的包,之后编译安装即可

  [root@server250 cmake-2.8.4]# ./configure && make && make install

  中间过程

  [ 56%] Building C object Source/CursesDialog/form/CMakeFiles/cmForm.dir/fty_enum.o

  [ 56%] Building C object Source/CursesDialog/form/CMakeFiles/cmForm.dir/fty_int.o

  [ 56%] Building C object Source/CursesDialog/form/CMakeFiles/cmForm.dir/fty_ipv4.o

  [ 57%] Building C object Source/CursesDialog/form/CMakeFiles/cmForm.dir/fty_num.o

  [ 57%] Building C object Source/CursesDialog/form/CMakeFiles/cmForm.dir/fty_regex.o

  Linking C static library libcmForm.a

  第二安装mysql

  Ok,之后开始安装mysql,先建立mysql的用户名,组名

  [root@server250 ~]# groupadd mysql

  [root@server250 ~]# useradd -g mysql -s /sbin/nologin -M mysql

  [root@server250 postfix]# tar zxvf mysql-5.5.19.tar.gz

  [root@server250 mysql-5.5.19]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS:STRING=utf8,gbk -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/data/mysql -DMYSQL_TCP_PORT=3306

  cp support-files/my-medium.cnf /etc/my.cnf

  [root@server250 mysql]# chown -R mysql:mysql /usr/local/mysql/

  [root@server250 mysql]# ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/

  Installing MySQL system tables...

  OK

  Filling help tables...

  OK

  [root@server250 ~]# echo "/usr/local/mysql/lib/" >> /etc/ld.so.conf

  [root@server250 ~]# ldconfig -v

  [root@server250 ~]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

  cp:是否覆盖“/etc/init.d/mysqld”? y

  [root@server250 ~]# chmod 755 /etc/init.d/mysqld

  [root@server250 ~]#

  [root@server250 ~]#

  [root@server250 ~]# service mysqld start

  [root@server250 ~]# netstat -anpt | grep 3306

  tcp 0 0 :::3306 :::* LISTEN 27783/mysqld

  设置mysql的密码

  [root@server250 ~]# mysqladmin -u root password "biao_123"

  第三安装cyrus-sasl

  [root@server250 postfix]# tar zxvf cyrus-sasl-2.1.22.tar.gz

  [root@server250 cyrus-sasl-2.1.22]# ./configure --prefix=/usr/local/sasl2 --disable-gssapi --disable-anon --disable-digest --enable-plain --enable-login --enable-sql --with-mysql=/usr/local/mysql/ --with-mysql-includes=/usr/local/mysql/include/mysql/ --with-mysql-libs=/usr/local/mysql/lib --with-authdaemond=/usr/local/courier-authlib/var/spool/authdaemon/socket

  config.status: creating Makefile

  config.status: creating saslauthd.h

  config.status: executing depfiles commands

  Configuration Complete. Type 'make' to build.

  到这里就可以了

  Make && make install

  gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../include -I../lib -I../sasldb -I../include -I/usr/local/mysql//include/mysql -Wall -W -g -O2 -MT sql.lo -MD -MP -MF .deps/sql.Tpo -c sql.c -fPIC -DPIC -o sql.lo

  sql.c:65:19: error: mysql.h: No such file or directory

  解决办法:

  在你的路径:I/usr/local/mysql//include/mysql 下面看看有没有 .h的文件,没有的话,在mysql是上一层目录中,有这些文件,拷贝一份到mysql下

  [root@server250 include]# cp *.sh mysql

  Make && make install

  这个安装好后,要关掉系统自带的sasl2

  mv /usr/lib/libsasl2.a /usr/lib/libsasl2.a.bak

   mv /usr/lib/libsasl2.so.2.0.22 /usr/lib/libsasl2.so.2.0.22.OFF、

  mv /usr/lib/sasl2 /usr/lib/sasl2.OFF

  重新创建新编译的sasl库文件

  [root@server250 ~]# ln -sv /usr/local/sasl2/lib/* /usr/lib/

  创建指向“/usr/local/sasl2/lib/libsasl2.la”的符号链接“/usr/lib/libsasl2.la”

  创建指向“/usr/local/sasl2/lib/libsasl2.so”的符号链接“/usr/lib/libsasl2.so”

首页 上一页 [1] [2] [3] [4] [5]  下一页 尾页
上一篇:tar包的应用 下一篇:

相关软件

相关文章

文章评论

软件按字母排列: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z