Alexey Eremenko Home Page (www.violtan.com/ae/)

Year 2006: UnionFS and the Revolution of the GNU/Linux distro architecture

In this document I'm going to describe my vison of the future of GNU/Linux distribution development. The OS components by themselves are good already, now it's GNU/Linux distributors turn to make a good mix out of those components.

prehistory: on early 2005, Knoppix 3.8 Linux was released featuring a new technology called UnionFS. At first I haven't understood what this will mean, only after reading

Knoppix 3.8 and UnionFS. Wow. Just Wow.

and several other articles about UnionFS I understood what can be done with this single technological advancement.

Knoppix is a Live-CD – meaning you can start your OS entirely from CD.

However all versions of Knoppix before 3.8 were read-only. Starting from 3.8 onward they suddenly became read-write, at least logically, you could save your work, install additional software on the fly, reconfigure your OS, and do many other things only possible previously on a hard-drive based Linux distro. All that reconfiguration is possible until you restart your system.

Possible Future:

I can foresee the possible future, and I think “installable-only” GNU/Linux distros which are majority (Debian, RedHat/Fedora, SuSe, Mandrake/Mandriva) will just cease to exist. At least as we know them today. “cease to exist” here means, no they won't die, but will seriously evolve.

I believe the one last stage that must be done in order for the future to come true is the development of “physical” ability to change a live-cd distro. In fact it can be done using multi-session CD burning technology. Puppy Linux team already a prototype of that, throught not in a user-friendly way, and not very stable way, but it works.

I call physically modifiable live-cd 3G – as in 3rd generation. And logically modifiable 2G - 2nd generation live-cds – so Knoppix 3.8 is 2nd generation GNU/Linux distro.

So, to sum that up: the next generation distro must be logically modifiable via UnionFS, and physically modifiable via multi-session CDs.

Now about Hard Disk Installers:

Hard Disk installers won't boot by default anymore. They will boot from a live-cd.

They will offer me to install either the original version of GNU/Linux, from session 1,

or the modified version of GNU/Linux from session N.

What you can do with those future operating systems ?

Well, since you came this far, and now you understand the concepts, let me tell you what this 3G system is capable of:

Only imagine: you are non geek, just a normal mostly GUI user, who knows a bit about Linux and capable to install a GUI driven GNU/Linux such as Mandriva. want to

install a desktop GNU/Linux to your friend that will lookexactly like your current Hard-Disk installed Desktop. What you do ?

It's simple: master your own live-cd from the existing installed Linux system using automated tools, such as mklivecd. No need for much technical knowledge. Bring that mastered live CD to your friend, and boom! He has the desktop that is absolutely like your's ! Has the same configurations, software installed, even birthday photos !

Another great scenario: This truly-modifiable live-cd/dvd/blu-ray/whatever can be your OS-and-a-platform for day to day work. In some cases, It's actually replaces laptops. You go wherever you want and do whatever you do, while your OS, desktop configurations, installed applications and your documents are always with you.

Just put this live-cd into any compatible desktop PC (which must have CD-RW and enough RAM), and this desktop temporarily becomes a laptop. That way – your computer is this live-cd to you bring always with you, while physical computers will mean nothing more than a temporary system for getting your job done !

Required tools to make my vision happen:

  1. First and foremost – UnionFS technology – without this – it's impossible.

  2. Multi-session LiveCD technology

  3. Mklivecd – gives ability to master live-cds out of existing Hard Disk-based installs.

  4. GUI for mklivecd – it is necessary for GNU/Linux newbies

  5. GUI Hard Disk install wizard, that is capable of running right off the live-cd.

About today's technical caveats: (as of 02.july.2005)

  1. UnionFS, even the latest version 1.0.12a is only-more-or-less stable, meaning it might have problems. Problems are most common with NFS servers, non-standard file attribute extensions, and non x86 architectures.

  2. Multi-session LiveCD technology – it's complex to integrate. In order to burn second session you need to unmount your CD. But if you unmount you can't burn anything, because your's burning software is on the CD. That's a chicken-and-an-egg game. One way to solve that circular dependency – there must be micro-distribution of GNU/Linux with the necesarry burning-tools and the kernel that will be loaded fully into RAM right before you want to write your session into a CD. Usually it is right at the end of init 0 -or- init 6 runlevels. As reference, you could look at Puppy Linux, but since their distro is only 60 MB and is totally loaded into RAM, they have no such problem.
  1. Mklivecd - currently has several bugs, lacking GUI, so you need to use command-line, and in order to get a UnionFS-capable version of mklivecd you need a CVS build which complexes situation even further.

  2. Making a KDE gui for mklivecd will be great step forward, especially for newbie users. I'm not a programmer, so I can't do that. I can only ask Open-Source programmers, and help them with BETA-testing, after the work is mostly done.


  3. Hard Disk Installers - No good installers exists that runs from the live-cd. RedHat's Anaconda and Mandriva Setup wizards and others must be modified to be able to run in windowed mode from LiveCD. PCLinuxOS distro have that kind of installer, but their implementation is weak/nonprofessional compared to Mandriva.

-Alexey Eremenko. 02.July.2005.