What parts are microSD (flash)? What parts are in RAM?

I have a fast NanoPi R4S. But the storage usage seems low so I want to use one of my crappy microSD cards on it. From what I understand, default usage of openwrt is to read stuff from the microsd/flash, then run everything from RAM after that. It would seem all I would suffer is a slow boot time. Or if I ever want to use persistent logging or something that writes back to SD, I'd have performance issues. Can someone confirm? A "system requirements" page on the wiki would be helpful but I can't seem to find one. This is close: https://openwrt.org/supported_devices/864_warning

If you use the EXT4 image there will be more writes to the SD card, and squashfs will be much less. However there is still a chance that your crappy card will degrade by itself due to quality, even with squashfs if one day you decided to reboot it might just died and won't boot properly.

No, OpenWrt does not load an image into RAM and runs from there. The SD card contains a filesystem, and files are read a written as needed.


In addition to the comment by @eduperez, it is useful to state that in a default/typical OpenWrt system, writes are very infrequent - typically only necessary when installing packages or changing the configuration.

Most flash memory has limited write cycles before it begins to wear out - the number depends on the type/geberation/quality of the flash storage. Read, on the other hand, is typically unlimited in practical terms (technically it can also wear the flash memory out, but the cycle count for reads is typically at least several orders of magnitude greater than for writes).


What about tmpfs (ramdisk)? Is it possible to run openwrt from ram? Should this be avoided?

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.