编译安装Postfix-2.10.10
一、先卸載原有的postfix:
[root@fsy-Centos6 ~]# service postfix stop
[root@fsy-Centos6 ~]# chkconfig postfix off
[root@fsy-Centos6 ~]# rpm -e postfix --nodeps
二、為了基于Mysql實現虛擬用戶認證,首先安裝MySQL(我這里通過編譯安裝MySQL-5.6.33(通用二進制格式))
1.將下載好的壓縮包解壓至/usr/local,并進入此目錄
[root@fsy-Centos6 ~]# tar xf mysql-5.6.33-linux-glibc2.5-i686.tar.gz -C /usr/local/
[root@fsy-Centos6 ~]# cd /usr/local/
2.為解壓后的目錄創建一個鏈接,并進入此目錄
[root@fsy-Centos6 local]# ln -sv mysql-5.6.33-linux-glibc2.5-i686 mysql
[root@fsy-Centos6 local]# cd mysql
3.創建MySQL用戶(使其成為系統用戶)和MySQL組
[root@fsy-Centos6 mysql]# groupadd -r -g 306 mysql
[root@fsy-Centos6 mysql]# useradd -g 306 -r -u 306 mysql
4.使mysql下的所有文件都屬于mysql用戶和mysql組
[root@fsy-Centos6 mysql]# chown -R mysql.mysql /usr/local/mysql/*
5.提前準備一個分區用來創建邏輯卷(我這里用/dev/sda5),在此分區上創建邏輯卷并使其可以開機?????自動掛載使用。
[root@fsy-Centos6 mysql]# pvcreate /dev/sda5
[root@fsy-Centos6 mysql]# vgcreate myvg /dev/sda5
[root@fsy-Centos6 mysql]# lvcreate -n mydata -L 512M myvg
[root@fsy-Centos6 mysql]# mke2fs -j /dev/myvg/mydata
#vim /etc/fstab,添加以下內容:
/dev/myvg/mydata ???/mydata ??ext3 ???defaults ???????0?0
[root@fsy-Centos6 mysql]# mkdir /mydata
[root@fsy-Centos6 mysql]# mount -a
6.創建數據目錄,并使其屬于mysql用戶和mysql組,其他人無權限
[root@fsy-Centos6 mysql]# mkdir /mydata/data
[root@fsy-Centos6 mysql]# chown -R mysql:mysql /mydata/data/
[root@fsy-Centos6 mysql]# chmod o-rw /mydata/data/
7.準備安裝所需的開發環境
[root@fsy-Centos6 mysql]# yum -y install gcc
8.準備就緒,開始安裝
[root@fsy-Centos6 mysql]#scripts/mysql_install_db--user=mysql ?--datadir=/mydata/data
9.安裝完成后為了安全,更改/usr/local/mysql下所有文件的權限
[root@fsy-Centos6 mysql]# chown -R root ?.
10.準備啟動腳本,并使其開機自動啟動
[root@fsy-Centos6 mysql]# cp support-files/mysql.server /etc/init.d/mysqld
[root@fsy-Centos6 mysql]# chkconfig --add mysqld
[root@fsy-Centos6 mysql]# chkconfig --list mysqld
11.編輯數據庫配置文件
[root@fsy-Centos6 mysql]# cp support-files/my-default.cnf /etc/my.cnf
#vim /etc/my.cnf,修改和添加以下內容:
datadir = /mydata/data
12.提供執行相關命令所需的環境變量
[root@fsy-Centos6 ~]# vim /etc/profile.d/mysql.sh
添加以下內容:
export PATH=$PATH:/usr/local/mysql/bin
13.至此,MySQL服務配置完成,可以啟動測試
[root@fsy-Centos6 ~]# service mysqld start
三、編譯安裝postfix,(我這里用 postfix-2.10.10.tar.gz,相關軟件包可以到postfix官網下載)
1.解壓
[root@fsy-Centos6 ~]# tar xf postfix-2.10.10.tar.gz
[root@fsy-Centos6 ~]# cd postfix-2.10.10
2.建立postfix和postdrop組和用戶
[root@fsy-Centos6 postfix-2.10.10]# groupadd -g 2525 postfix
[root@fsy-Centos6 postfix-2.10.10]# useradd -g postfix -u 2525 -s /sbin/nologin -M?postfix
[root@fsy-Centos6 postfix-2.10.10]# groupadd -g 2526 postdrop
[root@fsy-Centos6 postfix-2.10.10]# useradd -g postdrop -u 2526 -s /sbin/nologin -M postdrop
3.安裝所需軟件包
[root@fsy-Centos6 postfix-2.10.10]# yum install cyrus-sasl-devel
[root@fsy-Centos6 postfix-2.10.10]# yum install db*-devel
[root@fsy-Centos6 postfix-2.10.10]# yum -y install openssl-devel
4.安裝
[root@fsy-Centos6 postfix-2.10.10]# make makefiles 'CCARGS=-DHAS_MYSQL -I/usr/local/mysql/include -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/include/sasl ?-DUSE_TLS ' 'AUXLIBS=-L/usr/local/mysql/lib -lmysqlclient -lz -lm -L/usr/lib/sasl2 -lsasl2 ?-lssl -lcrypto'
釋義:
CCARGS:指明頭文件位置,CCARGS=-DHAS_MYSQL 指明啟用mysql的連接能
-I/usr/include/mysql 指明mysql的頭文件位置
-DUSE_SASL_AUTH啟用SASL認證
-I/usr/include/sasl指明SASL頭文件位置
-DUSE_TLS使SMTP支持smtps協議
AUXLIBS:指明庫文件位置,-L/usr/lib/mysql 指明MySQL庫文件位置
-lmysqlclient指明MySQL客戶端庫文件
-lz壓縮庫文件
-lm模塊庫文件
-lsslssl的庫文件
[root@fsy-Centos6 postfix-2.10.10]# make
[root@fsy-Centos6 postfix-2.10.10]# make install
按照以下的提示輸入相關的路徑([]號中的是缺省值,”]”后的是輸入值,省略的表示采用默認值)
?
install_root: [/] /
tempdir: [/root/postfix-2.10.10] /tmp/postfix
config_directory: [] /etc/postfix
command_directory: [] /usr/sbin
daemon_directory: [] /usr/libexec/postfix
data_directory: [] /var/lib/postfix
html_directory: [] no
mail_owner: [] postfix
mailq_path: [] /usr/bin/mailq
manpage_directory: [] /usr/local/man
newaliases_path: [] /usr/bin/newaliases
queue_directory: [] /var/spool/postfix
readme_directory: [] no
sendmail_path: [] /usr/sbin/sendmail
setgid_group: [] postdrop
?
在此過程中可能會遇到如下問題:
libmysqlclient.so.18: cannot open shared object file: No such file or directory
1).先確認/usr/local/mysql/lib/下是否有libmysqlclient.so.18這個文件.
ll /usr/local/mysql/lib/|grep libmysqlclient.so.18
2).修改ld.so.conf文件
echo "/usr/local/mysql/lib" >>/etc/ld.so.conf
然后執行ldconfig使其生效
5.現在就可以啟動服務了
[root@fsy-Centos6 ~]# postfix start
完成!
?
轉載于:https://blog.51cto.com/10927734/1853337
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的编译安装Postfix-2.10.10的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 支付宝SDK
- 下一篇: 关于protege的dot error的