操作系统采用debian 3.1(sarge),下面没有独立安装的gcc,make,db,glibc等基本库和软件,邮件系统需要的全部用 apt-get install 包名称 来安装
mail~#apt-get install gcc make
mail~#apt-get install libdb4-*
mail~#apt-get install curses*
mail~#apt-get install termcap*
..............
1、mysql
mail~#wget http://dev.mysql.com/get/Downloads/MySQL-4.1/mysql-4.1.12.tar.gz/from/http://mysql.cbn.net.id/
mail~#groupadd mysql
mail~#useradd -g mysql mysql
mail~#tar zxvf /usr/src/mail/mysql-4.1.12.tar.gz -C /tmp
mail~#cd /tmp/mysql-4.1.12
mail~#./configure --prefix=/opt/mysql --localstatedir=/opt/mysql/data --with-unix-socket-path=/tmp/mysql.sock --with-mysql-user=mysql --with-charset=gb2312 --with-extra-charsets=all
mail~#make
mail~#make install
mail~#chown -R mysql:mysql /opt/mysql/data/
如果没有/opt/mysql/var/mail.err,就手动创建一个
mail~#mkdir /opt/mysql/var
mail~#touch /opt/mysql/var/mail.err
mail~#/opt/mysql/bin/mysqld_safe --user=mysql & #起动mysql服务
mail~#/opt/mysql/bin/mysql #起动mysql客户端
mail~#vi /etc/ld.so.conf,添加
/opt/mysql/lib/mysql
mail~#ldconfig
mail~#cp /opt/mysql/share/mysql/mysql.server /etc/init.d/mysqld
mail~#chmod 755 /etc/init.d/mysqld
mail~#ln -s /etc/init.d/mysqld /etc/rc3.d/S52mysqld
mail~#ln -s /etc/init.d/mysqld /etc/rc5.d/S52mysqld
mail~#ln -s /etc/init.d/mysqld /etc/rc0.d/K25mysqld
mail~#ln -s /etc/init.d/mysqld /etc/rc1.d/K25mysqld
mail~#ln -s /etc/init.d/mysqld /etc/rc2.d/K25mysqld
mail~#ln -s /etc/init.d/mysqld /etc/rc4.d/K25mysqld
mail~#ln -s /etc/init.d/mysqld /etc/rc6.d/K25mysqld
2、apahce
mail~#wget http://apache.justdn.org/httpd/apache_1.3.33.tar.gz
mail~#goupadd www
mail~#useradd -g www -d /dev/null -s /bin/false www
mail~#tar zxvf /usr/src/mail/apache_1.3.33.tar.gz -C /tmp
mail~#cd /tmp/apache_1.3.33
mail~#./configure --prefix=/opt/apache --enable-module=rewrite --enable-shared=rewrite --enable-module=proxy --enable-shared=proxy --enable-module=so --server-uid=www --server-gid=www
mail~#make
mail~#make install
mail~#/opt/mysql/var# /opt/apache/bin/apachectl start #起动apache服务器
mail~#cd /opt/apache/bin/
mail~#cp apachectl /etc/init.d/httpd
mail~#cd /etc/init.d/
mail~#chmod 755 httpd
mail~#ln -s /etc/init.d/httpd /etc/rc3.d/S51httpd
mail~#ln -s /etc/init.d/httpd /etc/rc5.d/S51httpd
mail~#ln -s /etc/init.d/httpd /etc/rc0.d/K15httpd
mail~#ln -s /etc/init.d/httpd /etc/rc1.d/K15httpd
mail~#ln -s /etc/init.d/httpd /etc/rc2.d/K15httpd
mail~#ln -s /etc/init.d/httpd /etc/rc4.d/K15httpd
mail~#ln -s /etc/init.d/httpd /etc/rc6.d/K15httpd
3、php4
mail~#wget http://cn2.php.net/get/php-4.3.11.tar.gz/from/cn.php.net/mirror
mail~#tar zxvf /usr/src/mail/php-4.3.11.tar.gz -C /tmp
mail~#cd /tmp/php-4.3.11
mail~#./configure --prefix=/opt/php4 --with-xml --with-mysql=/opt/mysql --with-mysql-sock=/tmp/mysqld.php4.sock --with-apxs=/opt/apache/bin/apxs
mail~#make
mail~#make install
mail~#cp php.ini-dist /opt/php4/lib/php.ini
修改/opt/apache/conf/httpd.conf,添加php4支持,添加内容如下:
#php 4
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
另更改
<IfModule mod_dir.c>
DirectoryIndex index.html
</IfModule>
为
<IfModule mod_dir.c>
DirectoryIndex index.html index.php
</IfModule>
mail~#vi /opt/apache/htdocs/test.php,内容如下
<?php
phpinfo();
?>
mail~#/opt/mysql/var# /opt/apache/bin/apachectl restart #重启apache服务器
使用lynx或常用的浏览器如IE、firefox,浏览http://ip/test.php,看到了PHP的信息页面,OK
4、openssl
mail~#wget http://www.openssl.org/source/openssl-0.9.8.tar.gz
mail~#tar zxvf /usr/src/mail/openssl-0.9.8.tar.gz -C /tmp
mail~#cd /tmp/openssl-0.9.8
mail~#./configure --prefix=/opt/openssl
mail~#make
mail~#make install
mail~#ln -s /opt/openssl/include/openssl /usr/include/openssl
5、cyrus-sasl2
mail~#wget http://ftp.andrew.cmu.edu/pub/cyrus-mail/cyrus-sasl-2.1.21.tar.gz
mail~#tar zxvf /usr/src/mail/cyrus-sasl-2.1.21.tar.gz -C /tmp
mail~#cd /tmp/cyrus-sasl-2.1.21
mail~#./configure --prefix=/opt/sasl2 --enable-login --enable-plain --enable-sql --enable-pwcheck --disable-anon --disable-digest --with-mysql=/opt/mysql --with-mysql-includes=/opt/mysql/include/mysql --with-mysql-libs=/opt/mysql/lib/mysql --with-saslauthd=/var/run
mail~#make
如果出现下面的错误:
auth_getpwent.c:48:20: des.h: No such file or directory
make[3]: *** [auth_getpwent.o] Error 1
make[3]: Leaving directory `/tmp/cyrus-sasl-2.1.21/saslauthd‘
make[2]: *** [all] Error 2
make[2]: Leaving directory `/tmp/cyrus-sasl-2.1.21/saslauthd‘
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/tmp/cyrus-sasl-2.1.21‘
make: *** [all] Error 2
修改/tmp/cyrus-sasl-2.1.21/saslauthd/Makefiles内的变量CFLAGS添加-I/opt/openssl/include/openssl
或者直接
mail~#cp /tmp/cyrus-sasl-2.1.21/mac/libdes/public/des.h /tmp/cyrus-sasl-2.1.21/
mail~#make
mail~#make install
mail~#vi /etc/ld.so.conf #添加以下内容
/usr/lib/sals2
/opt/sasl2/lib/sasl2
mail~#ldconfig
6、postfix
mail~#wget http://postfix.it-austria.net/releases/official/postfix-2.2.4.tar.gz
mail~#groupadd postfix
mail~#ueradd -g postfix -d /dev/null -s /bin/false postfix
mail~#make makefiles ‘CCARGS=-DHAS_MYSQL -I/opt/mysql/include/mysql -DUSE_SASL_AUTH -I/opt/sasl2/include/sasl‘ ‘AUXLIBS=-L/opt/mysql/lib/mysql -lmysqlclient -lm -lz -L/opt/sasl2/lib/sasl2 -lsasl2‘
mail~#make install #一路回车默认就可以了
mail~#vi /etc/init.d/postfix
#!/bin/sh
start() {
#Start daemons.
echo -n "Starting postfix: "
/usr/sbin/postfix start
}
stop() {
#Stop daemons.
echo -n "Shutting down postfix: "
/usr/sbin/postfix stop
}
reload(){
echo -n "Reloading postfix: "
/usr/sbin/postfix reload
}
restart(){
stop
start
}
abort(){
/usr/sbin/postfix abort
}
flush(){
/usr/sbin/postfix flush
}
check(){
/usr/sbin/postfix check
}
case $1 in
start)
start
;;
stop)
stop
;;
reload)
reload
;;
restart)
restart
;;
abort)
abort
;;
flush)
flush
;;
check)
check
;;
*)
echo "Usage: postfix {start|stop|restart|reload|abort|flush|check}"
esac
mail~#chmod 755 /etc/init.d/postfix
mail~#ln -s /etc/init.d/postfix /etc/rc3.d/S53postfix
mail~#ln -s /etc/init.d/postfix /etc/rc5.d/S53postfix
mail~#ln -s /etc/init.d/postfix /etc/rc0.d/K35postfix
mail~#ln -s /etc/init.d/postfix /etc/rc1.d/K35postfix
mail~#ln -s /etc/init.d/postfix /etc/rc2.d/K35postfix
mail~#ln -s /etc/init.d/postfix /etc/rc4.d/K35postfix
mail~#ln -s /etc/init.d/postfix /etc/rc6.d/K35postfix