linux学习-mail发送邮件(mail不能发邮件)

主机:centos 7 ,

安装sendmail,启动sendmail,一般就可以了,但是有些同学为什么不行,就是启不动出现如下的情况!那现在如何解决。

yum install sendmail
systemctl start sendmail.service
systemctl status sendmail.service
● sendmail.service - Sendmail Mail Transport Agent
   Loaded: loaded (/usr/lib/systemd/system/sendmail.service; enabled; vendor preset: disabled)
   Active: active (running) since Sun 2016-05-08 12:22:58 CST; 1min 33s ago
  Process: 9727 ExecStart=/usr/sbin/sendmail -bd $SENDMAIL_OPTS $SENDMAIL_OPTARG (code=exited, status=0/SUCCESS)
  Process: 9722 ExecStartPre=/etc/mail/make aliases (code=exited, status=0/SUCCESS)
  Process: 9720 ExecStartPre=/etc/mail/make (code=exited, status=0/SUCCESS)
 Main PID: 9730 (sendmail)
   CGroup: /system.slice/sendmail.service
           └─9730 sendmail: accepting connection

May 08 12:21:58 iZ28xev9g2sZ systemd[1]: Starting Sendmail Mail Transport Agent...
May 08 12:21:58 iZ28xev9g2sZ sendmail[9727]: My unqualified host name (iZ28xev9g2sZ) unknown; sleeping for retry
May 08 12:22:58 iZ28xev9g2sZ sendmail[9727]: unable to qualify my own domain name (iZ28xev9g2sZ) -- using short name
May 08 12:22:58 iZ28xev9g2sZ systemd[1]: PID file /run/sendmail.pid not readable (yet?) after start.
May 08 12:22:58 iZ28xev9g2sZ sendmail[9730]: starting daemon (8.14.7): [email protected]:00:00
May 08 12:22:58 iZ28xev9g2sZ systemd[1]: Started Sendmail Mail Transport Agent.

解决方法:其实就是你的主机没有设置hostname

mail发送邮件,默认调用的是sendmail,sendmail发送邮件,必须设置hostname,而hostname不能是一串字符串,而必须是格式正确的域名,例如mail.tome178.com

所以我们的解决方法是修改hostname,一种是临时的,一种是永久的

一般我们可以设置临时的

hostname mail.tome178.com

永久的修改/etc/sysconfig/network

hostname=mail.tome178.com //主机名(没有这行?那就添加这一行吧) 

然后运行

hostname mail.tome178.com

然后重启sendmail就可以发送邮件了

● sendmail.service - Sendmail Mail Transport Agent
   Loaded: loaded (/usr/lib/systemd/system/sendmail.service; enabled; vendor preset: disabled)
   Active: active (running) since Sun 2016-05-08 12:39:48 CST; 16min ago
  Process: 9939 ExecStart=/usr/sbin/sendmail -bd $SENDMAIL_OPTS $SENDMAIL_OPTARG (code=exited, status=0/SUCCESS)
  Process: 9933 ExecStartPre=/etc/mail/make aliases (code=exited, status=0/SUCCESS)
  Process: 9932 ExecStartPre=/etc/mail/make (code=exited, status=0/SUCCESS)
 Main PID: 9942 (sendmail)
   CGroup: /system.slice/sendmail.service
           └─9942 sendmail: accepting connections

May 08 12:41:12 mail.tome178.com sendmail[9965]: u484fBCq009965: from=<[email protected]>, si....1]
May 08 12:41:13 mail.tome178.com sendmail[9967]: STARTTLS=client, relay=163mx01.mxmail.netease.co...256
May 08 12:41:14 mail.tome178.com sendmail[9967]: STARTTLS=client, relay=163mx03.mxmail.netease.co...256
May 08 12:41:14 mail.tome178.com sendmail[9967]: u484fBCq009965: to=<[email protected]>, ctladdr=<...74)
May 08 12:41:21 mail.tome178.com sendmail[9971]: u484fKXx009971: from=<[email protected]>, si....1]
May 08 12:41:21 mail.tome178.com sendmail[9973]: STARTTLS=client, relay=mx3.qq.com., version=TLSv...128
May 08 12:41:24 mail.tome178.com sendmail[9973]: u484fKXx009971: to=<[email protected]>, ctladdr=<r...s )
May 08 12:54:08 mail.tome178.com sendmail[9988]: u484s8IS009988: from=<[email protected]>, si....1]
May 08 12:54:09 mail.tome178.com sendmail[9990]: STARTTLS=client, relay=mx3.qq.com., version=TLSv...128
May 08 12:54:09 mail.tome178.com sendmail[9990]: u484s8IS009988: to=<[email protected]>, ctladdr=<r...s )
Hint: Some lines were ellipsized, use -l to show in full.
时间: 2024-10-02 20:38:11

linux学习-mail发送邮件(mail不能发邮件)的相关文章

Linux学习之给指定用户发邮件

发送邮件 进入 mail 程序后的操作都很简单,但是可以不进入 mail 的 & 操作提示符界面,下面举几个实用例子: 1.给 [email protected] 发信 1 [[email protected] ~]# mail [email protected] 2 3 Subject: Hi, a mail to snailwarrior! 4 5 This is hoho_zhao in BeiJing. 6 7 . 8 9 Cc: //直接输入回车就不抄送给谁了 [注意]使用.或者Ctr

SQL SERVER 2008配置Database Mail –用SQL 数据库发邮件

SQL SERVER 2008配置Database Mail –用SQL  数据库发邮件 https://blogs.msdn.microsoft.com/apgcdsd/2011/06/28/sql-server-2008database-mail-sql/ 原文来自:http://blog.sqlauthority.com/2008/08/23/sql-server-2008-configure-database-mail-send-email-from-sql-database/  Aug

Linux搭建smtp服务器+laravel5.2发邮件配置

/** * 这里主要是想通过自己搭建smtp服务器,配置laravel5.2框架,实现邮箱发邮件功能, * 主要内容是搭建smtp服务器,laravel5.2发邮件顺手提一下 */ /** * 1.laravel5.2通过Mail实现发邮件的功能 * 2.搭建自己的smtp服务器 * 3.修改mail的配置,将主机和账号修改为自己的smtp代理服务器 * * 相关技术基础(php基础知识.laravel5.2框架的简单操作.Linux运维基础知识) */ /** * 1.laravel5.2通过

linux 定时巡检系统时间并且发邮件

获取系统时间用到data命令 date 发送邮件用的是mail命令,这个需要安装,yum -y intall mail 配置smtp,添加如下vi /etc/mail.rc set from=[email protected].com set smtp=smtp.qq.com set smtp-auth-user=123456 set smtp-auth-password=runoob set smtp-auth=login 测试 :mail -s "标题" 可以多个邮箱,邮箱,邮箱

Linux使用mailx通过外部smtp发邮件

利用mailx发邮件的功能可以做很多事,通常可以通过脚本让主机判断运行状态给指定邮箱发邮件. ##环境:虚拟机,CentOS7 通过yum安装: yum install -y mailx yum安装非常简单,其中要注意的是mailx版本最好大于7,redhat5系列之前自带的mailx发邮件需要通过sendmail程序来发送,所以需要更新版本 源码包安装:mailx-12.4 cd #回到家目录 tar xvjf mailx-12.4.tar.bz2 && cd mailx-12.4.ta

java mail使用qq邮箱发邮件的配置方法

1.QQ邮箱设置 1.1 进去QQ邮箱-->设置-->账号-->进行设置如下图 2.foxmail设置(由于我要利用它收邮件) 2.1 参照官方的设置即可http://service.mail.qq.com/cgi-bin/help?subtype=1&&id=28&&no=371 ps:填写的邮箱密码是独立密码:需要注意的就是SSL链接要勾选;smtp端口是465 3.Java中代码配置 3.1 发送邮件配置代码 public class MailUti

SQL SERVER 2008R2sp1配置Database Mail –用SQL 数据库发邮件

步骤1)创建配置文件和帐户 看图片吧,挺简单的:

在Linux中如何向163邮箱发邮件

linux收发邮件 1.首先要保证自己的Linux服务器能够ping通www.baidu.com ping www.baicu.com 2.申请一个@163.com个人邮箱 3.将进入邮箱后进行如下设置. 1.首页电击设置,点击POP3/SMTP/IMAP设置. 2.将对应选项下所有能选的都选上.然后自己设置一个授权密码这个密码记好,后面要用. 4.在Linux中将如下命令追加到, /etc/mail.rc的文件最后. # send email set from=此处填写邮箱地址 set smt

Linux下配置使用外部SMTP发邮件

[[email protected] /]# mail -s "Message"  [email protected] < /tmp/info.message 系统默认以"[email protected]主机名" 发送邮件,收到邮件直接被过虑成垃圾邮件了,那可不可以自定义邮箱发送邮件呢? 答案肯定可以的. 下载mailx包 mailx官方站点 http://heirloom.sourceforge.net/ 下载最新版本mailx-12.4.tar.bz2

19.12添加自定义监控项目19.13/19.14 配置邮件告警19.15 测试告警19.16 不发邮件的问题处理

19.12 添加自定义监控项目 19.13/19.14 配置邮件告警 19.15 测试告警 19.16 不发邮件的问题处理 19.12 添加自定义监控项目 zabbix的监控项目是在模板里面体现,但是有时候就会有些个性化的需求:某一个业务的数据,例如:运营人员想知道网站会员注册量,会员活跃度:实际上,这些数据,都可以通过数据库里面的表的数字来体现,但是zabbix模板是不可能提供那么相信的监控项目:遇到这种情况,就需要通过编程工具,写成脚本,最后通过zabbix监控项目,形成图表,就可以实现: