博主使用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. Nginx manifest 实现 HTML5 Application Cache

    什么是Application Cache HTML5引入了应用程序缓存技术,意味着web应用可进行缓存,并在没有网络的情况下使用,通过创建cache manifest文件,可以轻松的创建离线应用. A ...

  2. JSP连接数据库,报Unable to compile class for JSP

    先看一下报错原因: HTTP Status 500 - Unable to compile class for JSP: type Exception report message Unable to ...

  3. 报表开发之批量导入导出excel

    在日常使用报表过程中,会有这样一种情况,你将Excel表分发给各个员工,员工填完后,统一整理成多个Excel,你需要将这些数据,用报表的填报功能,提交录入到数据库中,这样一来可避免到服务器机房录数据的 ...

  4. jquery选择器案例

    一.预期效果 实现一个效果,如下. 品牌列表默认精简显示,单击“显示全部品牌”按钮显示全部品牌,同时列表将推荐的品牌的名字高亮显示,按钮里的文字变成“精简显示品牌”.再次点击“精简显示品牌”回到初始页 ...

  5. 第九章 JQUI

    一.什么是插件 ①是遵循一定接口规范编写的程序 ②是原有系统平台功能的扩展和补充 ③只能运行在规定的系统平台下,而不能单独运行 注:由于jQuery插件是基于jQuery脚本库的扩展,所以所有jQue ...

  6. IIS部署站点相关经验总结

    IIS部署站点相关经验总结 1.IIS和.net4.0安装是有先后顺序的,应该先安装.net framework 4.0,再安装IIS.如果按相反顺序安装的话,IIS中看不到4.0相关的东西,那么只能 ...

  7. 为什么 Java 8 中不再需要 StringBuilder 拼接字符串

    为什么 Java 8 中不再需要 StringBuilder 拼接字符串 来源:codeceo 发布时间:2016-12-27 阅读次数:427 0   在Java开发者中,字符串的拼接占用资源高往往 ...

  8. linq distinct 不够用了!

    问题引出:在实际中遇到一个问题,要进行集合去重,集合内存储的是引用类型,需要根据id进行去重.这个时候linq 的distinct 就不够用了,对于引用类型,它直接比较地址.测试数据如下: class ...

  9. Nginx搭建https服务器

    HTTPS简介 HTTPS(Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单来讲就是HTTP的安全版.即H ...

  10. bzoj3343

    3343: 教主的魔法 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 1178  Solved: 527[Submit][Status][Discus ...