fbpx

Backup automático Mikrotik via FTP

Backup automático Mikrotik via FTP

Podemos querer fazer backup da configuração do nosso Mikrotikdispositivo para o FTPservidor em intervalos regulares, gostaríamos de mostrar a você um script curto e bonito que podemos usar para isso.
Você pode executar esse agendamento do sistema de script de acordo com um horário que determinaremos e salvaremos seu backup de configuração em seu FTPservidor de acordo com os parâmetros a seguir. Ao fazer isso periodicamente, garantiremos o recebimento regular de backup.

Faça backup do banco de dados saveUserDB Usermanager ( true / false )
saveSysBackup System Backup ( true / false )
EncryptSysBackup System Backup Seja criptografado ( true / false )
Exporte saveRawExport System Backup ( true / false )

verdadeiro = sim
falso = não

FTPServer Ftp Server Name
FTPPort Ftp Server Port
FTPUser Nome de usuário
FTP FTPPass Senha de FTP

Conforme mostrado na captura de tela abaixo, abrimos o agendador do sistema e colamos o código abaixo.

: local saveUserDB falso

: local saveSysBackup true

: local encryptSysBackup false

: local saveRawExport true


: FTPServer local “FtpServerIPorDomain”

: FTPPort 21 local

: FTPUser local “FtpUsername”

: FTPPass local “Senha”



: 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 ([: escolha $ ds 7 11]. [: escolha $ ds 0 3]. [: escolha $ 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 = “Backup do banco de dados do User Manager concluído”

}

: if ($ saveSysBackup) do = (

: if ($ encryptSysBackup = true) do = {/ backup do sistema save name = ($ sfname. “. backup”)}

: if ($ encryptSysBackup = false) do = {/ backup do sistema save dont-encrypt = yes name = ($ sfname. “. backup”)}

: log info message = “Backup do sistema concluído”

}

if ($ saveRawExport) do = (

/exportar arquivo = ($ sfname. “.rsc”)

: log info message = “O arquivo de exportação de configuração foi criado.”

}

: local backupFileName “”

: foreach backupFile in = [/ file find] do = {

: set backupFileName (“/”.diniz/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

}

}

: atraso 5s

: foreach backupFile in = [/ file find] do = {

: if ([: typeof [: find [/ file get $ backupFile name] “BACKUP -“]]! = “nil”) do = {

/ arquivo remove $ backupFile

}

}


: log info message = “Arquivos temporários excluídos”

: log info message = “Auto Backup Complete.”

Espero que tenha sido um artigo útil.

Deixe uma resposta

0