NanoPi R4S-RK3399 is a great new OpenWrt device

The easiest way is to do a custom build increasing the file system size during the build (option CONFIG_TARGET_ROOTFS_PARTSIZE in .config file, there is also an option for this in make menuconfig UI). I am doing this (squashfs), and the file system increased size is preserved during the upgrade.

1 Like

I'm using an old 120GB SSD over a USB 3.0 to SATA cable and I couldn't be happier. Not using docker yet but the idea is to have the images stored on the SSD too.

Well I didn't jump into making my own image yet... and I don't understand why the official image could not set the size correctly

yeah but if system size remain at 100MB, you could not install no need space for docker images...

Official image is for general usage. I understand that more specific utilities/roles would be normal to require a little bit more of hands on and manual adjustments. Like the Ubound (recursive DNS) I've included on mine.

You can find more about OpenWRT on SD cards and how to expand the filesystem here:

Because the main target of openwrt ever since it was made, are devices which have very limited storage space and low ram, in other words, all-in-one domestic routers. Routers with a lof of ram and storage space came much later with openwrt support and are not the focus of openwrt.

So if you want to understand how to proper upgrade between openwrt builds(Ex: when there is a new release) without losing settings and etc, and also want to know how to expand the device partitions for more space, then you will need to make an effort to learn on how to do all of that.

One easy way to expand storage space is to use ext4 img instead of squashfs and use gparted to do it, its easy, fast and it works!

Now if you don't have the time or if after a lot of time wasted you still can't understand on how to do all of the above and still wants more storage space, then i suggest that you try friendlywrt! Because friendlywrt uses some scripts that will automatically create another partition on the sd card and will expand said partition on first boot, in other words, you will have the full storage capability of the sd card that you are using available to you automatically and right after the first boot.

In some aspects friendlywrt is more noob friendly than openwrt is.


Ok but as soon as you support nanopi r4S 4GB in your targeted firmware, why not putting the right command in the building process to use the 4GB ??

Hey mate, R4S 4GB version has 4GB RAM and it's all ready to use, always.
What needs to be expanded, if that's the case, is the storage that's on the MicroSD card, which in turn is totally unrelated to RAM...


The regular NanoPi R4S (1GB or 4GB of RAM) comes with zero internal storage. It boots only from a MicroSD card of your choice of size and it has two USB ports where you can plug external storage too but you can't boot from it by design.

By 4GB you mean the ram? It already properly recognizes and uses the 4GB of ram, what needs to be adjusted is the storage space on the SD card.


What’s the correlation between ram size and sd size?!

Anyway just us an external drive and it will not be resized when you will flash a new build.

1 Like

Indeed I can and I did install external usb drive… but am I wrong saying that packages will keep installing in the 100MB space which doesn’t permit to install much package…

Thank you - - - clear and easy to understand - - - - very gratefully acknowledged!!!!!!!!!!!!!

Kudo to you sir!

(You recommend balena etcher - - - I used dd - - - - are there any serious advantages to using etcher?)

So I do the 'grow filesystem' stuff after the nanopi is running and my network is back on its present router?
(Need to keep the router because without that specific machine (mac address) I have no internet access.)


(Hopefully this follow-up question is not too onerous!)

It has a GUI for windows users - if you have dd (or cat) and know how to use it, just use it.

1 Like

Thank you - - - etcher is available for linux but I'm getting to prefer lower level tools - - - - seems like less things show up snafu or fubared that way!

You need to use the ext4 sysupgrade image instead of the squashfs image I pointed you to if you are going to grow your file system partitions on the sd card. And yes, you should do that after getting a basic configuration working. Be aware that every time you sysupgrade with a new ext4 sysupgrade image, you will lose your grown partitions.

Interesting - - - that begs the question of 'why do I want to then grow the file system partitions'?

Seems like more than a bit of a make work project even if its every 6 months that there is a change.

Are there any other good options?


Take a look here it will answer some(if not all) of your questions:

Since you brought it up, I assumed you knew why you wanted to do it (grow the file system). Just stick with squashfs images if you do not need larger partitions.

Carlos Gilberto xShARkx
September 17 |

  • | - |

Take a look here it will answer some(if not all) of your questions:

Thank you.

Pity its not a text document.
(Takes over 21 minutes to watch and I would likely have to repeat at least a few sections.
A text document - - - oh well - - - I think I'm just a dinosaur!)


1 Like