autoupgrade
:local BackupPassword "PaSsWorD";
/system package update
:put "Check for Update"
check-for-updates once as-value;
:while ([get status] = "finding out latest version...") do={
:put "checking.."
:delay 1s;
};
:if ( [get status] = "New version is available") do={
:log info "New version is available"
:put "New version is available"
/system/backup/cloud/print as-value;
:if ([ :len [ /system/backup/cloud/find ] ] > 0) do={
:log info "Replace Old Backup"
:put "Replace Old Backup"
/system/backup/cloud/upload-file action=create-and-upload password=$BackupPassword replace=[ get ([ find ]->0) name ] as-value;
} else={
:log info "Creating Backup"
:put "Creating Backup"
/system/backup/cloud/upload-file action=create-and-upload password=$BackupPassword as-value;
}
:log info "Starting Upgrade"
:put "Starting Upgrade"
/system package update install
}
:if ([/system/routerboard/get current-firmware] != [/system/routerboard/get upgrade-firmware]) do={
/system/routerboard/upgrade;
:delay 10s;
/system/reboot;
}
reboot
/system reboot
Send my IP
/ip dhcp-client print file=disk1/ipconfig.txt
/tool e-mail send server="smtp.gmail.com" port=25 user="backup@gmail.com" password=Win2021 start-tls=yes to="report@gmail.com" from="backup@gmail.com" subject="ip Home" body="Home ip" file=disk1/ipconfig.txt;
Удаленное включение компьютера
/tool/wol interface=bridge1 mac=64:00:6A:56:DA:53
Wifi on/off
/interface wireless disable wlan1
/interface wireless enable wlan1
Очистить логи
/system logging action set memory memory-lines=1
/system logging action set memory memory-lines=1000
Restore backup
Делаем бэкап, пауза 10 минут (600 сек) и загружаем бэкап обратно.
Логика такая.
Запустили скрипт, он сделал бэкап.
Дальше вы делаете какие-то настройки.
Если вас не отключило, останавливаете скрипт.
Если отключило, ждете, когда скрипт откатит конфиг.
/system backup save password="secret" name=disconnect
delay 600
/system backup load name=disconnect.backup password="secret"
Остановить скрипт
/system script job remove [find script=Name_of_script]