X86 rootfs has grown again?

A month or so ago I sysupgraded my x86-64 VM and found that it broke my data partition. The rootfs partition had grown to 256MB, and overwritten the start of my data partition.

Now I find that the rootfs partition has grown again, to 2GB. If I sysupgrade, I'll lose my data partition again.

I realise this change is supposed to make it possible to use resize2fs on the root partition. But the x86 sysupgrade scripts take care of restoring the partition table, which is supposed to mean that we can create extra partitions after the root partition, right?

Before the 2GB change, we could still use the whole disk by creating an extra partition, and that partition would survive sysupgrade. Isn't that a better option than extending the root partition to fill the disk, and losing all the data in it with the next sysupgrade?

I don't think a change like this that actively discourages upgrades on devices that are connected directly to the internet is wise.

The idea was to increase the limit one final time to have a suitable base for all kinds of use-cases.
Now that x86 also has support for loop block devices by default I wonder if we should keep the image based upgrade at all or whether we should simply reformat the existing root partition to copy the new files into it...

1 Like

That would mean I can keep my root partition as small as I want?

My main issue with the current size is that the root partition is not persistent, so I only keep 16 megabytes of stuff on it, but now I have to set aside 2 gigabytes of disk space for it.

If the upgrade would be file based then yes, then the rootfs size wouldn't matter (as long as its big enough to hold the file contents of course).

This would be amazing! I would then love to see this new upgrade system later extended to be able to use A/B partitions for the root device.