Hi all,
I want to share a working upgrade path for CCR2004 routers that fail upgrading from older RouterOS 7 versions with this error:
upgrade failed, free XXX kB disk space for a (null)upgrade
(example: free 297 kB)
Important: This is not a normal “delete files / remove packages” issue.
If you start from RouterOS older than 7.16.2, the upgrade to newer versions (7.20 / 7.21 etc.) can fail because the router cannot stage/unpack the newer RouterOS image in the current NAND layout.
Working upgrade path (confirmed on CCR2004):
-
Upgrade to 7.16.2
-
Then upgrade to 7.18.2
-
Then upgrade to 7.21
After passing through 7.16.2 → 7.18.2, upgrading to 7.21 works normally.
So if you are on something like 7.12.x / 7.13 / 7.14 / 7.15, don’t try to jump directly to 7.21, use this path instead.
Hope this helps others who hit the same issue while upgrading CCR2004.
Request / question to MikroTik developers
This issue is very confusing for users, because the router only shows the “disk space / (null)upgrade” error, but does not explain the real reason or the required upgrade path.
Could MikroTik please improve this by adding:
1) Ability to upgrade directly to a specific RouterOS version from the Package Manager / update system
(e.g. select version 7.16.2 / 7.18.2 / 7.21 instead of only “stable/testing/…”)
2) Include the NAND resize / migration script automatically in all newer RouterOS builds
Before unpacking the RouterOS upgrade package:
-
check the current NAND partition/layout size
-
if it’s too small, run the resize/migration step automatically
-
show a clear message that a NAND layout upgrade/migration is needed
3) Built-in upgrade scheduler (with optional RouterBOARD firmware upgrade)
Please add a built-in scheduling option like:
-
“install updates daily at 01:00”
-
optionally include
/system/routerboard/upgrade+ reboot
So admins don’t need to create a manual scheduler script each time just to do safe automatic upgrades during a maintenance window.
Hope this helps others!