ROS 5.x自动定时备份并发送到邮箱(实用)
博主使用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自动定时备份并发送到邮箱(实用)的更多相关文章
- SQL2008实现数据库自动定时备份——维护计划
在SQL Server中出于数据安全的考虑,所以需要定期的备份数据库.而备份数据库一般又是在凌晨时间基本没有数据库操作的时候进行,所以我们不可能要求管理员 每天守到晚上1点去备份数据库.要实现数据库的 ...
- [转]mysql自动定时备份数据库的最佳方法-支持windows系统
网上有很多关于window下Mysql自动备份的方法,可是真的能用的也没有几个,有些说的还非常的复杂,难以操作. 我们都知道mssql本身就自带了计划任务可以用来自动备份,可是mysql咱们要怎么样自 ...
- windows系统——mysql自动定时备份数据库的最佳方法
网上有很多关于window下Mysql自动备份的方法,可是真的能用的也没有几个,有些说的还非常的复杂,难以操作. 我们都知道mssql本身就自带了计划任务可以用来自动备份,可是mysql咱们要怎么样自 ...
- Mysql数据库自动定时备份软件推荐--MySqlBackupFTP(免费,亲测可用,附使用图示)
MySqlBackupFTP是一款Mysql数据库自动定时备份软件,免费版本就基本上可以满足我们的需求,不需要什么破解版,可直接官网下载安装使用. 先看结果(日志): 软件界面: 可以设定计划任务,每 ...
- 黄聪:VPS实现自动定时备份网站数据以及Mysql数据库到百度云同步盘
建站多了,备份成了头疼的问题,因为你不知道你的VPS什么时候会宕机或者服务商跑路,一旦网站数据丢失,那么相当于前功尽弃了,所以自己研究出了一套自动备份的方法. 需要的东西: 1.一个VPS(虚拟空间没 ...
- Cisco设备自动定时备份配置
前言 当我们管理的网络设备为个位数的时候,手动的把配置通过tftp方式copy出来还是可以的.但是当我们管理几十台甚至上百台(有点夸张,都这个级别了肯定用专业的运维软件或者开发运维平台进行管理)的时候 ...
- Centos使用crontab自动定时备份mysql的脚本
在我们网站上线之后免不了需要备份数据库,为什么要备份呢?我给大家列出了3个理由. 1.防止数据丢失 2.防止数据改错了,可以用来恢复 3.方便给客户数据 以 上几点告诉我们要经常备份,当然我今天给大家 ...
- linux自动定时备份web程序和mysql数据库
前些天受朋友说linux定时备份不知道怎么搞,叫帮忙处理一下.由于这段时间正闲着,所以也就欣然答应.由于朋友对linux不懂也希望我将操作的过程记录下来,也就是越详细越好.所以写得比较$%^& ...
- Linux VPS自动定时备份网站文件和MYSQL数据库到FTP空间(LNMP)
如果我们网站更新不是很频繁,我们可以定期手动进行备份网站文件和MYSQL数据库导出.如果我们网站数据更新频繁,且数据尤为重要,建议要采用定期自动 备份,至少需要多备份数据,无论我们选择何种优秀的VPS ...
随机推荐
- less简单入门
官网地址 http://lesscss.org/ less手册 www.lesscss.net/ bootstrap官网less介绍 http://www.bootcss.com/p/lesscss/ ...
- MMORPG大型游戏设计与开发(服务器 AI 基础接口)
一个模块都往往需要统一的接口支持,特别是对于非常大型的模块,基础结构的统一性非常重要,它往往决定了其扩展对象的通用性.昨天说了AI的基本概述以及组成,作为与场景模块中核心一样重要的地位,基础部分的设计 ...
- Learn Python The Hard Way ex41中的程序
import random from urllib import urlopen import sys WORD_URL = "http://learncodethehardway.org/ ...
- Shell(C++实现,CodeBlocks+GCC编译)
程序效果: 只实现了login .cd .ls .cat 四个命令.而且只能在 Windows 下运行. 代码: //main.cpp 1 #include <iostream> #inc ...
- ASP.NET CORE dotnet run 命令使用debug方式运行
由于我的开发环境比较复杂,每次调试一套项目都要启动好几个VS,比较繁琐,今天决定换一种方式调试,对于不该改动的代码的附加项目直接使用dotnet run命令以debug的运行方式运行, 一开始无法运行 ...
- C/C++编程语言学习资料尽收眼底 电子书+视频教程
Visual C++(VC/MFC)学习电子书及开发工具下载请看这里 史无前例的网络最全最强C/C++资料索引: C/C++编程语言学习资料尽收眼底 电子书+视频教程 VC++/MFC(VC6)开发技 ...
- 关于refs/for/ 和refs/heads/
1. 这个不是git的规则,而是gerrit的规则, 2. Branches, remote-tracking branches, and tags等等都是对commite的引用(re ...
- javaScript中的页面传值
function getURIParam(name) { var search = window.location.search; search = search.substring(1); if ( ...
- canvas缓动3
这次缓动的是旋转旋转,写完之后才知道原来rotate是绕原点旋转,而且还带着rect本身的X与Y一起,所以我采用了translate达到位移效果,以免旋转到画布外面去,画完之后效果惨不忍睹,原来是忘记 ...
- Eclipse+maven创建webapp项目<二>(转)
原文地址:http://www.cnblogs.com/candle806/p/3439469.html 1.开启eclipse,右键new-->other,如下图找到maven project ...