Best filesystem for small overlay partition?

Title basically. I'm building my own images configured to automatically use an usb partition (marked with the owrt_overlay label) as overlay, so even at first boot the internal rom is touched as less as possible and everything goes to USB. To do this I'm using a small 2GB (2 * 1000 MB) USB device, partitioned with 1GiB (1 * 1024 MiB) for overlay, 512 MiB of swap (why not) and the remaining left unpartitioned.

Now... whats the best file-system to use on such small partition? I now have a TD-W8980, so the CPU is a MIPS 34Kc if that matters. I'm aiming to get as much as overhead as possible, I will not use it as shared network drive, and never plan to remove the usb stick, place huge files in there, or resize the partitions.

ext4 no journal

Avoid F2FS if you care about your data, there are multiple issues being reported especially when using overlay. https://github.com/openwrt/openwrt/pull/1800#issuecomment-461799659

That my current way to go, but just because I already use that file system elsewhere... My question is more focused on this specific use case.

  • One small partition
  • Flash based
  • No need for resizing partition
  • It's a router so it will not write a lot
  • The CPU is a MIPS 34kc, does some fs perform better than other with this arch?

The final response could, and probably will, still be ext4 but I would like some more infos instead of a simply "it's the most used, go for that"

I'm using btrfs everywhere these days. it is flash aware, and extensible. haven't had any data loss, been using it for 4-5 years in backup and RAID configs... for your use it hardly matters as long as you don't have data loss, overlay will have zero writes on a normal day

Will try :slight_smile:

Also why not ext2? Could fit well in an usb drive and should have less overhead than ext4

It will also be slow as f on MIPS and I wouldn't recommend it on a low memory system and you're very clearly told that btrfs isn't suitable at least for now for some types of RAID. This page sums it up https://www.reddit.com/r/btrfs/comments/960990/list_of_known_btrfs_raid_56_bugs/

ext3/4 is your best choice given the SoC (CPU)

1 Like

I have no idea about performance on MIPS, and yes parity RAID has not been recommended, but mirror raid works very well.

well you may not have much of a choice. For devices with 4mb flash, you could do ext4 as /overlay back in v17.01, but when you install v18.06 on 4mb flash devices, there's not enough room to include kmod-ext4-whatever in kernel. You have to go f2fs as it cant automount an ext4 overlay. It'll skip over it during bootup.

I think larger flash devices may not have this limitation, but I definitely had this problem on my WNDR3800s.

Luckly have an 8MB flash :slight_smile: btw the question was not about flash space but more like, which is the best (less overhead, more performance, ...) filesystem to use as overlay with an USB drive with small parititons and a MIPS 34Kc CPU.

You could search the web for performance comparisons of different filesystems on USB flash media, crosscheck with the advice given in this thread, and eventually come to the conclusion:

2 Likes

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