让香蕉派M1定时发送系统信息邮件

作者: snowtank
上传时间为: 2014-12-31 09:01 AM
2014-12-31
阅读:

使用BananaPi M1( 以下简称M1) 已经有一段时间了,非常稳定,保持这7*24的服务状态,呵呵,不过总是惦记和担心会出什么问题,如果能让M1自己发送系统 邮件给我,报告状态,那多爽啊!呵呵

来吧,我们开始弄吧

首先登录M1

apt-get update
apt-get upgrade
升级程序到最新。

安装 相关程序

apt-get install mutt msmtp

我是采取命令行的方式发m送邮件的。

配置msmtprc相关内容

我使用的是root帐号,直接新建文件 

vi .msmtprc
这个文件是需要自己建立的,

添加内容

account default
host smtp.126.com   邮件服务器
auth login   
user snowtank       使用的用户名
from snowtank@126.com 使用的邮件地址   
password ********  密码
 保存,这里需要注意个问题 user和from中填写的内容, 不能随便乱写,和后面发邮件的时候用到的内容一致

配置mutt的内容

因为M1就我一个人使用, 因此我使用了全局配置

打开文件

vi /etc/Muttrc
在结尾添加如下内容
set sendmail="/usr/bin/msmtp"
set use_from=yes
set from=snowtank@126.com
set envelope_from=yes
保存, 关闭

这些内容搞定后,我们要测试一下smtp服务器

测试配置文件:msmtp -P
测试smtp服务器:msmtp -S
root@lemaker:~# msmtp -P
ignoring system configuration file /etc/msmtprc: No such file or directory
loaded user configuration file /root/.msmtprc
falling back to default account
using account default from /root/.msmtprc
host                  = smtp.126.com
port                  = 25
timeout               = off
protocol              = smtp
domain                = localhost
auth                  = LOGIN
user                  = snowtank
password              = *
passwordeval          = (not set)
ntlmdomain            = (not set)
tls                   = off
tls_starttls          = on
tls_trust_file        = (not set)
tls_crl_file          = (not set)
tls_fingerprint       = (not set)
tls_key_file          = (not set)
tls_cert_file         = (not set)
tls_certcheck         = on
tls_force_sslv3       = off
tls_min_dh_prime_bits = (not set)
tls_priorities        = (not set)
auto_from             = off
maildomain            = (not set)
from                  = snowtank@126.com
dsn_notify            = (not set)
dsn_return            = (not set)
keepbcc               = off
logfile               = (not set)
syslog                = (not set)
aliases               = (not set)
reading recipients from the command line
root@lemaker:~# msmtp -S
SMTP server at smtp.126.com (m15-111.126.com [220.181.15.111]), port 25:
    126.com Anti-spam GT for Coremail System (126com[20140526])
Capabilities:
    PIPELINING:
        Support for command grouping for faster transmission
    STARTTLS:
        Support for TLS encryption via the STARTTLS command
    AUTH:
        Supported authentication methods:
        PLAIN LOGIN
This server might advertise more or other capabilities when TLS is active.

 通过上面的测试结果,说明咱们的配置文件没有问题,而且126.com的smtp服务器支持Plan Login的方式验证。

测试发送邮件

echo "test" |mutt -s "my_email" xxxxx@126.com
这样126信箱就有邮件了这个信箱是随便写的,大家自己修改啊!哈哈哈

好了,我们开始让M1自己发邮件给咱们吧!

编辑一个sysinfo.sh 输入如下数据
#! /bin/sh
ttspace=`df -h |grep sda1| awk '{print  $4}'`
server_info=`uptime`
total_mem=`free -m |grep Mem| awk '{print $2}'`
use_mem=`free -m | grep Mem | awk '{print $3}'`
free_mem=`free -m|grep Mem|awk '{print $4}'`
wd=`cat /sys/devices/platform/sunxi-i2c.0/i2c-0/0-0034/temp1_input`
mail_content="剩余空间:"$ttspace"<br>温度:"$wd"<br>负载:"$server_info"<br>总内存:"$total_mem"M<br>使用内存:"$use_mem"M<br>可用内存:"$free_mem"M"
echo $mail_content | mutt -e "my_hdr from:snowtank<snowtank@126.com>" -e "my_hdr
 content-type:text/html" -s "邮件主题" "收件的地址"
记得保存哦!

下面我们添加crontab

crontab -e
在最下面添加
*/60 * * * * /root/tools/sysinfo.sh
这是1小时发送一次邮件
哈哈,等着 邮件来吧!!搞定咯!谢谢大家观看!
全部评论 ()
条评论
写评论

创建讨论帖子

登录 后参与评论
系统提示