Last active
July 27, 2021 22:54
-
-
Save ranzhe/8435acff931f73149db0 to your computer and use it in GitHub Desktop.
Automatic FTP backup script for Mikrotik RouterOS
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
:local saveUserDB true | |
:local saveSysBackup true | |
:local encryptSysBackup false | |
:local saveRawExport true | |
:local FTPServer "ftpserver.tld" | |
:local FTPPort 21 | |
:local FTPUser "my-mikrotik" | |
:local FTPPass "SecurePassword" | |
:local ts [/system clock get time] | |
:set ts ([:pick $ts 0 2].[:pick $ts 3 5].[:pick $ts 6 8]) | |
:local ds [/system clock get date] | |
:set ds ([:pick $ds 7 11].[:pick $ds 0 3].[:pick $ds 4 6]) | |
:local fname ("BACKUP-".[/system identity get name]."-".$ds."-".$ts) | |
:local sfname ("/".$fname) | |
:if ($saveUserDB) do={ | |
/tool user-manager database save name=($sfname.".umb") | |
:log info message="User Manager DB Backup Finished" | |
} | |
:if ($saveSysBackup) do={ | |
:if ($encryptSysBackup = true) do={ /system backup save name=($sfname.".backup") } | |
:if ($encryptSysBackup = false) do={ /system backup save dont-encrypt=yes name=($sfname.".backup") } | |
:log info message="System Backup Finished" | |
} | |
if ($saveRawExport) do={ | |
/export file=($sfname.".rsc") | |
:log info message="Raw configuration script export Finished" | |
} | |
:local backupFileName "" | |
:foreach backupFile in=[/file find] do={ | |
:set backupFileName ("/".[/file get $backupFile name]) | |
:if ([:typeof [:find $backupFileName $sfname]] != "nil") do={ | |
/tool fetch address=$FTPServer port=$FTPPort src-path=$backupFileName user=$FTPUser mode=ftp password=$FTPPass dst-path=$backupFileName upload=yes | |
} | |
} | |
:delay 5s | |
:foreach backupFile in=[/file find] do={ | |
:if ([:typeof [:find [/file get $backupFile name] "BACKUP-"]]!="nil") do={ | |
/file remove $backupFile | |
} | |
} | |
:log info message="Successfully removed Temporary Backup Files" | |
:log info message="Automatic Backup Completed Successfully" |
The recovery method does not work with this command
terminal ===== tool user-manager database save name = namebackup
Please tell us the best way to recover my user information because the above code does not answer
با سلام اسکریپت بالا جواب میدهد ولی موقع ریکاوری با دستور در ترمینال به مشکل بر خوردم
ریکاوری ارتباطی به اسکریپت نداره / نسخه میکروتیک زمان گرفتن خروجی و موقع ریکاوری باید یکی باشه
This script provides an ability to create Mikrotik's daily backups to email. You can also enable automatic RouterOS upgrade or leave only notifications about new firmware versions.
https://github.com/beeyev/Mikrotik-RouterOS-automatic-backup-and-update
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
How does this script work exactly?