Chinaunix首页 | 论坛 | 博客
  • 博客访问: 138358
  • 博文数量: 27
  • 博客积分: 1450
  • 博客等级: 上尉
  • 技术积分: 255
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-14 20:14
文章分类

全部博文(27)

文章存档

2012年(2)

2011年(3)

2010年(2)

2008年(20)

我的朋友

分类: LINUX

2008-06-13 10:04:06

尝试了一下后台使用 qmail,管理前台则使用 vqadmin+qmailadmin, WebMail则使用了extmail
分别按qmail及extmail的文档安装完后需要进行如下更改
 
1.qmail要建立一个连接,好像extmail发邮件时是用/usr/bin/sendmail发送的
ln -s /var/qmail/bin/sendmail /usr/bin/
 
2.qmail是mysql支持的,需更改 extmail配置文件 /var/www/extsuite/extmail/webmail.cf
SYS_SESS_DIR = /tmp/
#验证方式
SYS_AUTH_TYPE = mysql
#所有用户在一个表中
SYS_AUTH_SCHEMA = vpopmail
SYS_CRYPT_TYPE = crypt
SYS_MYSQL_USER = vpopmailuser(安装qmail时,用于访问vpopmail数据库的用户名)
SYS_MYSQL_PASS = ******(安装qmail时,用于访问vpopmail数据库的密码)
SYS_MYSQL_DB = vpopmail
SYS_MYSQL_HOST = localhost
SYS_MYSQL_SOCKET = /var/run/mysqld/mysqld.sock
SYS_MYSQL_TABLE = vpopmail
SYS_MYSQL_ATTR_USERNAME = pw_name
SYS_MYSQL_ATTR_DOMAIN = pw_domain
SYS_MYSQL_ATTR_PASSWD = pw_passwd
SYS_MYSQL_ATTR_CLEARPW = pw_clear_passwd
SYS_MYSQL_ATTR_QUOTA = pw_shell
#SYS_MYSQL_ATTR_NDQUOTA = netdiskquota
SYS_MYSQL_ATTR_NDQUOTA = '104857600S' (这个好像不起什么作用)
SYS_MYSQL_ATTR_HOME = pw_dir
 
3.vpopmail表中要添加一个字段 active, 不然无法登录(提示帐号被禁用)
mysql -u root -p
use vpopmail
alter table vpopmail add column active int default 1;
 
4.发邮件时可以会出一个错误
gettimeofday: Invalid argument at /var/www/extsuite/extmail/libs/Ext/Storage/Maildir.pm line 670
更改/var/www/extsuite/extmail/libs/Ext/Storage/Maildir.pm中的_gen_time_part函数为
sub _gen_time_part {
    use Time::HiRes ;
    eval {
        require 'sys/syscall.ph';
    };
    if($@) { return time; }
    return time unless (defined &SYS_gettimeofday);
    #my $start = pack('LL', ());
    my $start = ("\0" x 4) x 2;
    $start = [Time::HiRes::gettimeofday];
    #syscall(&SYS_gettimeofday, $start, undef) != -1
        #or die "gettimeofday: $!";
    #my @start = unpack('LL', $start);
    #return $start[0].'.M'.$start[1];
    (my $seconds, my $microseconds) =  [Time::HiRes::gettimeofday];
    return $seconds;
}
这样就不报错了,但原因是什么我是不清楚.
 
5. 更改网络磁盘默认大小
  由于 vpopmail表中没有 NetDiskQuota字段, 默认状态下网络磁盘大小为 10M
/var/www/extsuite/extmail/libs/Ext/App.pm中有一个默认参数
 $ENV{FILEMAN_QUOTA} = qtstr_fmt($info->{NetDiskQuota}) || '10485760S'; # 10MB default for fileman
将 10485760S 改为 104857600S即可将默认的10M 改为100M

6. 定期删除/tmp下的session文件
  加入crontab任务(每天早五点删除/tmp下一天前的文件)
0 5 * * * find /tmp/ -type f -mtime +1 -exec /bin/rm {} \;
阅读(1817) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~