博主使用ROS已经有很长一段时间了,但经常会忘记备份配置与数据库,加上ROS本身自带的User-Man数据库并不是非常稳定,1年中总会出现1-2次数据丢失的情况。所以费了一定功夫才找到真正可用自动备份并发送电邮的方法(我用的ROS版本为5.24和5.26,均可正常使用),现分享给大伙。

脚本如下:(需要按自己的电邮信息来设定)

#定义全局变量
:local from "您的邮箱"
:local user "邮箱账号"
:local password "邮箱密码"
:local to "您的邮箱(同第一行)"
#只需要更改cc 后""中为客户的邮箱即可
:local cc "接收者的邮箱"
:local address "123.125.50.133"
:local router "接收到的邮箱附件名"
#ROS 系统备份
/system backup save name=($router."-".[:pick [/system clock get date] ].[:pick [/system clock get date] ].[:pick [/system clock get date] ]);
#ROS UserMan数据库备份
/tool user-manager database save name=($router."-".[:pick [/system clock get date] ].[:pick [/system clock get date] ].[:pick [/system clock get date] ]); #延迟1秒,目的是文件已经备份好了,然后再执行下面的步骤,否则下面的步骤发现没有备份文件时报错,从而导致你的脚本失效
:delay ;
#把系统备份发送到邮箱
/tool e-mail send server=($address) port= cc=($cc) from=($from) user=($user) password=($password) to=($to) subject=($router."-".[:pick [/system clock get date] ].[:pick [/system clock get date] ].[:pick [/system clock get date] ].".backup") file=($router."-".[:pick [/system clock get date] ].[:pick [/system clock get date] ].[:pick [/system clock get date] ].".backup") body=($router."-".[:pick [/system clock get date] ].[:pick [/system clock get date] ].[:pick [/system clock get date] ].".backup");
#把Userman数据库备份发送到邮箱
/tool e-mail send server=($address) port= cc=($cc) from=($from) user=($user) password=($password) to=($to) subject=($router."-".[:pick [/system clock get date] ].[:pick [/system clock get date] ].[:pick [/system clock get date] ].".umb") file=($router."-".[:pick [/system clock get date] ].[:pick [/system clock get date] ].[:pick [/system clock get date] ].".umb") body=($router."-".[:pick [/system clock get date] ].[:pick [/system clock get date] ].[:pick [/system clock get date] ].".umb");
#再次延迟20秒,目的是让上面的步骤即确保备份的文件都发送出去了再执行下面的删除操作
:delay ;
#删除刚才备份到ROS本地的文件(如果你空间足够、脚本执行每月/年才执行一次,你可以删除下面这三段脚本)
/file remove ($router."-".[:pick [/system clock get date] ].[:pick [/system clock get date] ].[:pick [/system clock get date] ].".backup");
/file remove ($router."-".[:pick [/system clock get date] ].[:pick [/system clock get date] ].[:pick [/system clock get date] ].".umb");

方法2:
需要自己先在Tools-Email中配置Email服务器:(测试备份正常,但发邮件似乎有点问题,时好时坏)

#定义参数
:global to "test@qq.com"
:global who "MikroTik"
:global naming ($who."-".[:pick [/system clock get date] ].[:pick [/system clock get date] ].[:pick [/system clock get date] ])
#备份
/system backup save name=$naming;
/export file=$naming;
/tool user-manager database save name=$naming;
#发送邮件
/tool e-mail send to=$to subject=($naming . "Backup") file=($naming . ".backup"); :delay ;
/tool e-mail send to=$to subject=($naming . "rsc") file=($naming . ".rsc"); :delay ;
/tool e-mail send to=$to subject=($naming . "umb") file=($naming . ".umb"); :delay ;
#删除备份
/file rem [/file find name=($naming . ".backup")];
/file rem [/file find name=($naming . ".rsc")];
/file rem [/file find name=($naming . ".umb")];
:log info ("System Backup emailed at " . [/sys cl get time] . " " . [/sys cl get date])

ROS 5.x自动定时备份并发送到邮箱(实用)的更多相关文章

  1. SQL2008实现数据库自动定时备份——维护计划

    在SQL Server中出于数据安全的考虑,所以需要定期的备份数据库.而备份数据库一般又是在凌晨时间基本没有数据库操作的时候进行,所以我们不可能要求管理员 每天守到晚上1点去备份数据库.要实现数据库的 ...

  2. [转]mysql自动定时备份数据库的最佳方法-支持windows系统

    网上有很多关于window下Mysql自动备份的方法,可是真的能用的也没有几个,有些说的还非常的复杂,难以操作. 我们都知道mssql本身就自带了计划任务可以用来自动备份,可是mysql咱们要怎么样自 ...

  3. windows系统——mysql自动定时备份数据库的最佳方法

    网上有很多关于window下Mysql自动备份的方法,可是真的能用的也没有几个,有些说的还非常的复杂,难以操作. 我们都知道mssql本身就自带了计划任务可以用来自动备份,可是mysql咱们要怎么样自 ...

  4. Mysql数据库自动定时备份软件推荐--MySqlBackupFTP(免费,亲测可用,附使用图示)

    MySqlBackupFTP是一款Mysql数据库自动定时备份软件,免费版本就基本上可以满足我们的需求,不需要什么破解版,可直接官网下载安装使用. 先看结果(日志): 软件界面: 可以设定计划任务,每 ...

  5. 黄聪:VPS实现自动定时备份网站数据以及Mysql数据库到百度云同步盘

    建站多了,备份成了头疼的问题,因为你不知道你的VPS什么时候会宕机或者服务商跑路,一旦网站数据丢失,那么相当于前功尽弃了,所以自己研究出了一套自动备份的方法. 需要的东西: 1.一个VPS(虚拟空间没 ...

  6. Cisco设备自动定时备份配置

    前言 当我们管理的网络设备为个位数的时候,手动的把配置通过tftp方式copy出来还是可以的.但是当我们管理几十台甚至上百台(有点夸张,都这个级别了肯定用专业的运维软件或者开发运维平台进行管理)的时候 ...

  7. Centos使用crontab自动定时备份mysql的脚本

    在我们网站上线之后免不了需要备份数据库,为什么要备份呢?我给大家列出了3个理由. 1.防止数据丢失 2.防止数据改错了,可以用来恢复 3.方便给客户数据 以 上几点告诉我们要经常备份,当然我今天给大家 ...

  8. linux自动定时备份web程序和mysql数据库

    前些天受朋友说linux定时备份不知道怎么搞,叫帮忙处理一下.由于这段时间正闲着,所以也就欣然答应.由于朋友对linux不懂也希望我将操作的过程记录下来,也就是越详细越好.所以写得比较$%^& ...

  9. Linux VPS自动定时备份网站文件和MYSQL数据库到FTP空间(LNMP)

    如果我们网站更新不是很频繁,我们可以定期手动进行备份网站文件和MYSQL数据库导出.如果我们网站数据更新频繁,且数据尤为重要,建议要采用定期自动 备份,至少需要多备份数据,无论我们选择何种优秀的VPS ...

随机推荐

  1. [转]MVC过滤器

    本文转自:http://www.cnblogs.com/HopeGi/p/3342083.html APS.NET MVC中(以下简称“MVC”)的每一个请求,都会分配给相应的控制器和对应的行为方法去 ...

  2. Linux Core Dump

    当程序运行的过程中异常终止或崩溃,操作系统会将程序当时的内存状态记录下来,保存在一个文件中,这种行为就叫做Core Dump(中文有的翻译成“核心转储”).我们可以认为 core dump 是“内存快 ...

  3. codevs 2495 水叮当的舞步

    题目链接:水叮当的舞步 我现在开始发题目链接了(主要还是因为懒得整理题面)-- 这道题一开始是看到MashiroSky在写,于是我也开始写这道题了(说白了就是狙击他)-- 这道题看到这么小的范围当然给 ...

  4. 除非Microsoft FTP 服务(FTPSVC)正在运行,否则无法启动FTP站点。服务目前已停止

    ftp站点就建成了,试下启动,右击站点,"管理ftp站点"-"启动".如果启动不了,出现“除非Microsoft FTP 服务(FTPSVC)正在运行,否则无法 ...

  5. 十分钟轻松让你认识ASP.NET MVC6

    这篇文章说明下如何在普通编辑器下面开发mvc6应用程序. 上篇文章: 十分钟轻松让你认识ASP.NET 5(MVC6) 首先安装mvc6的nuget包: 可以看到在project.json文件中添加了 ...

  6. Nginx负载均衡实践之一:基本实现

    由于现在的网站架构越来越大,基于互联网的用户也是日渐增长,所以传统的单机版服务器已经渐渐不能适应时代发展的需要.最近在和其他企业接触的过程中,发现对于互联网的经验尤为看重,所谓的互联网经验,其实就是指 ...

  7. Windows Live Writer 2012 on .net 4

    众所周知,强大的live套件不再更新,止步于2012,所以安装的时候需要.net 3.5的运行时,这很讨厌,在新系统里面是.net 4运行时的,.net运行时的设计者脑袋张虫,新的居然不默认支持旧的程 ...

  8. 1122从业务优化MYSQL

    http://blog.itpub.net/22664653/viewspace-2079576/ 开发反馈一个表的数据大小已经130G,对物理存储空间有影响,且不容易做数据库ddl变更.咨询了开发相 ...

  9. Curl扩展开启失败解决方案

    1.php.ini 开启curl扩展 2.设置有时候开启之后,curl还是不能将php目录下的libssh2.dll复制到apache/bin下.(基本上可以成功) 3. 如果没有开启成功,将php安 ...

  10. 大二在CSDN的博客整理

    001我为什么想写博客 控制台版2048 version_1.0总结 022 囚徒困境中的均衡-----从一篇经典论文说起 021 模拟退火算法学习(一)-----求解最短连通路径 020 小记一次网 ...