qmail相关FAQ[1]

[入库:2005年9月21日] [更新:2007年3月24日]

本文简介:


本帖收集论坛内的Qmail相关的FAQ。
抄袭无双的话,“在论坛的回答中有许多好的回答,但是如果每一个都要写到精华的话 
那么精华又未免太多了”;同时也为了避免各位重复讨论相同的小问题,我就整理了这篇文档。

另外,涉及的方面太多,我不可能一一尝试,如有谬误,请不吝赐教。

建议大家把自己认为好的回答写到这个帖子的回复中,并写上讨论的帖子连接 

准备分几个部分。


第一部分:MTA

第二部分:igenus

第三部分: sqwebmail

第四部分: vpopmail + qmailadmin

各位还可以补充。

我们会定期将各位提供的FAQ和论坛上的好东西整理进去,并为各位作者署名。


第一部分:MTA

[b:faa5b147e2]1: 怎么加快 qmail 投递邮件速度?[/b:faa5b147e2]

A: /var/qmail/control下面是qmail的控制文件,这两个文件:
  Concurrentcylocal default: 10 最大本地同时传送数 
  Concurrencyremote default: 20 最大远程同时传送数

[b:faa5b147e2]2: Qmail的主要配置文件有哪些?[/b:faa5b147e2]
A: http://chinaunix.net/forum/viewtopic.php?t=1126

[b:faa5b147e2]3: qmail+LDAP安装配置方法? (netloafer)[/b:faa5b147e2]
A: http://chinaunix.net/forum/viewtopic.php?t=1119

[b:faa5b147e2]4:Qmail如何限制附件的大小呢??[/b:faa5b147e2]
A:
在/var/qmail/control/databytes 文件中设置附件的大小,可以实现对qmail附件大小的限制,一般安装完成后,这个文件是没有的,你可以自己创建。
smtp方式是以qmail的databytes作限制的

[b:faa5b147e2]5: 用qmail怎么封mailfrom? (peng)[/b:faa5b147e2]
A:使用qmail控制文件封整个域或邮件地址 
vi/var/qmail/control/badmailfrom 
这个控制文件实现拒收邮件功能的,每一个地址要单独一行。而且,不用重起qmail就能生效。 
例如: 
peng@96633.net-----限制一个特定的用户 
@sina.com----限制整个域中的邮件

B:使用tcprules规则文件封IP地址(gadfly)。 

#网段 
10.10.10.:deny 
#ip 
10.10.10.1:deny 

重新生成cdb文件就好了


[b:faa5b147e2]6. 如何让队列中的邮件马上传递? (peng) [/b:faa5b147e2]

A:
# kill -HUP qmail-send 

要删除队列中的邮件 

1) 停止QMAIL 
2) mv /var/qmail/queue/lock /var/qmail/;find /var/qmail/queue/ -type f -exec rm {} \; ;mv /var/qmail/lock /var/qmail/queue/
3) 重启QMAIL. 
队列中的邮件包含在以下目录中 /var/qmail/queue/{info,mess,remote,local}/hash/#number 

[b:faa5b147e2]7、在邮件队列中快速删除从一个地方发过来但又不存在的邮件? (peng)[/b:faa5b147e2]
A:
 设bad.jite.com是这个域。可以键入以下命令 

# echo # > ~alias/.qmail-baddomain-default 
# echo bad.jite.com:alias-baddomain>> /var/qmail/control/virtualdomains 
# echo bad.jite.com:127.0.0.1 >> /var/qmail/control/smtproutes 
然后运行/var/qmail/bin/qmail-tcpok,给qmail-send 一个HUP信号 

[b:faa5b147e2]8、如何删除队列中的大量广告信息? (peng)[/b:faa5b147e2]
A:
先停止QMAIL. 
1) 停止qmail, qmail-smtpd 
2) 在以下默认目录下 /var/qmail/queue/mess 
find . -type f -exec grep "^Subject:" {} \; -print -exec rm {} \;
3) 运行queue-fix清除相关文件, 
4) 重启qmail.

[b:faa5b147e2]9、rh9下编译qmail出错:
./load auto-str substdio.a error.a str.a 
substdio.a(substdo.o)(.text+0x43): In function `allwrite': 
: undefined reference to `errno' 
collect2: ld returned 1 exit status 
make: *** [auto-str] Error 1 
什么问题?(microcao &linuxsky)[/b:faa5b147e2]

A: errno 这个错误是因为 RH9 系统使用了新的 GLIBC 库 2.3.1 造成的 
需要修改 QMAIL 的代码才能编译另外 DJB 的几乎所有程序都存在这个问题 

QMAIL 官方已经提供了推荐的补丁 

http://www.qmail.org/top.html#patches

打个这个补丁就行了
http://qmail.mirrors.space.net/moni.csi.hu/pub/glibc-2.3.1/qmail-1.03.errno.patch 
至于tcpserver可能也有相同的问题,patch都可以在以下目录找到
http://qmail.mirrors.space.net/moni.csi.hu/pub/glibc-2.3.1/ 

[b:faa5b147e2]10:Apr 7 17:52:15 www qmail: 1049709135.048259 delivery 38: deferral: Uh-oh:_home_directory_is_writable._(#4.7.0)如何解决? [/b:faa5b147e2]
A:需要将用户的邮件目录修改为700
由于vpopmail利用的是wildcard方式匹配的,所以homedir必须从domain的目录开始。假设gadfly@test.com目录是/home/vpopmail/domains/test.com/gadfly/
这样修改属性:
cd /home/vpopmail/domains/;chmod 700 test.com test.com/gadfly test.com/gadfly/Maildir/

[b:faa5b147e2]11:.qmail file is writable错误如何解决?(xmy)[/b:faa5b147e2]
A:用户目录下的.qmail文件组和其它用户属性不能可写。
至于vpopmail方式, 域目录下的.qmail-*必须去掉写属性
chmod go-w .qmail-*
或者
chmod 600 .qmail-*
此外还需注意的文件属性有libmysqlclient.so.10.0.0
chmod 755 /usr/lib/libmysqlclient.so.10.0.0


[b:faa5b147e2]12: 每发完一封 
邮件后都会自动回复一封内容大概就是说发不出去的意思。自动回复的信件内容是这样的 
.....
<log@yourdomain>: 

本文关键:qmail相关FAQ
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top