Dobrý den, prosím o pomc s tímto skriptem, procházel jsem forum, a našel jsem jen zmíňky, ale ne řešení.

Zkoušel jsem nasadit tento skritp dle návodu:

https://www.dasm.cz/clanek/automatizace-upgrade-a-zalohy-mikrotiku, vše funguje, ale neudělá se mi automatická aktualizace.

Zde je můj zoufalý pokus, který nefunguje.

/system package update check-for-update

:delay 10

:local identity [/system identity get name]

:local current [/system package update get installed-version]

:local latest [/system package update get latest-version]

:if ([:tostr $latest] != "" && $current != $latest) do={

/system package update download

:delay 50

:local mailbody ("Identity: " . $identity . "\r\nBoard name: " . [/system resource get board-name] . "\r\nFrom version: " . $current . "\r\nTo version: " . $latest)

/tool e-mail send to=aricak@xxxxxx.cz subject=($identity . " - RouterOS has been upgraded") body=$mailbody

:delay 3

/system reboot

}

Mohu vás poprosit, o pomoc. Děkuji

/system package update check-for-update

:delay 10

:local identity [/system identity get name]

:local current [/system package update get installed-version]

:local latest [/system package update get latest-version]

:if ([:tostr $latest] != "" && $current != $latest) do={

/system package update download

:delay 50

:local mailbody ("Identity: " . $identity . "\r\nBoard name: " . [/system resource get board-name] . "\r\nFrom version: " . $current . "\r\nTo version: " . $latest)

/tool e-mail send to=aricak@tiscali.cz subject=($identity . " - RouterOS has been upgraded") body=$mailbody

:delay 3

/system reboot

}

Pozor, záleží na verzi ROS - syntaxe se měnila.

S 6.36 používám toto přes SSH:

/system package update; set channel=bugfix; check-for-updates once; :delay 5s; :if ([get status] = "New version is available") do={:put ">>>> Upgrade"; install} else={:put "Actual"}

Příkazy put mohou být nahrazeny přiřazením proměnných pro sestavení e-mailu.

Je doporučeno po rebootu také udělat upgrade FW:

:if ([/system routerboard get current-firmware] != [/system routerboard get upgrade-firmware]) do={/system script add name="upgrade" source="/system routerboard upgrade";/system script run upgrade;:delay 5;/system script remove [find name=upgrade];:delay 5;:put ">>>> Upgrade";/system reboot} else={:put "Actual"}

Mirek

Děkuji za odpověď.

Mám verzi 6.40.3, protože jsem ji manuálně updatoval...

Ale nevím jak vyzkouším funkčnost...

"Jak vyzkouším funkčnost" ??

Co tím myslíš?

sorry blbost, funkčnost je to že přijde mail...

📡 Telekomunikace.cz