Linux下使用sendmail发送邮件
现在每天需要将统计数据发送给指定的人员。
使用原始手工的方式每天发送很麻烦,于是想改成一个定时任务,让服务器自动发送。
技术告诉我说他有写过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发送邮件的更多相关文章
- linux下用mail发送邮件
利用外部邮箱发送邮件的方法 bin/mail会默认使用本地sendmail发送邮件,这样要求本地的机器必须安装和启动Sendmail服务,配置很麻烦,并且会带来不必要的 资源占用.而通过改动配置文件能 ...
- Linux简单配置SendMail发送邮件
本文简单整理了一下如何在Linux服务器上安装.配置SendMail发送邮件的步骤,此文不是配置邮件服务器,具体测试环境为CentOS Linux release 7.2.1511 (Core) ,如 ...
- Linux下使用mail发送邮件
邮件常常是Linux下监控报警手段之一.Linux下的mail命令可以方便,快速的完成发送邮件.下面以CentOS为例 1.安装 [root@vm8028 ~]# mail -bash: mail: ...
- Linux基础命令---sendmail发送邮件
sendmail sendmail是postfix中的一个发送邮件的代理程序,它负责发送邮件到远程服务器,并且可以接收邮件.sendmail在发送邮件的时候,默认从标砖输入读取内容,以".& ...
- Linux中使用sendmail发送邮件,指定任意邮件发送人
一.使用任意发件人发送邮件 echo .com -s .com 其中s表示主题.
- Linux SendMail发送邮件失败诊断案例(二)
Linux上Sendmail经常由于一些配置问题,导致邮件发送失败,下面整理.收集了一些邮件发送失败.异常的案例. 案例1:在新服务器上测试sendmail发送邮件时,发现邮件发送不成功,检查/var ...
- linux下sendmail邮件系统安装操作记录
电子邮件系统的组成:1)邮件用户代理(Mail User Agent , MUA),MUA是一个邮件系统的客户端程序,它提供了阅读,发送和接受电子邮件的用户接口. 最常用的 MUA 有: linux ...
- Linux下使用mail命令发送邮件
因为需要经常备份网站的数据,所以了解并学习了下linux下如何通过shell来发送邮件,这里以CentOS为例,使用mail命令来进行外部邮件的发送.mail命令的语法如下: Usage: mail ...
- Linux SendMail发送邮件失败诊断案例(四)
最近又碰到一起Linux下SendMail发送邮件失败的案例,邮件发送后,邮箱收不到具体邮件, 查看日志/var/log/maillog 发现有"DSN: User unknown" ...
随机推荐
- Linux方面收藏的一点儿资料
初来乍到,也算是第一次写技术类相关的博客,就分享几篇收藏的Linux相关的资料吧,希望可以给需要的人一点帮助. 1.<高级Bash脚本编程指南>:该网站详细讲解了Bash Shell编程的 ...
- 进程外组件通信之免注册com通信【原创】
最近在搞进程外组件通信的东西,写了个demo,免注册的,一直没调通,其实就是两个问题卡了好几天,也没找到有用的资料,试了好几天终于才解决,现简单记录下来,免得大家跟我走一样的弯路.下面com端程序名称 ...
- cf D. Sereja ans Anagrams
http://codeforces.com/contest/368/problem/D #include <cstdio> #include <cstring> #includ ...
- Windows进程间通信的各种方法
原文:Windows进程间通信的各种方法 进程是装入内存并准备执行的程序,每个进程都有私有的虚拟地址空间,由代码.数据以及它可利用的系统资源(如文件.管道等)组成.多进程/多线程是Windows操作系 ...
- 【转】Ubuntu命令行下安装、卸载、管理软件包的方法
原文网址:http://oss.org.cn/html/47/n-67447.html 一.Ubuntu中软件安装方法 1.APT方式 (1)普通安装:apt-get install softname ...
- c指针点滴5-指针变量计算
//接口dll _declspec(dllexport) void go() { char *p1; int *p2; p1 = (char*)0x30fa83;//每次运行exe的时候输出地址值不同 ...
- Python字典的操作与使用
字典的描述 字典是一种key-value的数据类型,使用就像我们上学用的字典,通过拼音(key)来查对应字的详细内容(value). 字典的特性 1.字典是无序的(不像列表一样有下标,它通过key来获 ...
- (转)iOS7界面设计规范(5) - UI基础 - 导航
通过分页控件(page control)来暗示多个条目或内容视图的存在.该控件可以有效的向用户展示内容单元的数量,以及当前所见的这一条在队列中的位置.请参考分页控件一节,了解更多详情. 注意:虽然工具 ...
- 通向码农的道路(enet开源翻译计划 一)
QQ 324186207群 enet交流技术.主要是为了研究tcp内部执行机制,欢迎大家增加探讨.小弟水平有限.翻译难免有误. . Features: ENet evolved specificall ...
- [Javascript] Regex: '$`', '$&', '$''
var input = "foobar"; var result = input.replace('bar', '$`'); // $`: replace 'bar' with e ...