使用linux时,有时我们想发邮件给朋友或同事,可不可以通过命令行直接发呢?
 
      想通过linux监控网站或者系统状况并自动报警,如何使用脚本发出邮件给外部邮箱呢?
 
      不需要注册公网域名和MX记录,即不需要架设公网邮件服务器,我们仍然可以达到以上目的。我是通过linux自带的mailx工具来解决,只需要配置mailx使用公网邮箱来发邮件即可。
 
      CentOS5自带的mailx是8.1版本的,不支持配置外部公网邮箱,必须升级到最新版本12.4。

      可以使用rpm -qa | grep mailx查看系统自带的mailx版本。使用wget http://sourceforge.net/projects/heirloom/files/latest/download?source=files
下载最新版本

     mailx-12.4.tar.bz2 (271.5 kB) 。
 
      # tar jxvf mailx-12.4.tar.bz2  
      # cd mailx-12.4  
      # make  
      # make install UCBINSTALL=/usr/bin/install 
 
     如此即安装完毕。这时,如果没有卸载旧版本的mailx,是不能直接使用mailx或mail命令的,否则使用的仍然是旧版mailx。新版mailx在解压后的mailx-12.4文件夹里面,即调用路径为:解压路径/mailx-12.4/mailx。例如我解压在/root/下,那我要使用新版mailx并查看版本号,则可以用/root/mailx-12.4/mailx  -V 查看。
 
      为使得新版mailx更加易用,我们可以利用alias和.bashrc将mail命令指向该新版mailx:
 
      编辑.bashrc:vi /root/.bashrc
 
      添加一行:alias mail='/root/mailx-12.4/mailx'
 
      即时生效:source /root/.bashrc
 
      这时的mail命令即代表新版mailx。
 
      接下来配置新版mailx使用外部邮箱发送邮件:
 
      编辑/etc/nail.rc(注意不是旧版的/etc/mail.rc):vi /etc/nail.rc
 
      添加两行:
 
     set from=myname@qq.com smtp=smtp.qq.com
     set smtp-auth-user=myname smtp-auth-password=password smtp-auth=login
 
       第一行指明所使用的外部邮箱及smtp服务器,第二行指明外部邮箱使用的用户名和密码。
 
       保存,并重启sendmail服务(service sendmail restart)。
 
       到此可以在命令行直接发邮件到外部邮箱了:
 
       #echo 'hello!' | mail -s "hello test" ymwugui@qq.com
 
       到外部邮箱一看,邮件即刻收到了。



--------------------------------

present  by  dylan.





linux如何发送电子邮件的更多相关文章

  1. linux通过使用mail发送电子邮件

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

  2. 使用php发送电子邮件(phpmailer)

    在项目开发过程中,经常会用到通过程序发送电子邮件,例如:注册用户通过邮件激活,通过邮件找回密码,发送报表等.这里介绍几种通过PHP发送电子邮件的 方式(1)通过mail()函数发送邮件(2)使用fso ...

  3. JAVA实现发送电子邮件

    相信大家对于网站也好,手机app也好,用户注册时,需要进行邮箱验证的功能特别好奇吧,本篇我将带领大家一起实现一下这个简单而又神奇的小功能,让我们的应用也可以加入这些神奇的元素.废话不多说,下面开始我们 ...

  4. WordPress ”无法发送电子邮件,可能原因:您的主机禁用了mail()函数“的解决办法

    WordPress网站中出现 "无法发送电子邮件,可能原因:您的主机禁用了mail()函数"的情况一般都是因为所在主机环境不支持在线邮件收发功能导致,如果不支持的话,那么像类似 N ...

  5. javamail模拟邮箱功能发送电子邮件-基础实战篇(javamail API电子邮件实例)

    引言: JavaMail 是一种可选的.能用于读取.编写和发送电子消息的包 JavaMail jar包下载地址:http://java.sun.com/products/javamail/downlo ...

  6. javamail模拟邮箱功能发送电子邮件-中级实战篇【新增附件发送方法】(javamail API电子邮件实例)

    引言: JavaMail jar包下载地址:http://java.sun.com/products/javamail/downloads/index.html 此篇是紧随上篇文章而封装出来的,阅读本 ...

  7. 在ASP.NET中发送电子邮件的实例教程

    首先.导入命名空间: 代码如下 复制代码 using System.Net.Mail; 定义发送电子邮件的方法[网上很多不同的,可以对比着看一下,WinForm的也适用]: 代码如下 复制代码 /// ...

  8. ASP.NET 发送电子邮件简介

    1.补充知识 (1)POP3和SMTP服务器是什么? 简单点来说:POP3 用于接收电子邮件 ,SMTP 用于发送电子邮件. (1)POP3具体指什么? POP3(Post Office Protoc ...

  9. 利用Excel批量高速发送电子邮件

    利用Excel批量高速发送电子邮件,分两步: 1. 准备待发送的数据: a.) 打开Excel,新建Book1.xlsx b.) 填入以下的内容, 第一列:接收人,第二列:邮件标题,第三列:正文,第四 ...

  10. Spring发送电子邮件

      Spring提供了发送电子邮件的功能,它向用户屏蔽了底层邮件系统的一些细节,同时代表客户端负责底层的资源处理. Spring的邮件服务支持主要是通过JavaMailSender这个接口实现的: p ...

随机推荐

  1. apicloud(沉浸式导航篇) - 手机状态栏 有黑边的解决办法

    在 index.html 的  apiready 中加上 第一种 : 可设置全屏 api.setFullScreen({          fullScreen: true   }); 第二种:设置状 ...

  2. 函数指针、std::function、std::bind

    函数指针.std::function.std::bind 函数指针: C++语法中可以直接将函数名作为指针, void fun(int a, int b); 在这个函数声明中,函数指针即为fun,传入 ...

  3. JMS微服务开发示例(七)使用 Serilog 作为日志提供者

    nuget 引入: Serilog.Extensions.LoggingSerilog.Settings.ConfigurationSerilog.Sinks.ConsoleSerilog.Sinks ...

  4. Qt5.9 UI设计(三)——添加UI、类及资源文件

    前言 设计一个软件,最简单的方式就是把控件直接往UI上放,然后再把功能实现了.这样可以实现基本的功能,但是界面不能缩放,如果拖动软件改变界面的大小,界面上的控件就会乱成一团,或者是界面的控件压根就不会 ...

  5. [转帖]在Mysql中,什么是回表,什么是覆盖索引,索引下推?

    https://zhuanlan.zhihu.com/p/401198674 一.什么是回表查询? 通俗的讲就是,如果索引的列在 select 所需获得的列中(因为在 mysql 中索引是根据索引列的 ...

  6. [转帖]堆表&索引组织表

    堆表&索引组织表 https://zhuanlan.zhihu.com/p/487271927   15 人赞同了该文章 很多大佬强调学习一定要看"原版英文材料". 比如再 ...

  7. [转帖]部署Alertmanager

    https://flashcat.cloud/docs/content/flashcat-monitor/prometheus/alert/manager-install/ Alertmanager和 ...

  8. 【转帖】dl.google.com的国内镜像源

    dl.google.com不能访问 1.通过https://ping.chinaz.com/解析出dl.google.com的国内代理 2.C:\Windows\System32\drivers\et ...

  9. CentOS7 和 CentOS8 安装 rusers-server 然后使用LR 实时监控Linux主机性能的办法

    LR 能够通过RPC 的工具 实时获取 被压测机器的 性能表现 但是需要安装几个组件. CentOS6 时期比较简单 可以通过网上 下载rstatd 的tar 包离线安装即可 但是发现CentOS7 ...

  10. 微软Windows Sever系统也将强制要求TPM及CPU兼容

    https://www.cnbeta.com/articles/tech/1238647.htm 去年微软推出Win11系统时,TPM安全模块以及Intel 8代酷睿/AMD锐龙2代及以上的硬件要求引 ...