RouterOS自动备份脚本
本文最后更新于 396 天前,其中的信息可能已经有所发展或是发生改变。

目标

自动创建RouterOS备份文件,并存放至共享文件夹中。理论上说支持iSCSI、NFS、SMB等协议,下面的教程将以SMB为例。

安装扩展

因为RouterOS基础功能是没有挂载网络共享文件夹的,所以首先要安装扩展包ROSE-storage,RouterOS的扩展包可以在MikroTik官网上下载到。

选择下载相应的版本即可。(建议安装的扩展包版本与基础包版本一致)

解压压缩包,把rose-storage-x.xx.x.npk(以及其他需要安装或更新的软件包)直接上传到RouterOS根目录下,重启RouterOS,软件包就安装好了。

校准系统时间

理论上说该步骤不是必须的,但还是建议把系统时间校准。

System -> NTP Client,启用并填入time.cloud.tencent.comntp.aliyun.com,然后点击Apply,等待一会后当下面出现synchronized即代表NTP客户端已生效。

然后System -> Clock修改时区为Asia/Shanghai

挂载目录

打开Terminal,输入下面的命令挂载SMB目录,其中smb-share是指挂载的SMB目录名,slot是挂载点。

/disk/add type=smb smb-address=192.168.0.2 smb-user=routeros smb-password=12346789 smb-share=backup slot=nas

上面的命令运行后会将smb://192.168.0.2/backup挂载到nas目录。

创建脚本

System -> Script中添加一个名叫backup的新脚本,并填入下面的内容(直接全部复制粘贴可能出现编码问题,建议一行一行复制);其中keepCount是指最多保留的备份数量(为0则全部保存),path是备份文件的存放目录。

:local keepCount 5;
:local path "/nas"

:local filenameSuffix "-AutoBackup.backup"
:local fileList [/file/find where name ~ $filenameSuffix]
:local fileCount [:len $fileList]
:set keepCount ($keepCount - 1)
:if ($fileCount >= 1 and $keepCount >= 0 and $fileCount > $keepCount) do={
    :for i from=0 to=($fileCount - $keepCount - 1) do={
        :local fileToRemove [:pick $fileList $i]
        /file remove $fileToRemove
        :log info "Removed the backup file: $fileToRemove"
    }
}

:local currentDate [/system clock get date]
:local currentTime [/system clock get time]

:local fileDate ([:pick $currentDate 0 4] . [:pick $currentDate 5 7] . [:pick $currentDate 8 10])
:local fileTime ([:pick $currentTime 0 2] . [:pick $currentTime 3 5] . [:pick $currentTime 6 10])

:local filePath ($path . "/" . [/system identity get name] . "-" . $fileDate . "-" . $fileTime . $filenameSuffix)

/system backup save name=$filePath
:log info "Backup file created: $filePath"

保存后在Ternimal内输入

/system/script/run backup

运行后检查Files中是否有备份文件,以及log中的输出。

创建定时任务

System -> Scheduler添加一个新的定时任务,任务内容输入下面的命令

:execute script="backup"

其中Interval是指下次运行脚本的间隔时间。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇