红联首页 凝聚Linux人的力量
菜鸟过关 | 精华文档 | 同城人(交友) | 我与Linux的故事 | Linux新闻 | Linux视频 | Linux人才 | 软件下载 | 大学校园 | English
发新话题
打印

Solaris8中用mailx发邮件到外部的邮件服务器

Solaris8中用mailx发邮件到外部的邮件服务器

最近公司因项目需要,需要在一台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 test-a@test.com -s "test-solaris" test-b@test.com

5、排错
如没有收到邮件,在项目主机中执行mail,看看是否有系统的退信,再根据退信的原因查找,如reason: 501 5.1.7 Bad sender address syntax;再到邮件服务器上查找邮件的日志,是否有错误,如warning: Illegal address syntax from unknown等,然后再根据这些错误来解决。

以上过程在我的环境中测试成功。

TOP

发新话题