diff options
author | Christian Hesse <mail@eworm.de> | 2022-03-30 18:03:50 +0200 |
---|---|---|
committer | Christian Hesse <mail@eworm.de> | 2022-03-31 10:46:02 +0200 |
commit | 82c0e1c44c07013f6bc8105489181152b46b126b (patch) | |
tree | 4cddad633b38ef17281a92c2de7e1553792940aa /backup-partition | |
parent | 58f5a4fced9c35b4f3a5e25bebbac72e0a2c943a (diff) |
introduce backup-partitionchange-79-v6
(cherry picked from commit 71b69fc1898babf490b7dc8e7b0769022d5a2f79)
Diffstat (limited to 'backup-partition')
-rw-r--r-- | backup-partition | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/backup-partition b/backup-partition new file mode 100644 index 0000000..c72c7f9 --- /dev/null +++ b/backup-partition @@ -0,0 +1,36 @@ +#!rsc by RouterOS +# RouterOS script: backup-partition +# Copyright (c) 2022 Christian Hesse <mail@eworm.de> +# https://git.eworm.de/cgit/routeros-scripts/about/COPYING.md +# +# provides: backup-script +# +# save configuration to fallback partition +# https://git.eworm.de/cgit/routeros-scripts/about/doc/backup-partition.md + +:local 0 "backup-partition"; +:global GlobalFunctionsReady; +:while ($GlobalFunctionsReady != true) do={ :delay 500ms; } + +:global LogPrintExit2; + +:if ([ :len [ / partitions find ] ] < 2) do={ + $LogPrintExit2 error $0 ("Device does not have a fallback partition.") true; +} + +:local ActiveRunning [ / partitions find where active running ]; + +:if ([ :len $ActiveRunning ] < 1) do={ + $LogPrintExit2 error $0 ("Device is not running from active partition.") true; +} + +:local ActiveRunningVar [ / partitions get $ActiveRunning ]; + +:do { + / partitions save-config-to ($ActiveRunningVar->"fallback-to"); + $LogPrintExit2 info $0 ("Saved configuration to partition '" . \ + ($ActiveRunningVar->"fallback-to") . "'.") false; +} on-error={ + $LogPrintExit2 error $0 ("Failed saving configuration to partition '" . \ + ($ActiveRunningVar->"fallback-to") . "'!") true; +} |