I decided to finally check out OpenSolaris 2008.11. While this release came out back in November of 2008 (hence the 2008.11 naming convention), it has taken me this long to finally give it a chance. Maybe it is because I am still somewhat skeptical with the whole OpenSolaris Project and still do not know what to make of it…yet. And because I am virtualizing it through Sun’s VirtualBox, I am not going to get into massive details about hardware compatibility. Although I have read reviews that there is still a lot of catching up that needs to be done for this project. I must also admit that even through Sun’s very own VirtualBox, the performance with OpenSolaris was horrible. With any other OS I installed, everything ran smooth. OpenSolaris was the only one to run this bad and slow. Initially I thought it may have had something to do with running from the Live CD but even after installation, the performance was just as bad.
From the very begin I had confused feelings about the operating system. Booting from the CD image you are loaded into a Live CD environment. There is no option to go directly to the installation. When the Live CD loads into memory, you have to click on the desktop icon to download the operating system. I can understand giving the user a chance to play around with the operating system prior to installing it locally but what if I do not want to mess with this? What if I just want to go directly to the installation? This requires a couple extra steps and if I am deploying this OS across multiple nodes, it may get a bit annoying.
I can understand the project’s attempt to introduce a bit of simplicity but this too gave me a mixed opinion of the approach taken. For example, just before the Live CD loads, you are set in an almost command like shell where you are asked a couple of questions. For those of us familiar with a Solaris installation, this is nothing out of the ordinary. In traditional Solaris installations, you worked in a terminal window set inside a pseudo CDE shell of a desktop environment. Now after the Live CD loads and I move towards installing the operating system locally, I select the disk device to install OS to, maybe modify my partitions if necessary and input the root and a user name/password. That is it! There is no opportunity for me to select the packages I want to install, for the possibility of working with a light weight and customized installation and not have so much clutter to worry about wasting space on my local disk drive.
These are just minor details that can be resolved after installation. Sure it can take up a little extra of your time to install Sun’s Open Office, which is not installed by default. Or even Sun’s packaged version of GCC if you wish to do C development for the platform. I must admit that their package manager is somewhat simple to navigate and use. Just like Synaptic on top of aptitude or anything else on top of yum, all dependencies are resolved when selecting a package and it seems to look and act just as clean.
Working with OpenSolaris
On the surface this operating system looks and feels like any other UNIX/Linux operating system running with a GNOME desktop environment. So to the average user, very little difference may be seen. That is why I am not about to waste time on installing and using some of the same applications that can be found on just about any other UNIX/Linux operating system.
Outside of the obvious kernel, the most interesting difference was using the ZFS file system. And with that, I enjoyed playing with ZFS’s snapshot capabilities alongside the Time Slider feature implemented into GNOME. By default ZFS is installed as your primary volume manager and file system. Unless you specifically specify partitions during installation, all zpools will be allocated appropriately for your default installation.
I have worked with ZFS before so it was not all that new to me. As mentioned above, what was new to me was the Time Slider feature built into the GNOME desktop environment and working from the built-in ZFS snapshot features. You can schedule incremental snapshots for specific paths where you can always (in real time) revert back to an older snapshot. So if I modified a set of files or deleted them, I can always revert back to a previous snapshot of that enabled directory. You can configure Time Slider from the System->Administration menu located at the top of the screen. When you open up a Time Slider enabled directory, you simply click on the Time Slider icon and you can view the number of snapshots taken. From this you can go back in time. Below is an image of the directory in the present:
Here is a past snapshot of the same directory path:
I thought this was an extremely cool feature to implement. I just hope we may see something similar in a future and stable release of Btrfs for GNU/Linux.
One last thing worth mentioning is the fact that I enjoyed how you can view and manage your devices and device drivers from a GUI interface as opposed to the command line. This is sort of like your Microsoft Windows Device Manager. This is also where I feel GNU/Linux falls short from. I know that a few distributions such as Canonical’s Ubuntu have their own implementation of it and the last time I played around with it was on my wife’s computer running Ubuntu 8.04. I still felt that is was a very weak implementation and with regards to device management I was still more efficient on the command line. I personally use Fedora/Red Hat and would like to see something at least somewhat similar for it. In OpenSolaris, you can access the device driver management window from the Applications->System Tools menu at the top.
Not only does it list your devices but it also lists its associated driver (if it exists and is supported). If no, you can always Submit your hardware profile to the project which will hopefully bring support to that device in a near to future release. In Linux, I cannot tell you how many times I have been stuck trying to figure out which kernel module(s) a specific device is utilizing. This management utility just makes it all the more simple.
My overall impression and opinion of the OpenSolaris 2008.11 release operating system was that it still needed a lot more time to be where it needs to be if it wishes to stand alongside the other open source giants such as Linux and BSD. These open source operating systems had time to mature and while a lot of the work has been taken care of to help speed up OpenSolaris development (i.e. GNU environment and applications, Mozilla applications, etc.), the project still needs more time to add more software (and according to the review, hardware) support while still polishing up the installation process.
It is worth noting that during the installation process, you are provided with a few Sun advertisements focusing on features such as ZFS to even DTrace. While I understand the advantages to using such tools, I personally feel that Sun tends to focus too much on these features rather than focusing on something new. For example, Linux has caught up with DTrace by developing System Tap. The Linux community is still currently working on Btrfs to compete with ZFS. Maybe it is time for Sun to start focusing on their next generation feature to help it stay on the cutting edge of computing.