October 16, 2008

SoL 25.00 server distribution has its share of quirks

Author: Cory Buford

Although many Linux distributions can run on either a desktop or server platform, few provide by default a raft of applications aimed specifically at server usage. Server Optimized Linux is an exception -- a distribution aimed squarely at servers. That's an appealing prospect, but the reality is more underwhelming.

SoL 25.00 installs a variety of server applications, including Nagios, Xen, Apache, Exim, SpamAssassin, ClamAV, cdrkit, OpenIPMI, MySQL, PostgreSQL, Firebird, and SQLite; a complete list is available on the distribution's software page. SoL is also optimized for virtualization as a virtual machine guest or host, and you may even deploy it in a cluster.

While many distributions are based on others, SoL 25.00 is built from scratch by the OSnet department of the Austrian company Antitachyon. Version 25.00, released in August 2007, is the immediate successor to version 18.00, released in 2004. According to the developers, it will be some time before a new version is released. Its kernel version is 2.6.21, and it's available as a live DVD with an optional hard disk installer.

Before you try SoL you must ensure that you meet its hardware requirements. At a minimum, SoL 25.00 requires an i686 architecture (from Pentium Pro onward), 128MB of RAM, a DVD drive, and at least 10GB of disk space for a complete hard drive installation.

Installation

To install SoL 25.00, download the 1.4GB ISO image. You can choose to burn the image to a DVD or put it on a PXE image repository for network boot. I chose the former approach. When you boot, the boot options let you install SoL 25.00 on the hard drive or run it from the DVD in diskless mode. I chose the hard drive installation. The installation interface is simple and straightforward. You have to enter information such as the network interface IP address, the hostname, and the root password. Next, select your filesystem layout. You can select either a flat partition layout, which creates only a single partition in which everything is installed, or a split partition layout, which creates three partitions: the root, /etc, and /var. The advantage of using the split layout is that you can easily manipulate or update one partition without affecting the applications or files on the others. However, using the split layout requires an additional 10GB of hard drive space.

Next, choose the hard drive or partition to use for the installation. You can delete or create partitions for the installation and specify their sizes. The installation then proceeds to apply your settings and install the SoL packages.

SoL 25.00 installation is easy, and takes only about 10 minutes, but I encountered a few issues. For example, even though you can choose the language and keyboard layout, some keyboard keys don't work as expected. For example, I chose a US keyboard layout, but when I tried to type an @ character for my password by pressing the Shift-2, the apostrophe sign appeared. This problem is also present in a variety of other numeric keys and "-" and "/". Although it only happens on the root password field, and you can easily use a password that does not include the problematic keys, this can be a major problem when you're required to use a predefined password or set of passwords based on a formula.

Another concern is the lack of ability to customize the filesystem beyond the two predefined partition layouts. Lastly, SoL doesn't give you the ability to choose the application packages you want to install. Since it is good practice to limit the necessary installed applications to reduce the space requirement and, more importantly, vulnerabilities, I consider that a drawback.

Using SoL

Instead of going straight to the GUI on your first boot, you're taken to a text-based login and have to run some CLI commands. Most of the server applications and services in SoL, such as Apache and MySQL, are not yet configured or started. To configure the GUI, run ./Xsetup.sh, then run startx to bring it up. Refer to the SoL documentation for more details.

SoL 25.00 uses the Enlightenment desktop as its GUI interface. Although it's visually appealing, few applications from its programs menu are available. The programs that are available include Virtual Manager, an application that lets you manage your virtual machines, Firefox, Pidgin for instant messaging, and GQview for image viewing. Other than running those applications, you can only configure the Enlightenment desktop or run xterm to start using the server services. The desktop itself doesn't have shortcuts for common server applications and tools, though you can create those shortcuts. It seems that the only purpose of the GUI is to execute your server scripts easily by creating program menus or desktop shortcuts. If you're used to CLI, just bypass the desktop GUI.

Most of the server applications reside in the /server directory. To run services like Apache, MySQL, and Squid, refer to the SoL wiki to learn the associated scripts to run. Unlike with other distributions, you can't use service daemon start|stop|restart to control the services; you must run a script with parameters such as start and stop. For example, to start the Apache service, execute /etc/rc.d/bin/sol-httpd.sh start; for the MySQL service, execute /etc/rc.d/bin/sol-mysql.sh start.

Although this kind of arrangement is simple, it is unlike that of most Linux distributions. It will pose no problem if you use the application provided by SoL, but you may have a problem if you install other applications that follow common directory conventions. For example, most open source applications that rely on Apache or MySQL expect that those services will be in the /etc/include directory. Since the services are under /server, you will need to do some manual tweaking to tell the applications the services' correct location -- if the applications allow that.

Among the bundled applications, Sol 25.00 includes the Zope content management system, and the GUI-based Firestarter for your firewall protection needs. The Shorewall firewall is also available, but you'll need to modify its configuration file under /etc/shorewall for it to work. If you need virtualization programs, Xen and Qemu are at you disposal. Unfortunately, the SoL 25.00 package doesn't include common mail servers Postfix and Sendmail, but it does include Exim and Courier, along with SpamAssassin. SoL also includes Nagios and MRTG for network monitoring.

Unlike the traditional scripts that you'll see on most Linux distributions, some of SoL's boot and startup scripts are in XML format. Any services not included on startup by default you need to add to the startup script /etc/rc.d/runlevel.xml. The syntax format of the script is different from the usual Linux script, but it's easy to figure out. You can put the server scripts I mentioned earlier here, so they will start automatically when the OS boots. For more information, view the Runlevel System documentation. To verify that the runlevel.xml script contains no errors, run runsol-check.

Conclusion

SoL 25.00 features a variety of server applications for different requirements. However, due to its slow development progress, unusual application directory structure, and insufficient documentation, system administrators should think twice before using this distribution in a live environment. The default Enlightenment desktop interface is visually appealing, but its only uses are for browsing and easy virtual machine management. SoL 25.00 also lacks customization options that would allow you to select only necessary packages and a variety of partition layouts.

However, even with these issues, SoL 25.00 can give you most of the functionality you need in a server for free. If you don't plan on using or installing applications other than those that come with SoL 25.00, and if its default filesystem layout is not a problem, then you have nothing to lose. Otherwise, the next best alternative would be to stick with other free server distributions, such as CentOS, and manually download and install the additional server applications you need.

Categories:

  • Linux
  • Reviews
  • Server Optimized Linux
Click Here!