Does Linux Mean Business?
Articles and Tips: article
01 Jan 2000
Over the past several months, Linux has become to the IT community what Pokmon is to the grade-school set: the current rage. Although Linux was once mostly limited to the scientific, academic, and hobbyist programmer communities, it has begun to make inroads into the Internet service provider (ISP) and business communities as well.
"Linux has acquired a lot of status," explains Paul Corriveau, Novell Directory Services (NDS) product marketing manager for Novell. "It's a reasonable assumption that most system administrators have Linux, and they're playing around with it. It's a little like toe-dipping in a pool."
In fact, network administrators in a growing number of companies have gone beyond this "toe-dipping" by incorporating Linux servers and workstations into the networks they oversee. In addition, some IT vendors--Novell, Oracle, and Lotus among them--recognize that the companies currently using Linux may be on the leading edge of a trend. Consequently, these IT vendors have stepped in to provide business applications for Linux.
For example, Novell recently released a closed beta version of NDS Corporate Edition, which provides redirection capabilities for Linux. In addition, Corel has released WordPerfect for Linux, and Sun Microsystems has released StarOffice suite for Linux. (For more information about WordPerfect and StarOffice for Linux, see "Take Your Penguin to Work.")
Of course, you may have decided that predictions of Linux replacing Windows on corporate desktops amount to wishful thinking and hype. (See Figure 1.) However, if you have decided to eschew learning more about Linux because you think that the current rage about Linux won't affect you or your company's network, you may want to reconsider your decision.
Figure 1: In 1998, 2.1 percent of client operating systems shipped were Linux. (See "Client Operating Environments: 1999 Worldwide Markets and Trends," IDC, June 1999.)
As this article explains, Linux has some compelling strengths, and although it also has weaknesses, both vendors and independent programmers are creating solutions that address those weaknesses. Not the least of these solutions is Novell's NDS Corporate Edition, which will provide a directory service for Linux so you can integrate Linux in your existing network environment. (Support for Linux is now available in a closed beta version and will soon be available to the public.)
THE FLAP OVER LINUX
Why is Linux suddenly so popular? This question probably doesn't have a definitive answer. However, according to the official Linux web site (http://www.linux.org/info/index.html), one reason Linux has become popular is that its source code is freely available. As a result, programmers can modify Linux to meet the unique requirements of specific groups.
Linux source code is distributed under the GNU General Public License. This license--known as a copyleft agreement--guarantees the freedom to share copies of all software that is distributed under the license. The license also guarantees the freedom to change that software, providing that changed versions also become freely available under the GNU General Public License. (To download a copy of the GNU General Public License, visit http://www.linux.org/info/gnu.html).
The cost of Linux distributions may be another reason for the current interest in Linux. (According to accepted GNU terminology, different versions of Linux are called distributions.) You can purchase a commercial distribution of Linux--such as Caldera's OpenLinux or Red Hat's Red Hat Linux--for as little as U.S. $30. You can then install this software on any number of computers without incurring additional licensing fees.
You can also download free noncommercial distributions of Linux from the web. For example, you can download a distribution of Debian GNU/Linux free from the Debian web site at http://www.debian.org. (For more information about Linux distributions, visit http://www.linux.org/dist/ftp.html.) Debian GNU/Linux is also available through Software in the Public Interest, a non-profit organization for the development and distribution of open source software and hardware. (For more information about Software in the Public Interest, visit http://www.spi-inc.org.)
Note: DID YOU KNOW? When asked why he chose a fat penguin to represent his lean Linux kernel, Linus Torvalds reportedly responded that the penguin's detractors had http://www.linux.org/info/penguin.html.)
CAN PENGUINS MEAN BUSINESS?
However appealing, a low price tag and open source code will probably not determine whether or not Linux ultimately succeeds in the business world. The success or failure of Linux will depend upon its ability to meet the needs of companies.
According to industry analysts and commentators, several weaknesses could prevent Linux from meeting the computing needs of companies. (Not everyone agrees with these analysts and commentators, however. See "Serve and Volley" for one IT professional's viewpoint on Linux.) The following sections outline the most often cited weaknesses of Linux:
Lack of Drivers for Popular Devices
In June 1999, International Data Corp. (IDC) reported that Linux had gained sufficient popularity to be included in IDC reports under its own category. (Previously, IDC had included Linux in its "Other" category.) Despite Linux's growth in popularity, however, IDC predicted that "an influx of Linux desktops is a number of years forthcoming." IDC based this prediction on several factors, such as the current "availability of drivers for the most popular devices and the most popular applications, tools, and databases." (See "Client Operating Environments: 1999 Worldwide Markets and Trends," IDC, June 1999.)
As you know, Linux drivers for network devices are critical because these devices provide users with needed services and because it would be costly to replace existing devices with devices for which Linux drivers are available. For example, suppose your company's network included a number of workstations that use a video card that Linux does not support. If you wanted to run Linux on these workstations, you would first have to replace the unsupported video cards with video cards that Linux does support. (To download a list of the video cards Linux supports, visit http://www.XFree86.org.)
Of course, the amount of money you would have to spend on these new video cards would depend on what type of cards you purchased. No matter what the cost of the video cards, however, the total cost of running Linux on these workstations would also include the amount of time it would take to install the new video cards.
Lack of Business Applications
IDC also based its predictions about the future of Linux on "the availability of the most popular business applications." Although business applications such as WordPerfect and StarOffice are available for Linux, there are not enough of these applications, according to Benoy Tamang, vice president of marketing for Caldera Systems (a commercial distributor of Linux). "Linux currently doesn't compete as well with established, entrenched operating systems mostly because there are an insufficient number of applications written to it," Tamang explains.
However, Tamang also notes that the number of business applications for Linux is "growing at a disproportionate rate" compared with the rate at which the number of applications for other operating systems is growing.
Applications are often so important to companies that--according to an IDC bulletin--companies typically select the applications that meet their requirements and then select the operating system that best supports those applications. ("IDC Position Paper: Is Windows NT or Linux Replacing other Server Operating Environments?" IDC, Nov. 1998.) Furthermore, when determining which applications best meet their requirements, companies often take into account the popularity of those applications. The more popular the application, the more users will be familiar with that application. Therefore, the less time it will take to train these users to use the application.
Difficult Integration and Lack of Management Tools
IDC also concluded that "Linux has yet to develop the systems integration services and management tools" that companies require. Since most companies already have networks in place, the ability to easily integrate Linux servers and workstations into those networks is obviously important. A difficult integration process takes time, and time--as the old adage goes--is money.
Of course, after you finally integrate a Linux server or workstation into the network, ease of management becomes an issue. Without adequate management tools, you may need to manually edit and configure Linux system files every time you make changes to the network.
Lack of Serverware
IT industry analysts and commentators also agree that a lack of serverware could prevent businesses from adopting Linux. (Serverware is hardware and software that enhance a server's capabilities.) For example, Linux does not support clustering, and it has limited support for Symmetric Multiprocessing (SMP) and Redundant Array of Independent Disks (RAID). (See http://www.zdnet.com/products/stories/reviews/0,4161,2327820,00.html.)
According to Corriveau, the lack of serverware for businesses could remain a hurdle to the growth of Linux adoption in the business server arena. "Many software inventions behind commercial software are patented, so the availability of this software will be subject to the support of patent holders," Corriveau explains. In some cases, developers must wait until a patent expires before they can develop serverware that uses patented technologies.
However, Corriveau notes that some patent holders are either making serverware technologies available for Linux developers or are delivering technologies for Linux themselves. For example, Sun Microsystems, a company that holds many patents (including patents to Java technology), is delivering a Java Developer Kit (JDK) for Linux. (For more information about Sun Microsystems and Linux, visit http://www.sun.com/linux/news.html.)
HAVE YOU SEEN A CHARGING PENGUIN?
Of course, Linux also has strengths, many of which are contributing to its popularity. For example, one of Linux's strengths is its open source code, which enables "programmers, developers, engineers, and hobbyists alike [to] identify and likely fix bugs, create patches, and make suggestions for future revisions to the main product for free." ("Linux: What Is It, Where Is It, And Why?" IDC, Mar. 1998.)
For example, when the programmers, developers, engineers, and hobbyists who comprise the open community wanted UNIX-based operating systems--including Linux--to print in a Windows NT environment, they created the Samba file server package. Samba is software that allows Windows NT, 98, and 95 workstations to access Linux file and print services. "Samba allows Linux to print in an NT environment as if it were right there--part of NT," Tamang explains. (For more information about Samba, visit ftp://samba.anu.edu.au/pub/unpacked/samba/docs/faq/Samba-meta-FAQ-2.html. You can download Samba from http://www.samba.org.)
The open community has also stepped in to provide two desktop environments for UNIX-based operating systems: K Desktop Environment (KDE) and GNU Network Object Model Environment (GNOME). KDE is a framework that supports desktop applications for UNIX-based workstations, including Linux workstations. In addition to a GUI, KDE provides workstations with features such as a file manager, a windows manager, and an e-mail client. (See Figure 2. For more information about KDE, visit http://www.kde.org.)
Figure 2: OpenLinux 2.3, a commercial Linux distribution from Caldera, uses the K Desktop Environment (KDE) to provide a GUI and support for business applications.
Like KDE, GNOME is an open-source desktop environment for UNIX-based workstations. (Source code for GNOME and KDE is freely distributed under the GNU General Public License.) Also Like KDE, GNOME offers features such as a GUI, a file manager, and an e-mail client to these workstations. (For more information about GNOME, visit http://www.gnome.org.)
Open source code also enables companies to customize Linux to meet their needs. For example, a company that wants to use a graphics card that isn't supported, such as a GMX 2000 graphics card, could hire a programmer to create a Linux kernel driver to support the card. In other words, open source code makes Linux "highly customizable," Tamang observes.
Lean and Efficient
As you may expect, the different Linux distributions contain various amounts of code. Because the Linux kernel is small, however, the amount of code required for any Linux distribution is significantly less than the amount of code required for most operating systems. For example, according to Tamang, OpenLinux 2.3 (Caldera's latest Linux distribution) contains less than half a million lines of code. In contrast, Windows NT contains more than six million lines of code, and Windows 2000 currently contains approximately 50 million lines of code.
Because Linux has relatively little code, it can run on a less powerful computer than other operating systems require. For example, Linux can run on 386 and 486 PCs. In addition, a subset of the Linux kernel, Embeddable Linux Kernel Subset (ELKS), can run in small network appliances, such as television set top boxes.
Furthermore, because Linux requires so little computing power, companies can make retired 486 PCs useful again. For example, a company could implement a firewall on Linux running on a previously retired 486 PC for zero hardware and software costs.
Linux owes its near-legendary reliability in part to the way the Linux kernel uses memory. The Linux kernel uses a memory management system that prevents malfunctioning or malicious programs from bringing down the whole operating system.
Like UNIX, Linux is a multitasking, multiuser operating system that is designed to run several programs at the same time. To accomplish this, the Linux kernel uses a virtual memory management system that shares memory among all of the programs that are running.
This virtual memory gives each program a separate virtual address space so that one program can't affect another. Virtual memory also prevents programs from overwriting critical areas of real memory, such as areas in which the Linux kernel is stored.
Linux also owes its reliability to its small size and the open source community. According to Tamang, programmers everywhere work on improving Linux source code, which means programming bugs are more likely to be discovered and fixed before new distributions are pronounced stable.
In addition, Torvalds must approve all of the changes to the Linux kernel before a new version of the Linux kernel can be considered stable. (Versions of the Linux kernel for which the tenths decimal place digit is odd--2.1, for example--are still in development. Versions for which the tenths decimal place digit is even--2.2, for example--are stable versions.)
How reliable is Linux? According to supporters, Linux has no equal. For example, Bill Campbell, president of Archive Retrieval Inc., installs Linux servers for ISPs and other businesses largely because of the operating system's stability. (Archive Retrieval is a consulting and systems development firm that recently installed Caldera's OpenLinux system for the city of Medina, Washington--hometown of Bill Gates. For more information about Archive Retrieval, visit http://www.anarchive.com.)
"I want a nice, boring, stable product to put in my customers' businesses. When they're going to be running servers 24-seven, crashes are not acceptable," Campbell explains.
READY OR NOT
Although this article lists only some of Linux's weaknesses and strengths, you can use this information to begin evaluating whether or not Linux would benefit your company's network. For example, suppose you must decide if you will choose a new client operating system or update the client operating system to a newer version of the same operating system. Furthermore, suppose your criteria for choosing between these two options are the following:
If your number-one criterion for choosing between a new and an updated client operating system is the hardware requirements of that system, Linux may be a viable option. Linux runs efficiently on 486 or higher computers. In contrast, if you want to upgrade Windows 95 on 486 computers to Windows 98, you may have to upgrade to computers with a Pentium CPU. (For more information about how hardware companies are supporting Linux, see "Hardware Vendors Serve up Linux.")
Linux may also be a viable choice if cost is an important criterion for choosing a client operating system. If you or someone on your company's IT staff is already familiar with Linux installation and network management procedures, you can download a free distribution of Linux from the Internet.
If, on the other hand, no one on the IT staff is familiar with Linux, you can get the automated installation procedures and support offered with many commercial distributions for less than U.S. $50. In either case, you can use the same copy of Linux for every workstation on the network. Linux requires no per-user licenses.
In contrast, updating Windows 95 to Windows 98 could cost an estimated U.S. $109 per user. (For more information about Windows 98 pricing, visit http://www.microsoft.com/windows98/guide/Win98/PurchasingInfo/default.asp.)
However, if your most important criterion for choosing between a new and an updated client operating system is your company's application requirements, Linux may not be an alternative for your company in the near future. For example, your company may depend on business applications to perform crucial tasks. If these applications do not run on Linux, Linux is obviously a poor choice for your company's new client operating system.
Note: DID YOU KNOW? Linux has been around since 1991, when Linus Torvalds, then a student at the University of Helsinki, combined his Linux kernel with GNU's Not Unix (GNU) software to create version 0.02 of Linux. GNU is a UNIX-like operating system developed under the Free Software Foundation's GNU project. (The GNU operating system kernel, GNU Hurd, was still under development when Torvalds created his Linux kernel.) The Free Software Foundation was founded on the tenet that software should be freely shared and that the source code for this shared software should be freely available. (For more information about the GNU project and the Free Software Foundation, visit http://www.fsf.org.)
NEW TRICKS FOR OLD PENGUINS
Even if your company's critical applications will not now run on Linux, they probably will soon. In the past year, several IT companies have stepped in to address Linux shortcomings, including support for business applications. For example, Mainsoft is now offering a Linux version of MainWin in a limited beta release.
MainWin enables application developers to rehost Windows 95 and 98 applications on Linux. Application developers "own their Windows source code, and they are able to recompile it on Linux without changing the original code," explains Yaacov Cohen, chief operations officer (COO) for Mainsoft.
Because developers can use MainWin to recompile this code quickly (and therefore inexpensively), they will probably choose to rehost Windows applications on Linux. (For more information about MainWin for Linux, visit http://www.mainsoft.com/products/linux/linux_home.html.)
Furthermore, tools such as C-Forge from Code Forge and Kylix from Inprise are--or will soon be--available to developers who want to write applications for Linux. C-Forge provides a drag-and-drop development environment for creating native Linux applications. (C-Forge for Linux is available for Intel and Digital Alpha-based computers. For more information about C-Forge for Linux, visit http://www.codeforge.com/platforms.html.)
Kylix is a code name for a collection of rapid application development (RAD) tools for Linux. Among others, these RAD tools include JBuilder for Linux, a tool that enables developers to write Java applications using a just-in-time (JIT) compiler that runs on Linux. (For more information about Kylix, visit http://www.inprise.com/jbuilder/linux.)
IT companies are also addressing Linux's lack of device drivers and serverware. Most new versions of commercial Linux distributions include device drivers that older versions did not include. For example, Caldera's OpenLinux 2.3, which was released in September 1999, includes several device drivers that were not available in previous versions of OpenLinux.
In addition, TurboLinux, a company that specializes in Linux distributions and applications, recently addressed Linux's lack of serverware with its TurboCluster Server 4.0. TurboCluster Server 4.0 is high-availability clustering software that provides Linux servers on TCP/IP networks with fail-over protection and load balancing. (For more information about TurboCluster Server 4.0, visit http://www.turbolinux.com/products/tltcs.html.)
Last, but not least, Novell is stepping in to address the much-needed management and system integration tools that Linux has previously lacked.
TAKE IT EASY
Suppose you want to host a particu-lar set of applications, such as sendmail and Post Office Protocol (POP) applications, on a Linux server. How would you integrate this server and the applications running on it into your company's network?
You have two choices: You can integrate the Linux server the easy way, or you can integrate it the hard way. The easy way to integrate the Linux server is to install NDS Corporate Edition.
NDS Corporate Edition is Novell's new software for managing corporate user accounts in a single directory. NDS Corporate Edition redirects access control and authentication calls from Windows NT and Solaris operating systems to NDS. These redirection capabilities enable NDS Corporate Edition to integrate servers running any combination of the following operating systems: Windows NT, Solaris, and NetWare. In other words, NDS Corporate Edition enables you to manage heterogeneous networks through a single, unified NDS directory. (For more information about NDS Corporate Edition, visit http://www.novell.com/products/nds/index.html.)
Redirection capabilities for Linux are available in a closed beta version of NDS Corporate Edition and will soon be available to the public. When you install NDS Corporate Edition on a Linux server, NDS Corporate Edition uses redirection capabilities to automatically integrate Linux usernames, passwords, and utilities--such as FTP--into the rest of your network.
The hard way to integrate the Linux server is to manage individual Linux configuration files that contain user and group information--for example, /etc/passwd and etc/group. Without NDS Corporate Edition, you must manage these files individually if you want to enable users to log in to the Linux server using the same username and password they use to log in to the rest of your company's network. (You can use Network Information Service [NIS] to consolidate user and group information on Linux networks. However, this UNIX-based service cannot consolidate user information on networks that include Windows NT or NetWare user accounts. Furthermore, NIS cannot integrate applications that are running on these platforms.)
How does NDS Corporate Edition redirect access control and authentication calls from Linux to NDS? NDS Corporate Edition uses Name Service Switch (NSS) and Pluggable Authentication Module (PAM) provider modules to perform these services and to help you avoid the complexities of Linux integration. (See Figure 3.)
Figure 3: NSS and PAM redirect application calls that are intended for naming and authentication services running on disparate platforms to NDS eDirectory.
NSS is a standard Application Program Interface (API) that allows UNIX-based servers--including Linux servers--to support multiple name services. For example, using NSS, a Linux host could support both Domain Naming System (DNS) and the /etc/hosts naming service, which is a file-based naming service that (like DNS) resolves host names with IP addresses.
You can also configure NSS to provide name services for specific users. For example, you could configure NSS to provide DNS services for users who access the Linux server via the Internet. NDS Corporate Edition uses NSS to redirect program calls for name services to NDS.
PAM is a UNIX standard API that enables programmers to write applications that are independent from the mechanisms through which users authenticate themselves to those applications. PAM supports authentication modules that provide the following services:
Authentication. PAM supports authentication services that provide username and password verification, such as Password Authentication Protocol (PAP) and Challenge Handshake Authentication Protocol (CHAP).
Account Information. PAM supports services that provide user information--such as username, home directory, and group memberships.
Password. PAM supports password services--such as password creation, modification, and reset.
Session. PAM supports services that determine whether or not a particular login session is permitted on a particular server at a particular time.
Figure 4: Samba Web Administration Tool (SWAT) is a web-based management tool for the Samba server.
NDS Corporate Edition uses PAM to automatically redirect application calls for authentication services to NDS. NDS supplies security for these applications through the Novell International Cryptographic Infrastructure (NICI).
"When you install NDS Corporate Edition, it automatically plugs into the PAM framework and becomes a provider for services like login, account information lookup, managing passwords, setting password expiration, and so on," Corriveau explains.
NDS provides NICI services for Linux via Linux kernel drivers, which access the Linux operating system to provide security on Linux servers just as NICI NetWare Loadable Modules (NLMs) access the NetWare operating system to provide security on NetWare servers. Furthermore, NICI on Linux provides the same rigorous challenge-response cryptography that it provides on NetWare. (For more information about NICI, see http://www.nwconnection.com/past.)
A GIANT STEP FORWARD
Applications that use NSS and PAM--such as sendmail and POP applications--are independent of the underlying service provider for NSS and PAM services. After NDS Corporate Edition installs the NSS and PAM provider modules on the Linux server, these sendmail and POP applications can automatically send and receive e-mail messages and forward those messages to users on your company's network.
However, easy integration is only one of the Linux weaknesses that NDS Corporate Edition addresses. NDS Corporate Edition runs on top of Novell's NDS eDirectory, which means that NDS Corporate Edition also addresses the lack of management applications for Linux.
NDS eDirectory is Novell's NetWare-independent implementation of NDS 8. That is, NDS eDirectory brings all of the features of NDS 8, including management capabilities, to multiplatform environments.
How far do NDS Corporate Edition and NDS eDirectory go toward addressing the lack of management tools for the Linux operating system? With NDS Corporate Edition and NDS eDirectory, you can now manage user accounts, network devices, and the relationships among users, applications, and network devices on networks that include Linux. That is, NDS Corporate Edition and NDS eDirectory provide Linux with management capabilities and advance Linux a giant step forward in the business computing space.
IT'S ALL THAT AND A BAG OF CHIPS
As a full service directory, NDS eDirectory also brings the following capabilities to Linux:
Open Standards Support, Including Lightweight Directory Access Protocol (LDAP) 3 Support. Support for open standards, such as LDAP 3, enables applications that are written to these standards to use NDS Corporate Edition and NDS eDirectory. For example, NDS Corporate Edition allows you to consolidate user account information running on disparate operating systems into a single directory: NDS eDirectory. Because NDS eDirectory supports LDAP 3, third-party applications that are written to the LDAP 3 standard can access this consolidated account information. (For more information about LDAP and NDS, see "LDAP and NDS: A Relationship You Can Count On," NetWare Connection, Nov. 1999, pp. 18-30. You can download this article at http://www.nwconnection.com/past.)
Availability. NDS eDirectory can be partitioned and replicated. That is, with NDS eDirectory, Linux servers can function as part of an NDS replica ring. Furthermore, this replica ring can contain any combination of server operating systems for which NDS eDirectory and NDS are available. For example, a replica ring could contain Linux, Windows NT, and NetWare Servers.
Efficiency. NDS eDirectory uses the same embedded database that makes NDS 8 efficient for storing and replicating millions of directory objects. The hierarchical structure of this directory closely matches the hierarchical structure of NDS itself.
The NDS database is also extremely compact. It uses less than 2 KB of memory per User object (unless that user object uses a certificate authority, in which case the NDS database uses 3 KB of memory). The compact size of the NDS database makes NDS eDirectory replication and synchronization very efficient.
NDS eDirectory also uses dynamic inheritance of rights, which makes NDS eDirectory efficient at managing directory objects. With dynamic inheritance, when you assign rights at the container level, those rights apply to all of the objects that are below that container in the NDS eDirectory tree. For example, if 5,000 users in a container object have the right to access a particular service, that right represents one bit within the branch container, not 5,000 bits (one for each User object).
This design allows NDS eDirectory to contain hundreds of millions of User objects per partition, and billions of User objects per directory tree. This design also reduces the synchronization traffic between replica servers when rights are modified. In contrast, other directories, such as Microsoft Active Directory, associate rights with each individual User object. This design not only increases the size of the database but also increases synchronization traffic.
Will Linux eventually become the operating system of choice for businesses? No one can answer that question. Again, Linux will most likely gain popularity in business in proportion to its ability to meet business needs.
Whether or not Linux is the right operating system to meet your company's particular needs, chances are that someday Linux will be the perfect operating system for a specific task that your company's network must handle. If that day comes and you are among the network administrators who have already tested the waters, plunging into Linux shouldn't cause a significant shock to your system.
Cheryl Walton works for Niche Associates, an agency in Sandy, Utah.
* Originally published in Novell Connection Magazine
The origin of this information may be internal or external to Novell. While Novell makes all reasonable efforts to verify this information, Novell does not make explicit or implied claims to its validity.