现在每天需要将统计数据发送给指定的人员。

使用原始手工的方式每天发送很麻烦,于是想改成一个定时任务,让服务器自动发送。

技术告诉我说他有写过sendmail的一个脚本。

我尝试使用了一下,发现 service sendmail status的时候,总是会出现如下东西。我不知道是不是我的误操作导致的邮件发送阻塞。

Oct  5 07:00:01 sgadmin sendmail[30731]: u94N01EY030730: to=<root@sgadmin>, ctladdr=<root@sgadmin> (0/0), delay=00:00:00, xdelay=00:00:00, mailer=local, pri=138838, dsn=2.0.0, stat=Sent
Oct  5 07:00:34 sgadmin sendmail[30736]: My unqualified host name (sgadmin) unknown; sleeping for retry
Oct  5 07:01:34 sgadmin sendmail[30736]: unable to qualify my own domain name (sgadmin) -- using short name
Oct  5 08:00:01 sgadmin sendmail[30736]: u94N1YKI030736: from=root, size=446, class=-60, nrcpts=1, msgid=<201610042301.u94N1YKI030736@sgadmin>, relay=root@localhost
Oct  5 08:00:01 sgadmin sendmail[31179]: u950017D031179: from=<root@sgadmin>, size=667, class=-60, nrcpts=1, msgid=<201610042301.u94N1YKI030736@sgadmin>, proto=ESMTP, daemon=MTA, relay=localhost [127.0.0.1]
Oct  5 08:00:01 sgadmin sendmail[30736]: u94N1YKI030736: to=root, ctladdr=root (0/0), delay=00:58:27, xdelay=00:00:00, mailer=relay, pri=138446, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (u950017D031179 Message accepted for delivery)

 

然后我让sendmail服务重启了一下。这下可就不对了

1.启动时间很长(时间长估计是因为有错误的原因)

2.启动后报错

去查看log日志(cat /var/log/maillog),报错信息如下所示

Oct   :: sgadmin sendmail[]: u97401JN010424: to=<root@sgadmin>, ctladdr=<root@sgadmin> (/), delay=::, xdelay=::, mailer=local, pri=, dsn=, stat=Sent
Oct   :: sgadmin sendmail[]: My unqualified host name (sgadmin) unknown; sleeping for retry
Oct   :: sgadmin sendmail[]: unable to qualify my own domain name (sgadmin) -- using short name
Oct   :: sgadmin sendmail[]: My unqualified host name (sgadmin) unknown; sleeping for retry
Oct   :: sgadmin sendmail[]: unable to qualify my own domain name (sgadmin) -- using short name
Oct   :: sgadmin sendmail[]: starting daemon (): SMTP+queueing@::
Oct   :: sgadmin sm-msp-queue[]: My unqualified host name (sgadmin) unknown; sleeping for retry
Oct   :: sgadmin sm-msp-queue[]: unable to qualify my own domain name (sgadmin) -- using short name
Oct   :: sgadmin sm-msp-queue[]: starting daemon (): queueing@::
Oct   :: sgadmin sendmail[]: My unqualified host name (sgadmin) unknown; sleeping for retry
Oct   :: sgadmin sendmail[]: unable to qualify my own domain name (sgadmin) -- using short name
Oct   :: sgadmin sendmail[]: starting daemon (): SMTP+queueing@::
Oct   :: sgadmin sm-msp-queue[]: My unqualified host name (sgadmin) unknown; sleeping for retry
Oct   :: sgadmin sm-msp-queue[]: unable to qualify my own domain name (sgadmin) -- using short name
Oct   :: sgadmin sm-msp-queue[]: starting daemon (): queueing@::

错误很明显。意识是找不到sgadmin这个域名。

于是乎就想到修改 /etc/hosts 文件

加上 ip sgadmin 之后重启sendmail服务,仍然报同样的错

这让我很费解啊,我已经加上了啊,难道说没有生效?

然后找到一篇文章,文章说 FQDN里面规定域名必须用"."结尾

于是我又一次修改hosts 意 ip sgadmin. sgadmin 这样的方式

然后重启sendmail服务,一切正常,启动速度也很快,估计是少了寻找domain的时间

博文地址:http://blog.csdn.net/taolinke/article/details/4496316

其实这里我还有疑问。那个技术之前也没有在hosts中添加sgadmin这个域名,为什么他能够正常的发送邮件???

再继续研究一下,未完待续。

Linux下使用sendmail发送邮件的更多相关文章

  1. linux下用mail发送邮件

    利用外部邮箱发送邮件的方法 bin/mail会默认使用本地sendmail发送邮件,这样要求本地的机器必须安装和启动Sendmail服务,配置很麻烦,并且会带来不必要的 资源占用.而通过改动配置文件能 ...

  2. Linux简单配置SendMail发送邮件

    本文简单整理了一下如何在Linux服务器上安装.配置SendMail发送邮件的步骤,此文不是配置邮件服务器,具体测试环境为CentOS Linux release 7.2.1511 (Core) ,如 ...

  3. Linux下使用mail发送邮件

    邮件常常是Linux下监控报警手段之一.Linux下的mail命令可以方便,快速的完成发送邮件.下面以CentOS为例 1.安装 [root@vm8028 ~]# mail -bash: mail: ...

  4. Linux基础命令---sendmail发送邮件

    sendmail sendmail是postfix中的一个发送邮件的代理程序,它负责发送邮件到远程服务器,并且可以接收邮件.sendmail在发送邮件的时候,默认从标砖输入读取内容,以".& ...

  5. Linux中使用sendmail发送邮件,指定任意邮件发送人

    一.使用任意发件人发送邮件 echo .com -s .com 其中s表示主题.

  6. Linux SendMail发送邮件失败诊断案例(二)

    Linux上Sendmail经常由于一些配置问题,导致邮件发送失败,下面整理.收集了一些邮件发送失败.异常的案例. 案例1:在新服务器上测试sendmail发送邮件时,发现邮件发送不成功,检查/var ...

  7. linux下sendmail邮件系统安装操作记录

    电子邮件系统的组成:1)邮件用户代理(Mail User Agent , MUA),MUA是一个邮件系统的客户端程序,它提供了阅读,发送和接受电子邮件的用户接口. 最常用的 MUA 有: linux ...

  8. Linux下使用mail命令发送邮件

    因为需要经常备份网站的数据,所以了解并学习了下linux下如何通过shell来发送邮件,这里以CentOS为例,使用mail命令来进行外部邮件的发送.mail命令的语法如下: Usage: mail ...

  9. Linux SendMail发送邮件失败诊断案例(四)

    最近又碰到一起Linux下SendMail发送邮件失败的案例,邮件发送后,邮箱收不到具体邮件, 查看日志/var/log/maillog 发现有"DSN: User unknown" ...

随机推荐

  1. scala 入门(2)--数组相关操作

    scala 无论从数组的定义还是操作方面来说都跟java非常相似,但又有其独特的强大之处… 1. 定长数组 对于长度不变的数组,可以用scala中的Array. //scala 里使用new实例化对象 ...

  2. 基于QT开发的第三方库

    基于Qt开发的第三方库 分类: Qt2014-02-12 11:34 1738人阅读 评论(0) 收藏 举报 QT第三方库   目录(?)[+]   文章来源:http://blog.csdn.net ...

  3. 虚拟机最佳实践:单个 VM、临时存储和已上传磁盘

    大家好! 我是 Drew McDaniel,来自 Microsoft Azure虚拟机功能研发团队,我从团队成立之初就已加入. 在本博客文章中,我将分享一些最佳实践指南,帮助您充分利用您的Azure虚 ...

  4. bzoj1148

    题目:http://www.lydsy.com/JudgeOnline/problem.php?id=1148 很常见的排序贪心题...... 假设我们得到了一个最优序列,记s[n]=w[1]+w[2 ...

  5. zoj2112

    题目:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=2112 经典的动态区间第K大. 用树状数组套线段树. 对原数组建一个树 ...

  6. .net中除去IList中的多余项

    IList<ActionInfo> tempList = new List<ActionInfo>(); IList<ActionInfo> tempActionL ...

  7. maven plugin在tomcat 热部署

    前言: 此处的方法适用于tomcat6 和 tomcat7,对于最新的tomcat8还没有进行过測试,有兴趣的同学能够自己測一下. 总共分为五步:         1.在tomcat中配置用户权限,即 ...

  8. Java ----------- SQL语句总结(更新中。。。。。。)

    #对数据库的操作 *创建数据库 CREATE DATABASE database_name:database_name为创建的数据库的变量名称. #对表的操作

  9. 控制用户的访问之权限、角色【weber出品必属精品】

    权限的作用 限制用户对数据的访问 权限的分类 1. 系统权限:能够存取数据库的权限 2. 对象权限:操作数据库对象的内容 系统权限  1.1 如何创建用户: SQL> create user t ...

  10. uva11292贪心基础题目

    C - 贪心 基础 Crawling in process... Crawling failed Time Limit:1000MS     Memory Limit:65536KB     64bi ...