Opensolaris – my first encounter
I got a liveCD with Opensolaris from my brother today. I know he has been toying with it for some time now, but all I know about Opensolaris is that it’s based on Solaris by Sun, it is UNIX-like, supposedly very stable and famous for its file system. My brother had asked me if I wanted to try it out several times, but unlike him, who earns his bread maintaining OS, I never really got to it with that little time I have.
I’m currently using linux, Ubuntu 9.10 on my laptop and Debian 5.0 stable for my home server. Ubuntu was recommended to me by friends who introduced me to linux a couple of years ago and I’ve stuck to it ever since then, and when I was deciding what OS to use for the home server, Debian was an easy choice. I am fully aware that Ubuntu is the most condemned linux distribution out there and it makes sense – the more GUI there is, the more likely it is that something goes wrong. Sometimes I was wondering whether I should try some other distros like Gentoo or Fedora, partly driven by the need to step out of the ubuntu-user group and join the more hard-core group of “real” linux-users 🙂 But the OS is just a background for my work and I eventually decided to stick to the common sense – Ubuntu/Debian has its flaws (all OSs do) but offer all I need for my work so why should I spend my time becoming an advanced linux user (let alone UNIX user) when I can use that time to play around with Perl, for instance, which is much more interesting and potentially useful to me. On the other hand, it never hurts to see something new so I gave it a try.
So i put the Opensolaris 2009.06 CD into the tray and and fed it to VirtualBox OSE (which happens to be by Sun Microsystems, too). The installation was smooth, just a few questions about the preferred language, keyboard layout and passwords and that was all. No swap size negotiation, I just used the entire disc. Opensolaris is said to have slightly worse hardware support, but I can’t comment on this much, I just noticed that sound wasn’t working and I didn’t venture further into one of those tricky fields like wi-fi. Anyway, there is a place where you can find a compatibility list and I believe it is getting loger rapidly with each new release.
The first thing to welcome me after the installation was the old hand Gnome 2.24, as well as other well-know acquaintances – Evolution, Firefox, Pidgin. Frankly, so far there’s been little difference even from Ubuntu. To see that, you have to delve deeper under the hood.
Opensolaris offers the so called zones. These are virtual operating systems that run separately from each other. Well, not real operating systems, to be precise. Unlike it is the case with other types of virtualisation, the zones do not load their own kernel so they are more like derivations of the host system. The choice of what you run in a zone is therefore limited to Opensolaris (I hear running linux is being tested but didn’t pursue this information further) and each zone employs the kernel of the host system. What is this good for? The answer is simple – lower hardware requirements, of course. You run only one kernel and have multiple completely isolated systems. This can be very useful for a hosting company that offers webhosting services to their clients. More clients at the same time share one physical machine, they have a root access to their own virtual machine, yet they are completely and securely separated from other virtual machines in case of a software failure.
You can run VirtualBox or other virtualisation software in Opensolaris, of course, but the zone system, which is much lighter, deserved attention.
ZFS File System
The second, also very intriguing feature is the file system Opensolaris uses – Zettabyte File System. Zetta is the second highest metric prefix used with numbers, just like giga in gigabyte, and stands for 10^21. The highest prefix currently in use is yotta, but supposedly it didn’t sound as cool as zetta to the authors of the file system.
The advantages of the ZFS include the ability to check the disk for data corruption on the fly (scrubbing ), the maximum capacity up to 16 EB (exabytes), as well as increased maximum amount of files in one directory or faster write speed. Unlike traditional file systems, ZFS can group more hard drives to a pool, which is a great help when running a server. ZFS is also very good with snapshots and clones. Snapshot is an image of the current state of a system, it can be stored or used later. Clone is a writable snapshot, which means that you run two separate systems that use the same space for everything they have in common.
There’s a lot more that can be said about Opensolaris, packaging system, etc. But that is beyond the scope of this simple post. If you want, you can find more here or just somewhere else . As for me, I don’t think I’m going to switch to Opensolaris. All the cool features are interesting for server machines and that’s not a thing I could use at the moment. Linux offers a much wider range of software and most things are working out of the box (or just working somehow eventually, at least). However, I think I will keep Opensolaris in the virtual box, it may be interesting to see what happens to it in the next two or three cycles. The great future for this system may be still ahead.