Chinaunix首页 | 论坛 | 博客
  • 博客访问: 323581
  • 博文数量: 25
  • 博客积分: 3090
  • 博客等级: 中校
  • 技术积分: 1305
  • 用 户 组: 普通用户
  • 注册时间: 2006-03-27 17:59
文章分类

全部博文(25)

文章存档

2012年(1)

2011年(1)

2010年(4)

2009年(5)

2008年(14)

我的朋友

分类:

2008-05-31 15:54:19

最近公司因项目需要,需要在一台Solaris主机发邮件到指定的邮件服务器的用户中,经过摸索后,终得解决,现将过程记录如下:
 
1、环境:
 
项目主机:  IP: 192.168.1.32  OS:Solaris 8
邮件服务器:IP: 192.168.1.10  OS:Solaris 8
          MTA: Postfix(需smtp验证)  
          DomainName: test.com  HostName: mail.test.com
 
2、需求:即在项目主机中程序调用系统命令,发邮件给邮件服务器的一些用户.
 
3、修改项目主机中一些文件(注意红色部分):
 cat /etc/hosts
#
# Internet host table
#
127.0.0.1       localhost      
192.168.1.32     Pj    loghost
192.168.1.10     mail.test.com 

/etc/mail/sendmail.cf文件中以下两行改成如下:
#Dj$w.Foo.COM
Dj$w.test.com
CP.
# "Smart" relay host (may be null)
#DSmailhost$?m.$m$.
DSmail.test.com
 
然后重启一下sendmail(本想restart,居然没有)
#/etc/init.d/sendmail stop
#/etc/init.d/sednmail start
 
4、测试发邮件,如果正确,即可收到邮件,有关命令mailx的详细使用,请参考man mailx:
echo "test" | mailx -r -s "test-solaris"
 
5、排错
  如没有收到邮件,在项目主机中执行mail,看看是否有系统的退信,再根据退信的原因查找,如reason: 501 5.1.7 Bad sender address syntax;再到邮件服务器上查找邮件的日志,是否有错误,如warning: Illegal address syntax from unknown等,然后再根据这些错误来解决。
 
以上过程在我的环境中测试成功。
阅读(2626) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~