Bienvenido! - Willkommen! - Welcome!

Bitácora Técnica de Tux&Cía., Santa Cruz de la Sierra, BO
Bitácora Central: Tux&Cía.
Bitácora de Información Avanzada: Tux&Cía.-Información
May the source be with you!

Wednesday, September 15, 2010

Tiny Core

Tiny Core consists of a small kernel and initial RAM disk, which boots into a basic FLTK graphical environment. The computer’s hardware is configured on boot and should mostly work out of the box. Some options however, such as a choice of either an ALSA or OSS sound server, are left up to the user (true to the philosophy of the distro). Once inside the environment, the user is then able to connect to the online repositories in order to install the applications they desire and configure their system. The package manager is very simple, it connects to a database and provides a list of available packages to install. The user need only select a package and the manager will download it with all required dependencies and install them to the system.
Although a very minimal environment, the system does include a basic control center which allows the user to graphically perform functions like configuring the network, setting the background as well as the date and time. It also provides the option to start the included SSH, TFTP and Cron daemons, includes a device mounting tool, and lets the user backup and restore the system. All in all, it’s a neat little environment which provides a solid working base which the user can then expand to their liking.
When installing is not really installing
Tiny Core doesn’t actually install anything onto the system in a traditional way. The system is live, so that wouldn’t make much sense! Instead it stores the binary packages in memory which are then laid over the top of the existing system. These packages are actually called extensions and when the system boots each and every time it will load these extensions from a location you specify. This is how it helps to prevent system rot. Every time it boots, each package is “installed” for the very first time. There’s no chance of corrupt or deleted files as they are fresh each time as included in the package.
Simply booting the system in its default configuration will run in RAM and store any installed packages there. There are a number of boot time options available, including specifying a partition that the system can use to store any extensions which are installed. On boot up, it can look there to load any existing extensions into the system. This is an easy way to manage what packages are needed on the system. In fact, there is no concept of uninstalling an application as such either, because it’s not actually written to the system permanently. A reboot will wipe all installed programs and provide a clean slate, so removing them from here means that it’s no longer installed!
Tiny Core provides two different types of extensions - TCE and TCZ. The former is a compressed tarball which is extracted into RAM over the booted system environment. The disadvantage of this method is that it uses up more RAM the more programs you have installed. The latter is more efficient as it actually loop mounts the packages onto the system, rather than extracting them into RAM. This means that they are only loaded into memory when you actually use them, similar to that of a more traditional install where they sit on a hard drive. If you’re going to have many applications installed, this is the better option.
Persistent data
So if you’re constantly loading each of these packages on boot, how do you make any changes? And what about your data? Seeing as Robert introduced these features into DSL, it would stand to reason that he would include them in Tiny Core also! Yes, his system has the ability to save your data and restore it on boot. You can also change system files and on boot these will also be restored, just after the extensions are loaded. So if you do want to customise a package, you can do so and have it stay that way each time you boot. The system also takes mount point arguments at boot time, so users can specify a partition to use as their /home directory, for instance. Pretty neat. It’s a whole new way of running Linux on the desktop.
Looking ahead
The project has been expanding at a rapid pace with new features and improvements constantly being introduced. Robert told Linux Magazine where the project is heading in the near future, saying:
“I am currently working on a major improvement for 2.3, an extension audit tool. Some may call this a “package manager”, however I still don’t see it that way. It will be able to do reporting on extensions and their dependencies, will check for missing dependencies and provides for clean removal of an extension and any unencumbered dependencies. I feel that this will be a value tool for Tiny Core. The team and I are in the early planning stages for v3.0 with some major overhauls being discussed.”
It looks like development won’t be stagnating any time soon and if the popularity of other small distros such as DSL are anything to go by, Tiny Core has a bright future indeed. Although website founder Ladislav Bodnar often warns not to take these statistics too seriously, Tiny Core is currently sitting at number seventeen of the sites page hit rankings, and rising.
Expanding your mind
In conversations with Linux Magazine, Robert explained why Tiny Core may appeal to certain Linux users. He said:
“If you believe, like I do, that most Linux distributions are getting too big and trying to look and feel too much like Windows, and long for the days of “Small is Beautiful” then you may like Tiny Core.
If you wish to control exactly which processes and applications are running, if you like to be challenged to run on the smallest resources, then you may like Tiny Core/Micro Core.
If you like an open development environment where our user community builds extensions, share ideas and uses for Tiny Core/Micro Core then you may like our project.
And finally, if knowing that the state of your machine is pristine upon each boot then you should consider our project.”
Tiny Core really is very tiny and it’s well worth taking the small amount of time required to look into it. The project has just released version 2.2 and the main ISO is only 11MB. If that’s too large for your liking, then Micro Core might be more your style at only 7MB. Simply download the ISO image, burn it to disk and boot.
Although Tiny Core is a relatively new distro, it has a great deal of history behind it already. It is developing at a rapid pace and implementing new features along the way. It really can change the way you think about running Linux over a more traditional method. It’s an exciting project and really worth playing with. It’s lots of fun and it does deliver on its promises. Try it out and see how fast, stable, clean and fun a Linux system can be!
Christopher Smart has been using Linux since 1999. In 2005 he created Kororaa Linux, which delivered the world's first Live CD showcasing 3D desktop effects. He also founded the MakeTheMove website, which introduces users to free software and encourages them to switch. In his spare time he enjoys writing articles on free software.

No comments: