komentarze 2

Mikrotik i backup codzienny

Tak jak w przypadku The Dude tak samo przydaje się mieć backup ustawień z urządzeń Mikrotik rozsianych po sieci. Po co utrudniać sobie życie jak można ułatwić, wykorzystując do tego samo urządzenie i automatyzując sam proces. Sam backup polega na wygenerowaniu pliku binarnego .backup oraz pliku tekstowego .rsc. Osobiście wolę mieć oba, pierwszy wgrywam, drugi mam do podglądu wszystkich ustawień.

/system script
add name=FTPBackup owner=admin policy=\
    ftp,reboot,read,write,policy,test,password,sniff,sensitive source=":log info \"\
    Starting Automatic Backup Script Configure By cr0c0dil3\"\r\
    \n:log info \"Modyfikowany przez Marcin Morawiec\"\r\
    \n:global thisdate [/system clock get date]\r\
    \n:global datetimestring ([:pick \$thisdate 4 6] .\"-\" . [:pick \$thisdate 0 3\
    ] .\"-\" . [:pick \$thisdate 7 11])\r\
    \n\r\
    \n/system backup save name=\"\$[/system identity get name]_\$datetimestring\" \
    \r\
    \n:log info \"Backup Please wait...!!!\"\r\
    \nsystem export compact file=\"\$[/system identity get name]_\$datetimestring\"\
    \_\r\
    \n:log info \"Export Please wait...!!!\"\r\
    \n:delay 5s\r\
    \n:log info \"Sending Backup Mikrotik to FTP Server.............\"\r\
    \n/tool fetch address=ip_address src-path=\"\$[/system identity get name]_\$\
    datetimestring.backup\" user=user password=password port=21 upload=yes \
    ascii=no mode=ftp dst-path=\"/backup/\$[/system identity get name]_\$datetimest\
    ring.backup\"\r\
    \n:log info \"Sending Export Mikrotik to FTP Server.............\"\r\
    \n/tool fetch address=ip_address src-path=\"\$[/system identity get name]_\$\
    datetimestring.rsc\" user=user password=password port=21 upload=yes asc\
    ii=no mode=ftp dst-path=\"/backup/\$[/system identity get name]_\$datetimestrin\
    g.rsc\"\r\
    \n:delay 5s\r\
    \n:log info \"Deleting Backup Files\"\r\
    \n/file remove \"\$[/system identity get name]_\$datetimestring.rsc\"\r\
    \n/file remove \"\$[/system identity get name]_\$datetimestring.backup\"\r\
    \n:log info message=\"Successfully removed Temporary Backup Files\"\r\
    \n:delay 1\r\
    \n:log info \"Finished Backup Script...!!!!\""
  
/system scheduler
add interval=1d name=FTPBackupMT on-event="/system script run FTPBackup" policy=\
    ftp,reboot,read,write,policy,test,password,sniff,sensitive start-date=\
    apr/01/2016 start-time=00:00:15

Skrypt wzorowany jest na znalezionym w internecie tutaj. Przejrzysty, składa się z kilku poleceń. Łatwo można dostosować go do siebie. Pamiętać należy o podaniu swojego IP serwera FTP, użytkownika i hasła oraz ścieżki na serwerze gdzie ma być składowany backup. U mnie backup ląduje na serwerze NAS4FREE gdzie w odstępach tygodniowych protokołem rsync wędrują na kolejnego NASa. W planach jest jeszcze opcja szyfrowania archiwum i wysyłania go na pocztę aby mieć kolejną kopię w innej lokalizacji.

2 Comments

    • Marcin

      Mam w sieci setkę urządzeń, sukcesywnie przechodzę z fw. i mam 6.32 6.34 i 6.38.5 i nie mam takiego problemu.
      Takie zdarzenie występuje gdy skrypt nie prześle pliku, nie przejdzie do następnego kroku tylko zostanie zakończony, tym samym pliki pozostaną. Nie są to ogromne ilości MB, co przy codziennym backapie nie powinno zapchać urządzeń w przeciągu roku czy dwóch. Backup zajmuje ok. 50-100KB co daje rocznie jakieś 36MB, moje stare Routerboardy mają 64MB, nowe 128MB.

Leave a Reply

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *