X86 long term strategy (upgradability with expanded storage)

there were a few possibilities that others have presented here, and it ultimately depends on your needs and willingness to "work".
in my opinion, most of the users that have dedicated x86 running openwrt, have much more storage than the default images allow, for packages and data.
for these users one of these will work best:

  1. use ext4, create another "data" partition, monitor installed packages, build your own images (using imagebuilder, modifying CONFIG_TARGET_ROOTFS_PARTSIZE as needed (on a debian VM hosted on my N5105 openwrt machine, this takes 7-8 minutes), some more important info here)
    using this approach with enough space in the root partition, and a separate data partition, ensures subsequent upgrades will not delete the partitions (as mentioned, they should be the same between upgrades), and that the data partition can be used for whatever.
  2. same, but running openwrt from sdcard or usb storage, thus replacing the data partition with the entire ssd, but probably means you'd want the rootfs expansion script running after upgrade, to fill the sdcard.
  3. use squashfs, as it allows more packages without the need to resize the root partition, and a data partition (as mentioned), no need for imagebuilder.
  4. same, but running openwrt from sdcard or usb storage

.

some users have more powerful x86, and can run openwrt virtualized:

  1. as VM (under Proxmox or other host)
  2. as a docker container, but is not recommended

I feel this should be discouraged for most users, as it can present issues and build dangerous dependencies.
dedicated hardware is considered a more robust solution.

.

there are also these options:

  1. if your data is very dynamic (and you don't need to be persistent between upgrades), you can use the regular x86 ext4 partitions, and run the rootfs expansion script
  2. upgrades with fallback option - also documented in other forum posts (e.g. Sysupgrade help for x86_64 - #20 by grrr2)
  3. if your x86 box allows, use different drives (ssd) for the openwrt system and the data storage.
    in my opinion it's not a very good option - the openwrt system, with installed packages, probably won't take more than 1-2 GB in most cases. so this have to mean either drive will be very under utilized.

.

it does seem that there's no easy way out, and it'll definitely be a bigger issue as time goes by, and x86 boxes become a more populare choice for openwrt boxes

1 Like