# Автоматическая отправка бэкапа (резервной копии) MikroTik на почту

## Автоматическая отправка бэкапа (резервной копии) MikroTik на почту

Пока оборудование работает стабильно практически никто не задумывается о резервном копировании. Но бывают ситуации когда при малейших изменениях в конфиге оборудование перестает работать стабильно и многие настройки приходится восстанавливать. Чтобы избежать подобных ситуаций и упростить себе жизнь - настройте один раз **MikroTik** на автоматический бэкап с последующим отправлением файлов на почту.

Открываем **System(1)-> Scripts(2)**&#x438; добавляем **новый скрипт** (3). Мы его назвали **backup\_email**(4), у вас он может называться как угодно.

В поле **Source(5)**&#x432;ставляем сам скрипт:

*{*

*:log info "Starting Backup Script...";*

*:local sysname \[/system identity get name];*

*:local sysver \[/system package get system version];*

*:log info "Flushing DNS cache...";*

*/ip dns cache flush;*

*:delay 2;*

*:log info "Deleting last Backups...";*

*:foreach i in=\[/file find] do={:if (\[:typeof \[:find \[/file get $i name] \\*

*"$sysname-backup-"]]!="nil") do={/file remove $i}};*

*:delay 2;*

*:local smtpserv \[:resolve "smtp.yandex.ru"];*

*:local Eaccount \[/tool e-mail get user];*

*:local pass \[/tool e-mail get password];*

*:local backupfile ("$sysname-backup-" . \\*

*\[:pick \[/system clock get date] 7 11] . \[:pick \[/system \\*

*clock get date] 0 3] . \[:pick \[/system clock get date] 4 6] . ".backup");*

*:log info "Creating new Full Backup file...";*

*/system backup save name=$backupfile;*

*:delay 2;*

*:log info "Sending Full Backup file via E-mail...";*

*/tool e-mail send from="<$Eaccount>" to=$Eaccount server=$smtpserv \\*

*port=587 user=$Eaccount password=$pass start-tls=yes file=$backupfile \\*

*subject=("$sysname Full Backup (" . \[/system clock get date] . ")") \\*

*body=("$sysname full Backup file see in attachment.\nRouterOS version: \\*

*$sysver\nTime and Date stamp: " . \[/system clock get time] . "" . \\*

*\[/system clock get date]);*

*:delay 5;*

*:local exportfile ("$sysname-backup-" . \\*

*\[:pick \[/system clock get date] 7 11] . \[:pick \[/system \\*

*clock get date] 0 3] . \[:pick \[/system clock get date] 4 6] . ".rsc");*

*:log info "Creating new Setup Script file...";*

*/export verbose file=$exportfile;*

*:delay 2;*

*:log info "Sending Setup Script file via E-mail...";*

*/tool e-mail send from="<$Eaccount>" to=$Eaccount server=$smtpserv \\*

*port=587 user=$Eaccount password=$pass start-tls=yes file=$exportfile \\*

*subject=("$sysname Setup Script Backup (" . \[/system clock get date] . \\*

*")") body=("$sysname Setup Script file see in attachment.\nRouterOS \\*

*version: $sysver\nTime and Date stamp: " . \[/system clock get time] . " \\*

*" . \[/system clock get date]);*

*:delay 5;*

*:log info "All System Backups emailed successfully.\nBackuping completed.";*

*}*

![](https://lh3.googleusercontent.com/F7Pp8siyOeQJKKzTYirPOPuJVVV25SMQTcOFgVAPZh60UWFdK3-diNtWoruqnUaoVNtKAsfcJAlHrKgfPyZJyeulGobntRPMuu4J7Bhbsi1yHtwo0UYjCc3t14RYJ-cZ8Sv00cT4)

Рассмотрим поэтапно,что делает этот скрипт.

1. Очищает кэш DNS (это необходимо в том случае, если адрес недействительный).
2. Удаляет старые файлы бэкапов, чтобы не забивалась память аналогичными файлами.
3. Создает файл бэкапа, но только для восстановления настроек на устройстве, на котором он создан.
4. Отправляет письмо с файлом бэкапа на заданный e-mail адрес.
5. Создает файл скрипта настроек \*.rsc. Это читабельный текстовый файл, для экспортирования на идентичный роутер.
6. Отправляет письмо с файлом скрипта настроек на заданный e-mail адрес.

В примере мы используем скрипт дляЯндекс Почты. Чтобы воспользоваться сервисомGmail, необходимо заменить в скриптеsmtp.yandex.ruнаsmtp.gmail.com. ДляРамблер Почты, замените в скриптеsmtp.yandex.ruнаmail.rambler.ru.

Обращаем ваше внимание на эти строки:

:local Eaccount \[/tool e-mail get user];

:local pass \[/tool e-mail get password];

В скрипте вы указываете свой почтовый ящик с паролем, куда должны автоматически отправляться бэкапы, следующим образом:

:local Eaccount ПОЧТА@yandex.ru;

:local pass ВАШ ПАРОЛЬ;

Если вы оставите строки без изменений, то скрипт будет обращаться к данным, указанным в настройках MikroTik. Настроить их можно здесь Tools(6)-> Email(7).

![](https://lh6.googleusercontent.com/ygdSgbG1Zz0FZOtagxyx1aZ9HT6VuEtye3uKwvJh12JgmeJr63y_WbTC-WydJjbrH6UWTftX6qVlmjuKRFoZPVwbfnNt2mh_5pG40XZNo4iOePLI19gPpaO-D5higCK7vtDxe2qJ)

Теперь в случае сбрасывания скрипта будет происходить бэкап и отправляться на указанную вами почту. Чтобы процесс сделать автоматическим, необходимо настроить планировщик.

Открываем **System**(на картинке ниже это цифра 8)-> **Scheduler**(9), **добавляем новую задачу**(10). Даем ей наименование (у нас –**AutoBackup** (11). Указываем дату начала и промежуток, в который будет срабатывать скрипт(12). У нас бэкап будет происходить раз в 7 дней, с последующей отправкой файла на почту. В поле **On Event** пишем название вашего скрипта (у нас скрипт называется **backup\_email**, соответственно, его и указали(13).

![](https://lh5.googleusercontent.com/KNgeeWCaFLn8-rHrxTIfY0mUS6htNw7hohWJ85M_B_Cf_lOQaxKWpApE27sny2BwsL4PO8HLSXezHoY5b7KHpXMrPJcUDZdmzvnjytfFkT-UGogezAl08sGEJ7s5qPht8enky4KL)

Теперь **MikroTik** раз в 7 дней будет отправлять на почту два файла: **бэкап и скрипт настроек.** В силу технических особенностей **RouterOS** не умеет прикреплять к сообщению более одного файла за раз. Поэтому вы будете получать два письма.  <br>

![](/files/-LcL5jLbzTscRZFLHWZB)**|** [**Сайт** ](https://ciawifi.ru/ru)**|** [**О компании** ](https://ciawifi.ru/ru/company)**|** [**Контакты** ](https://ciawifi.ru/ru/contacts)**|**


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.ciawifi.ru/oborudovanie/mikotik/avtomaticheskaya-otpravka-bekapa-rezervnoi-kopii-mikrotik-na-pochtu.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
