linux服务器下发送邮件

简介:     系统管理人员经常会遇到对于设备或者任务的预警与通知,通常情况有发送短信、邮件等方式。发送短信一般来说需要有短信猫(硬件)或者调用libfetion给飞信用户发送。本文介绍几种简单的发送邮件的方式。
    系统管理人员经常会遇到对于设备或者任务的预警与通知,通常情况有发送短信、邮件等方式。发送短信一般来说需要有短信猫(硬件)或者调用libfetion给飞信用户发送。本文介绍几种简单的发送邮件的方式。

本文环境:Ubuntu 10.04
基础:
      Linux服务器发送邮件一般都是基于sendmail进行的,sendmail服务器提供对外的邮件发送功能。其他工具都是基于sendmail进行服务的。所以要在linux系统发送邮件,首先需要安装sendmail服务器安装方法:
  1. #sudo apt-get install sendmail
然后通过ps查看是否有sendmail进程,如果存在,则安装成功:
  1. #ps -ef|grep sendmail

  2. root 1282 1 0 13:39 ? 00:00:00 sendmail: MTA: accepting connections
成功安装sendmail后,就可以向邮件账户发送邮件了。

=====================分割线===============================

     本文列出了在linux下常用的发送邮件的方法,供大家参考。
方法1
直接使用sendmail,编辑如下文件a.sh,通过chmod 更改权限后执行就可以。
  1. #!/bin/bash
  2. /usr/sbin/sendmail -t
  3. From: Mail test
  4. Sender: jkjl
  5. To: test@qq.com
  6. Cc: test@g.cn
  7. Subject: mail testing
  8. ----------------------------------
  9. This is the mail content ...
  10. muhaha
  11. ---------------------------------
  12. EOF
man sendmail

-t参数的含义


-t     Read message for recipients. To:, Cc:, and Bcc: lines will be

              scanned for recipient addresses. The Bcc: line will be deleted
              before transmission.

    另外,sendmail默认从标准输入读入内容直到结束或者遇到".",-oi 就是认为遇到"."不再认为是结束符了。如下:
echo "hahaha.my"|sendmail -oi ureamil@email.com


方法2

利用mail工具发送,利用mail发送邮件必须安装mailutils
  1. sudo apt-get install mailutils
然后发送邮件
  1. $ mail -s "just a test" 收信人邮箱地址
  1. mail -s "haha" test@163.com

mail 工具的-t 可以跟多个用户,如下:
  1. mail -s Title -t test1@163.com -t test2@163.com

如果要发送带附件的邮件,则需要先安装uuencode,uuencode 在sharutils包中
  1. sudo apt-get install sharutils
然后再发送
uuencode 附件名 显示附件名| mail -s 题目 目的邮箱
  1. uuencode hello.txt bienvenu |mail -s Test test@163.com
如果按上面的方法,邮件只带一个附件,即将正文和附件组成联合文件发出。



方法3:

利用formail和sendmail联合发送:
formail可以封装邮件信息,然后调用sendmail发送,经典例子如下:
  1. echo hello|formail -I "From:test@163.com" -I "MIME-Version:1.0" -I "Content-type:text/html;charset=gb2312" -I "Subject:test"|sendmail -oi aimEmail@mailserver.com


方法4:

使用mutt发送
mutt是一个linux下非常好用的email程序,最典型的一个例子如下:

mutt -s "Test mail" test@163.com -a test.jpg 其中:s—主题  a—附件

最后追加的是
邮件内容
mutt甚至可以使用pgp加密,利用mutt支持MIME,解决乱码问题等,总之mutt是个人认为的最好用的email工具。

    本期知识就介绍到这里,希望大家能有所收获。分享一句话:要有梦想,即使它看似遥远。
目录
相关文章
|
29天前
|
安全 Linux 调度
在Linux中,如何实现,每星期天早8点服务器定时重启?
在Linux中,如何实现,每星期天早8点服务器定时重启?
|
29天前
|
网络协议 Linux Docker
在Linux中,如何指定dns服务器,来解析某个域名?
在Linux中,如何指定dns服务器,来解析某个域名?
|
1天前
|
Ubuntu Linux
Linux服务器的自动启动可以在哪里进行配置?
Linux服务器的自动启动可以在哪里进行配置?
12 3
|
24天前
|
Linux
Linux 服务器下载百度网盘文件
本教程指导如何使用 `bypy` 库从百度网盘下载文件。首先通过 `pip install bypy` 安装库,接着运行 `bypy info` 获取登录链接并完成授权,最后将文件置于指定目录并通过 `bypy downdir /Ziya-13b-v1` 命令下载至本地。
30 1
Linux 服务器下载百度网盘文件
|
9天前
|
存储 数据挖掘 Linux
服务器数据恢复—Linux操作系统网站服务器数据恢复案例
服务器数据恢复环境: 一台linux操作系统服务器上跑了几十个网站,服务器上只有一块SATA硬盘。 服务器故障: 服务器突然宕机,尝试再次启动失败。将硬盘拆下检测,发现存在坏扇区
|
16天前
|
存储 安全 Linux
离线Linux服务器环境搭建
【9月更文挑战第3天】在离线环境下搭建Linux服务器需按以下步骤进行:首先确定服务器用途及需求,准备安装介质与所需软件包;接着安装Linux系统并配置网络;然后设置系统基础参数,如主机名与时区;安装必要软件并配置服务;最后进行安全设置,包括关闭非必要服务、配置防火墙、强化用户认证及定期备份数据。整个过程需确保软件包的完整性和兼容性。
|
18天前
|
存储 监控 Linux
监控Linux服务器
详细介绍了如何监控Linux服务器,包括监控CPU、内存、磁盘存储和带宽的使用情况,以及使用各种系统监控工具如vmstat、iostat、sar、top和dstat来分析系统性能,并推荐了一些开源监控系统。
24 0
监控Linux服务器
|
24天前
|
Shell Linux Perl
linux服务器自动生成本地快照
【8月更文挑战第28天】本文介绍了在Linux服务器上通过两种常见方式创建本地快照的方法:Btrfs文件系统与LVM。Btrfs原生支持快照功能,操作简单快捷;LVM则提供了灵活的逻辑卷管理,可在不影响原始数据的情况下创建快照。文章详细列出了创建、查看、挂载及清理快照的具体步骤,并提供了一个自动化的Shell脚本示例,便于用户根据需求定期创建快照并清理过期快照。
21 3
|
29天前
|
Ubuntu Linux 测试技术
在Linux中,已知 apache 服务的访问日志按天记录在服务器本地目录/app/logs 下,由于磁盘空间紧张现在要求只能保留最近7天的访问日志,请问如何解决?
在Linux中,已知 apache 服务的访问日志按天记录在服务器本地目录/app/logs 下,由于磁盘空间紧张现在要求只能保留最近7天的访问日志,请问如何解决?
|
29天前
|
Ubuntu 网络协议 Linux
Linux下快速搭建七日杀官方私人服务器教程
本文提供了一份详尽的《七日杀》服务器搭建指南,专为Linux系统设计。教程分为九大部分,涵盖从前期准备到服务器维护的全过程。主要内容包括:选择具备公网IP的云服务器、安装Ubuntu 20 X64系统、下载SteamCMD等必备软件;详细指导如何配置服务器、设置防火墙及端口规则、启动与关闭服务器;此外还提供了服务器管理、环境配置(如设置swap分区)等实用技巧。适合有一定Linux基础的玩家参考实践。