社区讨论

雷竞技网站MikroTik应用
Alqatife
刚刚加入了
主题作者
职位: 14
加入: 2010年6月2日星期三下午3:40

备份到外部FTP有用的脚本

2011年6月7日星期二上午11:28

你好,

今天……8)有用的脚本自动备份系统+ UserManagerDB…
每天……新文件名称的时间和日期!!
每天……上传到外部FTP!!
每天……干净的! !节省空间……在Mikrotik没有副本!!雷竞技网站

首先是脚本:
代码:选择所有
/system script add name= ftp - backup policy=ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive source= # automated system - UM数据库备份2外部ftp \r\ \n# Get time\r\ \n:local ts[/系统时钟获取时间]\r\ \n:set ts ([:pick \$ts 0 2])。[:pick \$ts 35]。[:pick \$ts 6 8])\r\ \n#获取日期\r\ \n:local ds[/系统时钟获取日期]\r\ \n:set ds ([:pick \$ts 7 11])。[:pick \$ds 0 3]。[:pick \$ds 4 6])\r\ \n#这一行用于生成用户管理器备份的文件名-文件名将是UMDB- ServerName\?——日期\ ?——时间\ ?\r\ \n:local fname (\"/UMDB-\")。[/系统标识获取名称].\"-\".\$ds.\"- ".\$ts.\".umb\")\r\ \n#这一行生成用于系统备份的文件名-文件名将是UMDB- ServerName\?——日期\ ?——时间\ ?\r\ \n:local fname1 (\"/UMDB-\")。[/system identity get name].\"-\".\$ds.\"-\".\$ts.\".backup\")\r\ \n# all above is workaround to get unique \$filename=UserManagerDB - \$filename1=System\r\ \n/tool user-manager database save name=\$fname\r\ \n:log info message=UserManagerBackupFinished;\r\ \n/system backup save name=\$fname1\r\ \n:log info message=SystemBackupFinished;\r\ \n# Upload the UserManagerDB Backup to External FTP - change address to your ftp server + user + pass\r\ \n/tool fetch address=www.1.com src-path=\$fname user=user mode=ftp password=pass dst-path=/ upload=yes\r\ \n# Upload the System Backup to External FTP - change address to your ftp server + user + pass\r\ \n/tool fetch address=www.1.com src-path=\$fname1 user=user mode=ftp password=pass dst-path=/ upload=yes\r\ \n# Delay time to finish the upload - increase it if your backup file is big\r\ \n:delay 60s;\r\ \n# Find file name start with UMDB- then remove\r\ \n:foreach i in=[/file find] do={:if ([:typeof [:find [/file get \$i name] \"UMDB-\"]]!=\"nil\") do={/file remove \$i}}\r\ \n:log info message=UserMangerBackup-SystemBackup-TempRemoved;\r\ \n:log info message=UserManger-SystemBackup2CentOS-Finished;"
不要忘记在+ user + pass中更改ftp服务器的地址:
1 - /tool fetch address=www.1.comSrc-path =\$fname user=user mode=ftp password=pass dst-path=/ upload=yes
2 - /tool fetch address=www.1.comSrc-path =\$fname1 user=user mode=ftp password=pass dst-path=/ upload=yes

最后一步是配置调度器,以在给定的时间间隔执行上述脚本。使用以下命令确保每天执行该脚本:
代码:选择所有
/system scheduler add comment="" disabled=no interval=1d name=" system - um DB- FTP backup" \ on-event=FTP- backup start-date=jan/01/1970 start-time=00:00:00
方面,
Muntathar
croskiper
刚刚加入了
职位: 6
加入: 2010年1月9日星期六下午2:50

Re: Backup to External FTP有用的脚本

2011年7月24日星期日晚上8:30

嗨,我已经安装了你的脚本,但它不工作。
当我试图运行脚本它不工作,没有日志。我把我的地址,用户和密码ftp,但它不工作
当我移除:
---------------------------------------------------------------------------------------------
#上传UserManagerDB备份到外部FTP -更改地址到FTP服务器+ user + pass
/tool fetch address=www.1.comSrc-path =$fname user=user mode=ftp password=pass dst-path=/ upload=yes
#上传系统备份到外部FTP -更改地址到FTP服务器+ user + pass
/tool fetch address=www.1.comSrc-path =$fname1 user=user mode=ftp password=pass dst-path=/ upload=yes
#延迟时间来完成上传-如果你的备份文件很大,增加它
: 60年代延迟;
---------------------------------------------------------------------------------------------

它正在起作用。
日志告诉我系统备份和用户管理器备份已经完成。
在自动删除该备份之后。

谢谢你的帮助!!
最好的祝福. .
Alqatife
刚刚加入了
主题作者
职位: 14
加入: 2010年6月2日星期三下午3:40

Re: Backup to External FTP有用的脚本

2011年9月17日星期六上午9:09

嗨,我已经安装了你的脚本,但它不工作。
当我试图运行脚本它不工作,没有日志。我把我的地址,用户和密码ftp,但它不工作
当我移除:
---------------------------------------------------------------------------------------------
#上传UserManagerDB备份到外部FTP -更改地址到FTP服务器+ user + pass
/tool fetch address=www.1.comSrc-path =$fname user=user mode=ftp password=pass dst-path=/ upload=yes
#上传系统备份到外部FTP -更改地址到FTP服务器+ user + pass
/tool fetch address=www.1.comSrc-path =$fname1 user=user mode=ftp password=pass dst-path=/ upload=yes
#延迟时间来完成上传-如果你的备份文件很大,增加它
: 60年代延迟;
---------------------------------------------------------------------------------------------

它正在起作用。
日志告诉我系统备份和用户管理器备份已经完成。
在自动删除该备份之后。

谢谢你的帮助!!
最好的祝福. .
你好,

是的,它删除了备份文件从microtik上传到ftp服务器后…雷竞技网站
1-生成UserManager临时备份。
2- log info message=UserManagerBackupFinished。
3-生成系统临时备份。
4- log info message=SystemBackupFinished。
5—上传UserManagerDB备份文件到FTP服务器。
6—上传系统备份文件到外部FTP服务器。
7-删除临时备份文件UserManager + system。
8- log info message=UserMangerBackup-SystemBackup-TempRemoved。
9- log info message= usermanager - systembackup2centos - finished "FTP server"

最好的方面,
kassiolm
刚刚加入了
职位: 7
加入: 2008年4月1日星期二下午4:04

Re: Backup to External FTP有用的脚本

2013年7月31日星期三晚9:29

在v6.1上工作?
kassiolm
刚刚加入了
职位: 7
加入: 2008年4月1日星期二下午4:04

Re: Backup to External FTP有用的脚本

2013年8月2日星期五晚10:12

脚本正在创建文件,但不上传,需要帮助!!
JoePolgar
刚刚加入了
职位: 4
加入: 2010年12月14日星期二12:33 am

Re: Backup to External FTP有用的脚本

2013年8月14日星期三上午11:42

使用st-path=filename代替st-path=/
用户头像
zap71
常客
常客
职位: 83
加入: 2013年9月27日星期五上午11:10
地点:柏林,德国
联系人:

Re: Backup to External FTP有用的脚本

2013年12月27日星期五晚上8:06

我对整个东西做了一点修改,例如美化了日期字符串以表示YYYY-MM-DD格式,并在备份中添加了一个/export文件,这样就可以得到一个人类可读的格式。

整件事可以在RouterOS自动l雷竞技备份到FTP在哈利的科技博客。
用户头像
mac86
成员的候选人
成员的候选人
职位: 124
加入: 2006年11月25日星期六上午12:52
地点:巴伊亚布兰卡-阿根廷
联系人:

Re: Backup to External FTP有用的脚本

2016年7月29日星期五下午6:24

我对整个东西做了一点修改,例如美化了日期字符串以表示YYYY-MM-DD格式,并在备份中添加了一个/export文件,这样就可以得到一个人类可读的格式。

整件事可以在RouterOS自动l雷竞技备份到FTP在哈利的科技博客。

谢谢你!ZAP71…!非常有用的…!
雄伟的
常客
常客
职位: 90
加入: 2016年12月5日星期一上午11:19

Re: Backup to External FTP有用的脚本

2017年1月9日星期一下午5:10

非常感谢脚本的想法,我印象深刻,我想我会做一个自己的版本,本地保存到我的microSD上,而不是重新发明轮子,我决定使用一些你现有的代码,并调整它到我的目的。感谢原作者,如果你想做个好人,我也可以为我所做的改动贡献一点功劳;)

这个版本不保存任何文件到内部闪存,以保存软件和软件在有限的资源。请注意,您需要将fbase路径更改为保存备份的基本目录所在的位置,并且需要事先创建该目录,因为如果该目录不存在,则当前这里没有要创建的检查。

我希望有些人发现这对所有那些有外部存储的路由器都有用,比如RB750Gr3。

当前的文件结构是这样的…
代码:选择所有
磁盘1├──backups──auto├──export│├──Mikrotik-RB7雷竞技网站50Gr3_2-20170109-145244。rsc点──mi雷竞技网站crotik - rb750gr3_2 -20170109-145244。备份3个目录,2个文件
rOS脚本代码如下:
代码:选择所有
# basedir:local fbase "/disk1/backups/auto" #文件名前缀:local fnp "Mikrotik" # m雷竞技网站onth_array:本地月份("jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec");# get time:local ts [/system clock get time]:set ts ([:pick $ts 0 2])[:pick $ts 35]。[:pick $ts 68])# get Date :local ds [/system clock get date] # convert name of month to number :local month [ :pick $ds 0 3 ]; :local mm ([ :find $months $month -1 ] + 1); :if ($mm < 10) do={ :set mm ("0" . $mm); } # set $ds to format YYYY-MM-DD :set ds ([:pick $ds 7 11] . $mm . [:pick $ds 4 6]) # file name for system backup :local backupfn ($fnp."-".[/system identity get name]."-".$ds."-".$ts.".backup") # file name for config export :local exportfn ($fnp."-".[/system identity get name]."-".$ds."-".$ts.".rsc") # backup the data /system backup save name="$fbase/$backupfn" :log info message="system backup saved $fbase/$backupfn (1/2)" /export compact file="$fbase/export/$exportfn" :log info message="configuration export saved $fbase/export/$exportfn (2/2)."
不要忘记添加一个计划任务,并尽可能频繁地运行它。
fstirparo
刚刚加入了
职位: 14
加入: 2019年3月7日星期四晚上8:06

Re: Backup to External FTP有用的脚本

2019年4月17日星期三下午7:57

嗨的人!我试图使用几年前发布的脚本,但似乎命令SET改变了它的句法。

我正在尝试更新整个脚本,使其在较新的RouterOS版本上运行,但如果有人已经这样做了,请发布它。l雷竞技

谢谢
jcsm1998
刚刚加入了
职位: 5
加入: 2018年3月25日星期日晚上9:03

Re: Backup to External FTP有用的脚本

2019年10月15日星期二晚上9:40

你好,我使用v6.45.1更新了脚本
在脚本上更改这一点,并设置调度程序来运行脚本
将usr替换为用户名
将passwd替换为password
取代www.ftp.com到FTP服务器
添加到一个新脚本并赋予权限
代码:选择所有
#获取时间和日期:local ts[/系统时钟获取时间]:set ts ([:pick $ts 0 2]。[:pick $ts 35]。[:pick $ts 68]): localds [/system clock get date]:set ds ([:pick $ds 7 11])[:pick $ds 0 3]。[:pick $ds 46])# This line to generate the file name for System backup :local fname1 ("CCR-FTP--".$ds."-".$ts.".backup") /system backup save name=$fname1; #uncomment to send also by email (configure the tool email in your MK with valid smtp) #/tool e-mail send to="email@domain.com" subject=("mikrotik backup") body="Respaldo Historico CloudCore" file=$fname1; #post to root of the ftp server /tool fetch address=www.ftp.com src-path=$fname1 user=usr mode=ftp password=passwd dst-path=$fname1 upload=yes :log info "Backup Done";
GhostyG89
刚刚加入了
职位: 2
加入: 2020年7月17日星期五晚上10:46

Re: Backup to External FTP有用的脚本

2020年7月17日星期五晚上10:54

如果有人从最初的请求中寻找,加上人们多年来添加的内容。请看下面的内容。

我的脚本运行在RB4011 v6.45.1上
获取和设置时间和日期
:local ts [/system clock get time]
:set ts ([:pick $ts 0 2])。[:pick $ts 35]。[:pick $ts 68])
: localds [/system clock get date]
:set ds ([:pick $ds 7 11])[:pick $ds 0 3]。[:pick $ds 46])

#为系统和用户管理器备份生成文件名
:local fname1 ("——".$ds."-".$ts.".backup")
:local fname2 ("——".$ds."-".$ts.".umb")

#处理备份
/系统备份保存名称=$fname1;
:log info message=ConfigBackupFinished;
/user export file=$fname2;
:log info message=UserManagerBackupFinished;

#上传到FTP服务器
/tool fetch address=DOMAIN/IP src-path=$fname1 user=username mode=ftp password=password dst-path=$fname1 upload=yes
/tool fetch address=DOMAIN/IP src-path=$fname2 user=username mode=ftp password=password dst-path=$fname2 upload=yes
:日志信息“Backup upload”;

#找到“MHOME”并删除。
foreach i in=[/file find] do={if ([:typeof [:find [/file get $i name] "ROUTER IDENT-"]]!="nil") do={/file remove $i}}
:log info message=UserMangerBackup-ConfigBackup-TempRemoved;


####脚本结束

谁在线?

浏览本论坛的用户:没有注册用户和3个访客