News and Editorials
May 27, 2009
This article was contributed by Koen Vervloesem
Nexenta Core Platform is an
operating system that ties the OpenSolaris kernel to a Ubuntu user
space. The project emerged just a couple of months after Sun Microsystems
released the OpenSolaris code in June 2005, and it was first called
Gnusolaris, a direct port of Desktop Ubuntu to the OpenSolaris kernel. The
developers soon realized that supporting a desktop distribution was too
difficult due to the large number of support requests and the huge list of
packages to maintain. So the Nexenta developers refocused their effort
onto a "core" distribution, leaving the desktop integration to others.
In February 2008, these developers released Nexenta Core Platform 1.0, a server system based on OpenSolaris build 85 and Ubuntu Dapper Drake (6.06 LTS). Now, the next version is available: Nexenta Core Platform 2.0, based on OpenSolaris build 104 and Ubuntu Hardy Heron (8.04 LTS). Over 13,000 packages are in the repository, which is a lot more than in OpenSolaris and around half of Ubuntu's packages. Nexenta Core is also the base of NexentaStor, a NAS storage solution developed by Nexenta Systems.
Installing Nexenta
Nexenta's installer is rather basic. The disk is partitioned automatically. If the user selects two or more equal-sized disks, the installer configures them as mirrored ZFS disks. The automatic partitioning uses the whole disk for a root and a swap partition. At the moment, it's not possible to choose another partitioning layout, e.g. for a dual boot configuration, but some users have reportedly been able to do it by hacking the installer script. As a more flexible partitioning support is requested frequently by users, Nexenta community leader Anil Gulecha promises this will be one of the enhancements in the next release.
After the system is installed and the user has logged in, it looks like
a normal Ubuntu Server system, using around 800 MB disk space. After an
"apt-get update", the "apt-cache show" command shows
over 13,000 available packages to install. Although Nexenta positions
itself as a file server and NAS platform, much of these packages are
graphical programs. X.Org can be installed, as well as Firefox, Xfce 4 and
most of Gnome. All packages are the versions in Ubuntu 8.04. The Nexenta
project has set up its own repository on apt.nexenta.org and there are some
mirrors
available.
OpenSolaris goodies
The fact that Nexenta is using the OpenSolaris kernel means that
hardware support depends on the drivers available in OpenSolaris. This is a
domain where Linux distributions clearly have a big advantage over
Nexenta. The best way to find out whether specific hardware components are
supported by Nexenta is by searching the Solaris Hardware
Compatibility List, however there are a few drivers in Nexenta that are
not part of OpenSolaris. Nexenta's stable device driver interface does arguably
provide an advantage over Linux in that Nexenta users can still run
ten-year-old Solaris drivers.
Nexenta inherits other interesting features of Solaris, such as the
operating system-level virtualization zones, a feature
resembling Linux-VServer
but with the advantage that it's not a separate patch set but supported in
the official kernel. Applications within a zone appear to be running on a
standalone system. Processes in different zones are completely isolated
from each other. But although each zone appears as a standalone operating
system, in reality a single instance of the OpenSolaris kernel is running,
which means that zones are lightweight. Nexenta has full support for
zones.
Transactional upgrades
Another powerful feature that Nexenta inherits from the OpenSolaris
kernel is the ZFS
file system; the Nexenta developers have built some innovative tools around
it. With the apt-clone tool, the user can upgrade or install
packages with the capability of an easy rollback if the install goes
wrong. For example, with a simple "apt-clone dist-upgrade" command,
the system will be upgraded, but not before a checkpoint is made. If the
upgrade returns an error, the user has the option to rollback the changes
to the checkpoint. So, in a few seconds, the system is returned exactly to
its previous state, without a reboot. These upgrades are called transactional ZFS
upgrades.
Even if an upgrade is successful, the user can decide at any time to
revert to the previous state. After a successful upgrade, a new checkpoint
is made. The user then has the option to reboot and activate the checkpoint
in GRUB or first activate the newly created checkpoint and then reboot. If
the user decides later that he doesn't like or need the upgrade, he reboots
and selects the previous checkpoint in GRUB, after which he can revert to
the previous state. The new checkpoint is then deleted.
This checkpoint system is not only usable for upgrades, but also for
installing applications. Think about an application with rather intrusive
effects on the system, such as the Apache web server. A simple
command creates a checkpoint and
installs Apache 2. If the user later decides that he doesn't want Apache or
if he has made a mess of the configuration, he can activate the previous
checkpoint and then reboot to revert the system to the state before
Apache's install.
GNU and not GNU
The default behavior of Nexenta is to prefer GNU utilities, which are
installed in /usr/bin and /usr/sbin and so on. The Sun
versions of these utilities are installed in /usr/sun/bin and
/usr/sun/sbin. Nexenta uses a trick to be able to switch between a
GNU and a SUN
personality: if the environment variable SUN_PERSONALITY is
set to one, the search paths /usr/sun/bin and
/usr/sun/sbin take preference, even if the user executes the
commands explicitly by their absolute path,
e.g. /usr/bin/sed. This ensures that Solaris-based scripts work in
Nexenta without modifications. Nexenta also uses this functionality in its
SVR4
package commands. They can be used to install native Solaris packages in
SVR4 format, calling alien to convert the
package on-the-fly to a Debian package.
Although most utilities are GNU ones, a couple of basic commands like ps and top are the OpenSolaris versions, which is confusing but understandable as they are tied closely to the OpenSolaris kernel. This confusing mix between GNU and Sun comes back in other domains. For example, the user space is almost completely built using GCC. In contrast, the OpenSolaris side, which consists of a couple of hundred packages, is built using Sun Studio. Gulecha explains this decision:
Sun Studio is what the developers of OpenSolaris use and test. GCC
is supported, but untested, and fails occasionally. We want Nexenta to be very stable, and thus the decision to use Sun Studio. Also a small part of OpenSolaris is distributed under a binary license, which Sun cannot provide the source for as they don't own the copyright.
A difference in approach between Debian GNU/kFreeBSD and Nexenta
is that the former is using a port of GNU libc, while the latter is using
Sun libc. However, there's also a Debian
GNU/kOpenSolaris port in the pipeline, which uses a port of GNU libc to
the OpenSolaris kernel. The Nexenta developers seem
to welcome this development and are even thinking about two
architectures: NexentaCore Sun/OpenSolaris and NexentaCore
GNU/kOpenSolaris. The Nexenta project actually started
as an attempt to port glibc to OpenSolaris, but when the developers realized the complexity of the task, they decided to use Sun libc.
Porting packages to Nexenta
The Nexenta developers would like to make Nexenta the official port of
Debian to the OpenSolaris kernel, like Debian GNU/kFreeBSD is the official
port of Debian to FreeBSD's kernel. This would surely reduce the number of
patches needed for Debian packages to cleanly build on Nexenta, because
currently many patches don't make it upstream. To help make collaboration with
Debian happen, the Nexenta developers have provided public root
access to Nexenta zones for Debian developers who want to test their
packages on the gnusolaris.org build machine. Any Debian package maintainer
can request login details.
The progress on becoming the official Debian or Ubuntu port to the
OpenSolaris kernel has been slow, however, as Gulecha admits:
With
the developer resources we have, which is five active developers (two
working for Nexenta Systems) we haven't been able to work towards
this. Moreover, OpenSolaris is not 100% open source, which causes concern
for upstream.
The decision to base Nexenta on Ubuntu LTS instead of
Debian was rather practical: "Upstream itself would be supporting
packages for 3 years, which would make updates easier for us."
One of the big projects developed for NCP2 was the Autobuilder project by Tim Spriggs, one of the lead developers of Nexenta Core Platform. This is a package building toolkit, hosted at builder.tajinc.org. The autobuilder keeps track of packages in various repositories, including upstream Ubuntu. Build nodes can talk to the autobuilder and request jobs. This is how the developers ported over 13,000 packages automatically in a short time, making Nexenta the OpenSolaris distribution with the largest number of packages. The developers are planning an RSS feed with patches for each package on builder.tajinc.org, for upstream maintainers to be able to keep track of their package's patch feed.
The Nexenta developers guide new developers through the process of building
packages. The process is simple: add the right deb-src lines from
Nexenta and Ubuntu to the /etc/apt/sources.list, create GPG keys
and install some development packages. Then get the sources of the
not-yet-ported package and build the dependencies with "apt-get build-dep"
and "apt-get source". Then modify the package version
string to reflect that it is a Nexenta version and build the source with
"dpkg-buildpackage". If all goes well, the package can be installed
with "dpkg -i" and be tested. If it works, the porter can upload the
generated deb files with "dput". If the Nexenta developers accept
the package, it's added to the repository.
Of course a lot of Ubuntu packages will not build on Nexenta out-of-the-box. To help developers with porting Linux code to Nexenta, the project's website has a page that lists common porting issues and their solution. This varies from changing dependencies in the Dependency field of a Debian package or adding the right includes in C source to using special compiler flags.
Nexenta distributions
Not only is Nexenta very porter-friendly, the developers also encourage users to build custom distributions on Nexenta Core. The Nexenta Builder tool is a developer's kit that simplifies the process of creating a new distribution ISO, and it's the same tool as the Nexenta Core team is using to produce Nexenta Core images.
Recently, Andrew Stormont announced his project StormOS, an Xfce-based derivative of
Nexenta Core Platform 2. This is a desktop operating system for people who
like the ZFS/apt combo, but don't want to install the desktop packages
themselves. Currently StormOS is a one-man project by Stormont, who is one
of the Wine-Doors developers. The
StormOS story started when Stormont was asked to create OpenSolaris
packages for Wine-Doors, but he didn't like the package system IPS. So he decided to
"fix" OpenSolaris and tried Nexenta, which he wanted to turn into a desktop
operating system, hereby reviving the Nexenta project's original goal.
Conclusion
Nexenta Core Platform 2 is a solid operating system that will surely
appeal to Linux users who like ZFS but don't want to learn OpenSolaris. The
combination also comes with some clear advantages: Debian's APT is better
and faster than IPS, and the apt-clone command gives users powerful
transactional upgrades. This makes it a perfect system for a home
server. Moreover, the community gives a lot of support to people trying to
port packages to Nexenta. It will be interesting to see if and how the
Nexenta community will work closer with their upstream distribution and
with the GNU/kOpenSolaris project.
Comments (1 posted)
New Releases
Nexenta, the combination of an OpenSolaris kernel with an Ubuntu user land has
announced the release of Core Platform 2. One of the more interesting Nexenta features is the use of the ZFS filesystem, which allows for snapshots and other advanced filesystem features. Look for a review of Nexenta Core Platform 2 by guest author Koen Vervloesem on this week's distribution page.
Comments (34 posted)
The Linux Mint team has
announced the release of
Mint 7 "Gloria". "
The 7th release of Linux Mint comes with numerous bug fixes and a lot of improvements. In particular the menu system, the application manager and the upload manager now provide new features such as "Suggestions", "Featured applications", "SCP and SFTP support". The underlying base of the operating system was also strengthened with a new adjustment mechanism which makes Linux Mint more robust and less vulnerable to Ubuntu package upgrades, and the introduction of virtual and meta packages which simplify upgrade paths and the installation of multiple desktop environments."
Comments (none posted)
For those of you wanting that bleeding-edge CentOS experience on a live CD,
the project has now made the 5.3 release available as an ISO image for i386
systems. The CD includes a number of tools intended to make it useful in
the rescue mode. Your editor notes with disappointment, though, that emacs
was removed due to space constraints.
Full Story (comments: 16)
Distribution News
Debian GNU/Linux
Debian's EeePC team have reported good support for Lenny (5.0) and are now
working on squeeze support. "
Work is well underway on supporting all Eee models in Squeeze. For months, several team members have been experimenting with new kernels, producing support for them in eeepc-acpi-scripts. The current release of this key package (version 1.1.0) supports Linux 2.6.29 and contains enhancements for wifi, sound hotkeys, bluetooth, external displays and OSD."
Full Story (comments: none)
Fedora
As noted in the attached summary of a meeting of the Fedora Engineering
Steering Committee: the
recently
announced policy banning flag images from most packages has been
rescinded. The Fedora project will now examine the issue in more detail
with an eye toward crafting a new policy - if, indeed, one is deemed to be
needed.
Full Story (comments: 4)
Nominations are open for the five open seats on the Fedora Engineering
Steering Committee. "
Any interested Fedora packager may run for
FESCo, the only requirement is membership in the 'packager' group in FAS.
Especially noteworthy is that 'provenpackager' or sponsor status is not
required - this keeps the bar low for new members."
Full Story (comments: none)
Click below for a brief recap of the May 21, 2009 meeting of the Fedora
Advisory Board. Topics include export restrictions, toxicity proposal,
sponsorship, and "What is Fedora?".
Full Story (comments: none)
SUSE Linux and openSUSE
The openSUSE project has announced the openSUSE Ambassadors Program. "
Want to help spread the word about the openSUSE Project and encourage more people to become part of the openSUSE Community? Are you ready to roll up your sleeves and spread the word about the openSUSE Project? Do you want to teach new users about Linux, speak about openSUSE at local events, help distribute openSUSE media, and mentor new contributors to the openSUSE Project? Then you're ready to become an openSUSE Ambassador!"
Full Story (comments: none)
Other distributions
The CentOS project has announced the first public release of the CentOS
Directory Server (CDS). "
The CentOS Directory Server is a rebuild of
the Red Hat Directory server. It is LDAP server developed in the Fedora
project and has a long history. It started as the Netscape Directory Server
but it got purchased by Red Hat and they released it as free software."
Full Story (comments: none)
The CentOS team has announced a new mailing list,
CentOS-mirror-announce.
"
This list is for announcement from the CentOS team to public mirror
admins, containing trivia like issues with our mirror network, new
releases, changes in how we do mirroring and so on."
Full Story (comments: none)
New Distributions
Ekaaty Linux is a Brazilian project
that aims to provide a free, robust, secure and friendly operating system
based on Linux and developed by the community. It features the KDE
desktop. The website and most documentation are available only in
Brazilian Portuguese, although English and European Portuguese also have
some support. (Found at
KDE-apps.org)
Comments (none posted)
NixOS is a Linux distribution based on Nix,
a purely functional package management system. NixOS is an experiment to
see if an operating system can be built in which software packages,
configuration files, boot scripts and the like are all managed in a purely
functional way. That is, they are all built by deterministic functions and
they never change after they have been built. NixOS is continuously built
from source in Hydra, the Nix-based continuous build system. (Thanks to
hppnq)
Comments (none posted)
Distribution Newsletters
The
DistroWatch
Weekly for May 25, 2009 is out. "
Three weeks ago Mandriva Linux 2009.1 was released. This distribution has a well-earned reputation for being both user-friendly and flexible and this week we take what turns out to be a somewhat surprising first look at the latest Mandriva release. In the news section, Slackware Linux finally opens a 64-bit branch of its development tree, Moblin 2.0 impresses the reviewers with a refreshing user interface design, Ubuntu reveals a change in video architecture for the upcoming version 9.10, Debian changes its archive signing key, and Fedora considers mailing list moderation in response to some unruly behaviour of its users. Also in this issue, a round-up of news from vendors preparing Linux-based solutions for mobile devices and an interesting new way of installing Arch Linux - via an unofficial live CD. Finally, if you have a package that you think DistroWatch should track, don't miss your chance to suggest it - this week only! All this and more in this week's issue, enjoy the read!"
Comments (none posted)
The Fedora Weekly News for May 24, 2009 is out. "
This week we offer
a special collector's edition with the last ever Fedora
Webcomic. PlanetFedora links Jeff Shelten's thoughts on "Why Students
Should Get Involved in Open Source", Ambassadors reports on "Fedora en
Mexico", Developments is getting "In a Flap Over Flags", QualityAssurance
takes a look at a "Mozilla/Beagle Blocker Bug Proposal", Artwork says
goodbye to itself but welcomes Design. SecurityWeek examines the problems
of "Cloudy Trust". Translations notes that "Sections of the Fedora User
Guide Cannot be Translated". SecurityAdvisories includes an ipsec-tools
update. Virtualization shares details on the "Rawhide Virtualization
Repository"."
Full Story (comments: none)
This issue of the
openSUSE Weekly
News covers Community Week, Pascal Bleser : vnstat on openSUSE, SUSE
Linux Enterprise in the Americas: KDE: Social Desktop Starts to Arrive,
Forums: Why Are We Not Helping More in the Wiki?, compiz-fusion.org: Beryl
back from the ashes, and more.
Comments (none posted)
The Ubuntu Weekly Newsletter for May 23, 2009 is out. "
In this issue we cover: UDS Karmic Koala begins, Team Reporting, New Ubuntu Members, Ubuntu Forums Interview, Tutorial of the Week, Canonical AllHands, KDE Brainstorm hits 1000+ ideas, Edubuntu Meeting Minutes, Renewed enthusiasm for Edubuntu, Ubuntu Romanian Remix, Ubuntu Podcast #29, WorkWithU Vodcast #2, and much, much more!!"
Full Story (comments: none)
Distribution meetings
Helpers are needed at the Debian booth at Linuxtag 2009 on June 24 - 27,
2009. Only two people have volunteered so far. "
I think that two
people are not enough to run a booth. If this call for help does not
succeed I'll have to cancel the booth. So if you are in Berlin during June
24th - 27th please be so kind and participate to the Debian booth. You
don't have to be a Linux/Debian expert, just a little bit motivated
:)."
Full Story (comments: none)
Participants in DebConf9 are asked to reconfirm their intent. "
We
are now starting the reconfirmation period for DebConf9. The reconfirmation
period ends on Sunday 7 June. If you don't reconfirm your attendance
before the deadline, you won't be counted for food, lodging, t-shirts,
proceedings, etc. Also, you won't be eligible for food or lodging
sponsorship."
Full Story (comments: none)
Distribution reviews
InformationWeek
test
drives netbook-ready Puppy Linux, Ubuntu Netbook Remix, Xubuntu, gOS,
and Moblin, and reports on how they stack up. "
Most Linux distros are suitable for netbook use. But fine-tuning your particular flavor of netbook by finding an even friendlier Linux distro isn't too difficult. Matching up your rig's configuration: screen size, devices, and drivers -- and your own style of work and play -- with the most conducive Linux distro, you'll get the max out of your mini-laptop."
Comments (none posted)
Page editor: Rebecca Sobol
Next page: Development>>