CNFUG服务器实现过程( 三 )


#make
#make install-strip
#chmods /home/vpopmail/bin/vchkpw
#cd /home/vpopmai/bin/
#./vadddomain cnfug.org(添加一个cnfug.org的域,按提示输入postmaster的密码!)
#./vdeldomain cnfug.org(将cnfug.org域删除!目的是为了修改vpopmail的数据表的结构)
mysql>use vpopmail;
mysql>drop tables vpopmail;
在mysql中建立数据库vpopmail在数据库中建立如下表: mysql>
create table vpopmail (
pw_id int(5) unsigned NOT NULL auto_increment,
pw_name varchar(32) NOT NULL default "",
pw_domain varchar(64) NOT NULL default "",
pw_passwd varchar(40) NOT NULL default "",
pw_uid int(11) default NULL,
pw_gid int(11) default NULL,
pw_gecos varchar(64) default NULL,
pw_dir varchar(160) default NULL,
pw_shell varchar(20) default NULL,
pw_clear_passwd varchar(16) default NULL,
PRIMARY KEY (pw_id),
KEY pw_name (pw_name,pw_domain)
) TYPE=MyISAM;再次通过/home/vpopmail/bin/vadddomain cnfug.org建立cnfug.org的域#echo "/usr/local/qmail/bin/tcpserver -c 100 -v -l cnfug.org -U -H -R 0 pop3 /usr/local/qmail/bin/qmail-popup cnfug.org /home/vpopmail/bin/vchkpw /usr/local/qmail/bin/qmail-pop3d Maildir 2>&1 | /usr/local/qmail/bin/splogger &">/etc/qmail/pop.sh
#chmod 755 /etc/qmail/pop.sh
安装ezmlm-0.53
在MySQL建立相关的用户和表 mysql> use mysql
Database changed
mysql> create database ezmlm;
mysql> grant select,insert,update,delete,create,drop on ezmlm.* to ezmlm@localhost identified by "12345678"; 解压ezmlm #tar zxvf ezmlm-0.53.tar.gz
#tar zxvf ezmlm-idx.0.40.tar.gz
#cp -Rp ezmlm-idx.0.40/* ezmlm-0.53/
#cd ezmlm-0.53
#patch < idx.patch 修改conf-bin文件中的路径为/usr/local/qmail/bin/ezmlm
修改conf-man文件中的路径为/usr/share/man
修改conf-qmail文件中的路径为/usr/local/qmail #cd sub_mysql 编辑sub_sqlcc修改mysql的路径为/server/mysql/include/mysql
编辑sub_sqlld修改为-L/server/mysql/lib/mysql -lmysqlclient -lm -lz
开始编译 #make mysql #MySQL的支持
#make clean
#make
#make man
#make ch_GB #中文支持
#make setup 修改/usr/local/qmail/bin/ezmlm/ezmlmrc将"To:##L@##H"修改为"To:<#L#>@<#H#>"
对邮件列表字符集的修改,在/home/vpopmail/domains/xxx/questions/下建立一个charset的文件!~ #touch charset
#chown vpopmail:vchkpw charset
#chmod go-r charset
#vi charset 添加一行gb2312 这样你发一份邮件到questions-help@xxx.xxx 你收到的信息将可以正确的显示中文了!在你建立一个基于MySQL的maillist之前,你必须保证ezmlm库中已存在一个对应的表:
Ex:你想建一个基于MySQL的maillist:questions /usr/local/qmail/bin/ezmlm/ezmlm-mktab -d questions | /server/mysql/bin/mysql -uezmlm -p12345678 -f ezmlm 这样就在ezmlm库中为questions建立了一系列相关表格: mysql> use ezmlm
Database changed
mysql> show tables;
-------------------------
| Tables_in_ezmlm |
-------------------------
| questions |
| questions_allow |
| questions_allow_slog |
| questions_cookie |
| questions_deny |
| questions_deny_slog |
| questions_digest |
| questions_digest_cookie |
| questions_digest_mlog |
| questions_digest_slog |
| questions_mlog |
| questions_mod |
| questions_mod_slog |
| questions_slog |
------------------------- 在后面将通过QmailAdmin进行邮件列表的管理


安装autorespond
2.11安装autorespond
(对于qmailadmin-0.74版以上,必须使用2.0以上的版本) # tar zxvf autorespond-2.0.0.tar.gz
# cd autorespond-2.0.0
# make
# make install
# cp autorespond /usr/local/bin#gcc -Wall -o autorespond autorespond.c
#cp autorepond /usr/local/qmail/bin/autorespond

安装Qmailadmin ./configure --enable-vpopmaildir=/home/vpopmail --enable-HTMLdir=/www/cnfug/mail/htdocs --enable-cgibindir=/www/cnfug/mail/cgi-bin --enable-imagedir=/www/cnfug/mail/htdocs/images/qmailadmin --enable-imageurl=/images/qmailadmin --with-htmllibdir=/www/cnfug/mail/htdocs --enable-qmaildir=/usr/local/qmail --enable-cgipath=/cgi-bin/qmailadmin --enable-autoresponder-bin=/usr/local/qmail/bin --enable-ezmlmdir=/usr/local/qmail/bin/ezmlm --enable-modify-quota=yes

推荐阅读