FirstRib frugal-pseudo-full install howto

Flexible Pseudo Full Install of FirstRib-based distros

easier upgrades with pseudo full

So today I paid for some cloud resources.

I plan to set up a cloud-based virtual machine for all FirstRib hosting activities though I am in no hurry to do so.

But this post concerns a special frugal install that FirstRib initrd allows, that I refer to as a pseudo-full-install because the whole rootfilesystem is stored in uncompressed form in a single directory and all upgrades or updates write to that directory (so no additional layering needs to be involved, though optionally can be). This mechanism saves a huge amount of disk storage space over time despite the fact that the base root filesystem is not being stored in compressed squashfs (sfs) format.

In the typical non-pseudo-full-install, updates go into an upper_changes savefolder that is separate from the original root filesystem (e.g. might have 07XXXrootfs.sfs and an upper_changes directory for persistence); in that usage, new version updates are written into that separate upper_changes whilst the previous old application installs remain wasting space in the 07XXXrootfs.sfs. The only reasonable way to get the space back would be to undertake a remaster (or use the FirstRib rootfilesystem build script to make a complete new build direct from newest updated repos).

With pseudo-full-install, on the other hand, the original root-filesystem is purposively uncompressed and simply renamed to upper_changes and a dummy (zero byte content) directory is created to stand in for what was the original FirstRib root filesystem (such as that 07XXXrootfs.sfs).

For example, assuming you have just downloaded and frugal installed KLV-Airedale. You will see that the main root filesystem is named something like: 07KLV-airedale_rootfs.sfs To turn that installation into a pseudo-full-install, simply undertake the following three steps:

unsquashfs 07KLV-airedale_rootfs.sfs

which uncompresses that sfs file into directory squashfs-root/

Since this was a new install, no upper_changes folder should yet exist in the bootfrom install directory. If it does remove it prior to the next step:

mv squashfs-root upper_changes

Finally, create an empty dummy directory:

mkdir 07dummy

That's all there is to it!

After booting this KLV install, any updates, upgrades or additions will immediately go into that uncompressed upper_changes directory.

You can also insert or modify content in that upper_changes directory manually, which is much more flexible from dev point of view than having to edit squashfs files; no remastering the original sfs file is necessary when using this pseudo full install mechanism! Normal FirstRib installs can be remastered, however, if you so want.

My audience here, by the way - well, I don't know… but this blog was written and produced for my children.


Tiny Linux Blog: https://www.tinylinux.info/

Avatar
wiak
sometimes Linux system/apps developer

My earlier research interests included TCP/IP performance/optimisation over noise-prone, long-delay, VSAT links; and cloud-based, autobuild, virtual machines network construction methodologies for distance learning data-comms students’ research and laboratory work.