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

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

技术告诉我说他有写过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. BZOJ 2732 射箭

    http://www.lydsy.com/JudgeOnline/problem.php?id=2732 题意:给你n个靶子,让你求是否有一个经过原点的抛物线经过最多的前k个靶子,求出最大的k 思路: ...

  2. spin.js无图片实现loading进度条,支持但非依赖jquery

    特点: 1.无图片,无外部CSS 2.无依赖(支持jQuery,但非必须) 3.高度可配置 4.分辨率无关 5.旧版本IE不支持时,采用VML支持 6.使用关键帧动画,采用setTimeout() 7 ...

  3. iptables 必须先拒绝所有,在允许

    <pre name="code" class="html">[root@wx02 ~]# cat /etc/sysconfig/iptables # ...

  4. VC++中的类的内存分布(上)

    0.序 目前正在学习C++中,对于C++的类及其类的实现原理也挺感兴趣.于是打算通过观察类在内存中的分布更好地理解类的实现.因为其实类的分布是由编译器决定的,而本次试验使用的编译器为VS2015 RC ...

  5. 【HDU】I love sneakers!(分组背包)

    看了许多的题解,都有题目翻译,很不错,以后我也这样写.直接翻译样例: /*鞋子的数量N[1, 100]; 拥有的金钱M[1, 1w]; 品牌数目[1, 10]*/ /*以下四行是对于每双鞋的描述*/ ...

  6. 解决IE6下DIV无法实现1px高度问题

    2.多加一个line-height:1px的属性,不过得在DIV里多加一个 ,也就是空格,以下为引用的内容: <styletypestyletype="text/css"&g ...

  7. python高级编程技巧

    由python高级编程处学习 http://blog.sina.com.cn/s/blog_a89e19440101fb28.html Python列表解析语法[]和生成 器()语法类似 [expr  ...

  8. c++11 生产者/消费者

    下面是一个生产者消费者问题,来介绍condition_variable的用法.当线程间的共享数据发生变化的时候,可以通过condition_variable来通知其他的线程.消费者wait 直到生产者 ...

  9. Android动态加载jar/dex

    前言 在目前的软硬件环境下,Native App与Web App在用户体验上有着明显的优势,但在实际项目中有些会因为业务的频繁变更而频繁的升级客户端,造成较差的用户体验,而这也恰恰是Web App的优 ...

  10. RMAN-configure命令

    在Oracle 10g中的配置情况 使用RMAN>show all; 可以显示出RMAN 配置参数为: CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # ...