原文地址:http://space.doit.com.cn/51460/viewspace-4943.html
在配置Postfix中遇到的一些问题及相关的解决方法,希望在遇到相同的问题时能起参考的作用.在这里有必要提到一些相关的日志文件,因为很多的错误都会在日志中有体现,日志文件的存放位置可以由用户定义,这里所说的日志文件是按前面的文章中定义的存放位置(http://waringid.blog.51cto.com/65148/58210),请自行参照更改.
显示信件列表:postqueue -p
显示信件內容:postcat -q Queue_ID
刪除各別信件:postsuper -d Queue_ID
全部刪除:postsuper -d ALL
扣住信件:postsuper -h Queue_ID
回复:postsuper -H Queue_ID
重新排程:
postsuper -r Queue_ID
postsuper -r ALL
清除信件:
postqueue -f (全部)
postqueue -s 主机名称(个别对象)
要查看Postfix的当前主要配置文件的存放路径:
postconf -n
系统日志:tail -f /var/log/messages
邮件日志:tail -f /var/log/maillog
clamd相关:tail -f /var/log/clamav/clamd.log tail -f /var/log/clamav/freshclam.log
maildrop相关:tail -f /var/log/maildrop.log
apache相关:tail -f /usr/local/httpd/logs/error_log tail -f /usr/local/httpd/logs/suexec_log
mysql相关:tail -f /usr/local/mysql/data/linux.linux.com.err
测试amavisd:amavisd -d config debug-sa
测试spam:spamassassin -D --lint
测试maildrop:maildrop -V 10 -dtest@test.com
问题一:
Q Aug 7 22:26:22 mail postfix/smtpd[16829]: warning: xsasl_cyrus_server_get_mechanism_list: no applicable SASL mechanisms Aug 7 22:26:22 mail postfix/smtpd[16829]: fatal: no SASL authentication mechanisms Aug 7 22:26:23 mail postfix/master[16825]: warning: process /usr/libexec/postfix/smtpd pid 16829 exit status 1 Aug 7 22:26:23 mail postfix/master[16825]: warning: /usr/libexec/postfix/smtpd: bad command startup -- throttling Aug 7 22:28:06 mail postfix/smtpd[16830]: warning: xsasl_cyrus_server_get_mechanism_list: no applicable SASL mechanisms Aug 7 22:28:06 mail postfix/smtpd[16830]: fatal: no SASL authentication mechanisms Aug 7 22:28:07 mail postfix/master[16825]: warning: process /usr/libexec/postfix/smtpd pid 16830 exit status 1 |
A ln -s /usr/local/lib/sasl2 /usr/lib/sasl2 |
问题二:
Q Jan 15 20:24:43 localhost postfix/smtpd[3048]: warning: SASL authentication problem: unable to open Berkeley db /etc/sasldb2: No such file or directory |
A 系统已经安装sasl-cyrus 删除掉,然后编译重装 |
问题三:
Q install_driver(mysql) failed: Can't locate DBD/mysql.pm in @INC (@INC contains: |
A [root@redhat tmp]#tar zxvf DBD-mysql-3.0008.tar.gz 重新安装 |
问题四:
Q Can't chdir to /home/mailbox//Maildir, No such file or directory |
A 不能进入邮件目录,请先在extman后台建立postmaster用户 |
问题五:
Q SELECT username, password, "", '1001', '1001', concat('/var/mailbox/',maildir), "", "", username, "" FROM mailbox WHERE username = "test@test.com" maildrop: Timeout quota exceeded. |
A 请检查/usr/local/authlib/etc/authlib/mysqlauthrc的quota配置项 |
问题六:
Q sh: /usr/sbin/sendmail: No such file or directory |
A ln -s /usr/local/postfix-2.2.8/src/sendmail/sendmail /usr/sbin/sendmail |
问题八:
Q error while loading shared libraries: libstdc++.so.5: cannot open shared object file: No such file or directory |
A [root@linux tmp]#rpm -ivh compat-libstdc++-33-3.2.3-47.3.i386.rpm |
问题九:
Q Starting mail statistics grapher: mailgraph_ext Can't locate RRDs.pm in @INC (@INC contains: /usr/lib/perl5/5.8.5/i386-linux-thread-multi |
A ln -sv /usr/local/rrdtool/lib/perl/5.8.5/i386-linux-thread-multi/RRDs.pm \ /usr/lib/perl5/5.8.5/i386-linux-thread-multi/ |
问题十:
Q Can't locate loadable object for module RRDs in @INC (@INC contains: /usr/lib/perl5/5.8.5/i386-linux-thread-multi |
A ln -sv /usr/local/rrdtool/lib/perl/5.8.5/i386-linux-thread-multi/auto/RRDs/RRDs.so \ /usr/lib/perl5/5.8.5/i386-linux-thread-multi/ |
问题十一:
Q Can't load '/usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi/auto/GD/GD.so' for module GD: libgd.so.2: cannot open shared object file: No such file or directory at /usr/lib/perl5/5.8.5/i386-linux-thread-multi/DynaLoader.pm line 230., referer:http://192.168.44.200/extman/cgi/index.cgi |
A [root@linux tmp]#vi /etc/ld.so.conf [root@linux tmp]#less /etc/ld.so.conf include ld.so.conf.d/*.conf /usr/X11R6/lib /usr/local/mysql/lib /usr/local/BerkeleyDB/lib /usr/local/authlib/lib/courier-authlib /usr/local/sasl2/lib /usr/local/sasl2/lib/sasl2 /usr/local/clamav/lib /usr/local/lib /usr/local/authlib/lib/courier-authlib /usr/local/gd/lib /usr/local/jpeg/lib /usr/local/fontconfig/lib /usr/local/freetype2/lib /usr/local/png/lib [root@linux tmp]#ldconfig -v |
问题七:
Q Jan 28 05:04:56 linux postfix/pickup[13892]: DEBD68075: uid=0 from=<root> Jan 28 05:04:56 linux postfix/cleanup[14026]: DEBD68075: hold: header Received: by linux.test.com (Postfix, from userid 0)??id DEBD68075; Mon, 28 Jan 2008 05:04 :56 +0800 (CST) from local; from=<root@test.com> Jan 28 05:04:56 linux postfix/cleanup[14026]: DEBD68075: message-id=<20080127210 456.DEBD68075@linux.test.com> |
A 不要将amavisd和MailScanner装在一起##可能有其它解决办法吧 |
问题十二:
Q httpd: Syntax error on line 99 of /etc/httpd/httpd.conf: Cannot load /usr/local/\httpd/modules/libphp5.so into server: /usr/local/\httpd/modules/libphp5.so: cannot restore segment prot after reloc: Permission denied |
A 1:禁用selinux 2:chcon -t texrel_shlib_t /usr/local/apache2/modules/*.so |
问题十三:
Q Jun 20 15:29:08 mail authdaemond: authldaplib: sysusername=<null>, sysuserid=1001, sysgroupid=1001, homedir=/var/mailbox/test.com/test01,address=test01@test.com, fullname=test01, maildir=test.com/test01/Maildir/, quota=5242880S, ptions=<null> Jun 20 15:29:08 mail authdaemond: authldaplib: clearpasswd=<null>, passwd=$1$8pBM6cXc$Va6UkybwOdSyExU82pQ1A0 Jun 20 15:29:08 mail authdaemond: rebinding with DN 'mail=test01@test.com,virtualDomain=test.com,o=extmailAccount,dc=test.com' to validate password Jun 20 15:29:08 mail authdaemond: authentication bind failed, invalid credentials |
A vi /etc/authlib/authldaprc 72 #LDAP_AUTHBIND 1 |
问题十四:
Q pop3d: chdir test.com/test01: No such file or directory |
A vi /etc/authlib/authldaprc #LDAP_MAILDIR mailMessageStore |
问题十五:
Q configure: error: Please fix the library issues listed above and try again. |
A cp /usr/local/png/lib/pkgconfig/libpng.pc /usr/lib/pkgconfig/ |
问题十六:
Q Can't locate GD.pm in @INC (@INC contains: |
A 安装GD-2.35.tar.gz |
问题十七:
Q 怎样查看postfix日志成功接收到邮件:(交货到邮件目录) |
A cat /var/log/maillog |grep "delivered to maildir" cat /var/log/maillog |grep "delivered to maildir" | egrep -o "(\w+)([@]{1}\w+[.]{1,})(\w+)" |
问题十八:
Q 怎样取当天日志: |
A cat /var/log/maillog | egrep "`data | awk "`'{print ""$2" "$3""}'`" |
问题十九:
Q 怎样取指定日期日志: |
A cat /var/log/maill | grep "^Sep\ 25" | egrep "reject|warning|error|fatal|panic" | more |
慢慢再增加吧.