GeodSoft logo   GeodSoft

Linux, OpenBSD, Windows Server Comparison: Open Source Documentation

With both Linux and OpenBSD, nearly all the documentation that you really need will be available free on-line. Unlike Windows, you should almost always do some reading before you start to use Linux or OpenBSD products. It's worth noting that despite its reputation for difficulty, my very first attempt at an OpenBSD (2.6) install was completely successful. I got the standard distribution CD and looked at the install instructions. It was immediately obvious that I had to read these to know what I was going to be doing. The install instructions were only a few pages. As the install was text based and required use of a disk partitioning tool I hadn't previously used, the material had to be read to understand the partioning process. There was nothing difficult, just somewhat unfamiliar. Following the basic install, I was able to start the web server and later create a second virtual site, switch the default and new sites so my site became the default and basically put the machine to its intended use as a web server without any important incidents or problems. The original install served without trouble until I upgraded to 2.7.

For both Linux and OpenBSD, RTFM ("Read the f***ing manual") still applies. With Windows, many have reached a point of laziness where we expect to put a CD-ROM in the drive and have an install procedure automatically start. After accepting the default install choices and perhaps rebooting, we expect the new product to be properly installed on our system. Finally we expect to be able to launch the new program from the Start Menu and that the basic functions will be so simple to perform that we can do them without ever looking at a manual. This approach may be acceptable or even desirable for an single, end user desktop machine but a server is not a desktop and contrary to what Microsoft wants us to believe it is irresponsible and unprofessional for an administrator to deal with a server the same way a non technical user deals with his or her private PC.

Installing Software on Linux and OpenBSD

Linux and OpenBSD have nothing quite comparable to Window's stick a CD-ROM in a drive and start running software with unknown capabilities a few minutes later. I admit, no one is likely to put random CD-ROMs in their drives and CDs used to install products are installing products that have been selected for a purpose. Still the very nature of Windows hides most of what any program does from it's users, starting with the proprietary source code on which most Windows programs are based. You buy a Window's product based on a feature list and anything it needs to perform those functions will be automatically added to your system. You don't and really can't know what the software will do to your system until it's installed and running. This is OK, if you have test servers that closely mimic production servers, but represents a non trivial risk factor when done on production servers.

To install binary packages, Linux has "rpm -i" and OpenBSD "pkg_add". On both systems, after you've downloaded source, ". ./configure; make; make install" will install many software applications. Presumably though, few administrators are likely to obtain a package based on nothing but a filename. In other words, UNIX administrators will have done some research into what the package does. The package manager or the configure step will tell the administrator about any dependent packages or libraries not already on the system that the software needs, allowing the administrator to make an intelligent decision regarding such additional components. In other words, adding a specific service or application on a UNIX system is much less likely to add infrastructure components without the administrator's knowledge.

Once the product is installed on a UNIX system, it's not likely to run, until the administrator takes some positive actions to enable it. In other words, in configuring and activating the newly installed product, the administrator is likely to understand how it fits in the system, i.e. both where it's located and how it's started and stopped. They may and certainly can if they wish, learn what ports are used. All of this superficially sounds like UNIX is harder to use (learn) than Windows and if you honestly believe there is no need to understand the servers you manage, then it is true. If however you believe as I do, that no one can competently manage a server of which they have no substantive understanding, then it's not at all true. It simply means that a UNIX administrator, must do at least a minimum level of homework before adding new applications and services to their servers, and hopefully in so doing, will not make gross mistakes that expose their systems, in such a way that any script kiddie stumbling across the system, can enter it at will.

Free Support for Open Source

In the two years that I've actively been working with open source systems I've had several problems that I've had to seek outside assistance with. The earlier experiences were quite favorable; more recently I've had some mixed experiences. One early problem related to my firewall. Though the firewall was functioning properly with regards to what traffic it was allowing through in both directions and I could telnet into it, I could not use ftp to send files out. The first problem requiring outside assistance was how to mount a floppy on OpenBSD. In both cases, after I posted a question to the appropriate Usenet group, comp.unix.bsd.openbsd.misc, I had a technically correct answer within 6 hours. For the firewall, I had to allow traffic out through the local interface.

I found the floppy problem more troubling and wrote a web page about this. I saw this as a defect in OpenBSD documentation and from the perspective of gaining mass acceptance, it is. From a UNIX perspective, my problem was that I was blinded by 18 years of thinking of floppy disks from a CPM, DOS, Windows, OS/2 and Macintosh perspective. In all these systems the floppy drive is special and different than a hard disk. You either have raw or formatted media. If the media is not formatted the system tells you and if it is formatted and in the drive, the floppy is available for use. On UNIX a floppy is just a disk. The first thing it needs is a file system. As soon as someone told me that I had to start with creating a file system, which is logical and consistent with other UNIX disks, the rest came naturally.

The floppy problem does illustrate some important differences between Linux, OpenBSD and Windows documentation. OpenBSD has very good reference documentation, specifically man pages that are kept up to date. If you know just what you want to do it's easy to find detailed information on how to do it. If you are looking for tutorial documentation that tells you about the small steps needed to accomplish large tasks, OpenBSD is still noticeably weak. There is a growing amount of How-To documentation but its not close to what is available for Linux. If you ask in the right places, the OpenBSD community will nearly always point you in the right direction and tell you where to find the necessary documentation. Still if you are a novice in the area you are asking, about there may be a significant learning process.

The Internet is loaded with extensive, often high quality, tutorial material for Linux and it's all free. Probably the best starting point is The Linux Documentation Project at http://www.tldp.org/ . For example there is a "CD-Writing HOWTO"; it had enough information that my very first attempt to write a CD on Linux was successful. There are also many good commercial books on Linux and for comprehensive treatment of specific subjects, many are well worth their price, but they are rarely necessary. There is also a lot of free material on Windows on the Internet. This is more likely to be aimed at very specific topics. Maybe I don't know where to look, but I don't recall large numbers of comprehensive Windows tutorials available for free on the Internet. Certainly Microsoft official documentation is not available free; in fact Microsoft has quite a supply of supplementary documentation available at typically high prices. If you want good Windows documentation, you are much more likely to have to pay for it than for either Linux or OpenBSD documentation.

Recently, I needed help reading some IP Filter log entries. I posted a question to the appropriate Usenet group. Twenty minutes later, when I checked to see if my question was successfully posted, there was already an accurate answer. A day or so latter, I posted a more detailed question about similar log entries but this was not answered. I took the same question to the IP Filter mailing list. It took two tries to get a discussion started on this but about ten persons got into the resulting discussion. Reading the entries wasn't actually that difficult; my original post included the correct reading which just didn't seem plausible. Five others posted similar log entries. It turned out that all of us were seeing "backscatter" from the same massive spoofed denial of service attack on several sites that were accessible via a UUNet router that was sending us ICMP error messages. Our IP addresses were being used in the attack and our firewalls were blocking the valid (from the router's point of view) ICMP errors because the firewalls could not match the incoming errors to any outgoing traffic.

The key point is though, that with open source products and not just Linux and OpenBSD but virtually all off them, once you learn where the active support is, whether it's a Usenet newsgroup or product mail list or both, response will be faster and more accurate than any but the most expensive paid commercial support options. In addition, there is a huge amount of both Linux reference and tutorial documentation available free; much more so than Windows. OpenBSD has good reference documentation but is weak on tutorial material; still with mixture of searching and asking, you can normally get what you need and it's also free.

In early 2002, I feel that I need to add an amendment to my comments on OpenBSD and getting help for OpenBSD problems. In the fall of 2001, I encountered a bug related to a specific network card and in December of 2001 I prepared a 3.0 firewall which is documented in my Hardening OpenBSD section. If you find a real bug or specific problem, clearly described and properly researched, the OpenBSD community can be remarkably helpful for non paid volunteers, and my go through many rounds trying to help you find a solution. The network card resulted in about 17 cycles of e-mail communication and a simple work around that involved the use of an option that had not been previously necessary. On the other hand, a poorly phrased query or one that may be interpreted as the author not doing their homework can easily provoke unnecessarily negative replies. This is historically true of any unmoderated Internet communication channel but my sense is that it is more extreme in the OpenBSD related Usenet group, comp.unix.bsd.openbsd.misc, and mailing lists at openbsd.org than similar forums for other OSs.

The Linux community often sees Linux as the answer to all computing problems and thus very much wants to encourage converts and newcomers. This results a more positive reaction to newbie questions. OpenBSD on the other hand is the purist's system, built by persons with clear priorities and relatively uncompromising positions when it comes to technical quality, security, and licensing issues ("free software"). The result in not anti-newbie but simply indifference. The OpenBSD community sees relatively little need to sell OpenBSD's merits and has a much higher percentage of persons with significant technical knowledge in the areas of system internals and networking protocols. The community is small enough that it lacks the resources to pursue it's primary goals and make the system generally accessible to newcomers, especially those with more limited technical skills. As a result I've seen posts in misc@openbsd.org and recieved private e-mail where persons said they felt unwelcome in the OpenBSD community. One recent public post said 'right now i feel pretty alone with my problem and also a little hated by you "real OpenBSD people"'. This is certainly not a typical or common reaction but is not unique either. Holland Consulting has an excellent disucssion of this topic titled Why are the OpenBSD mail lists so "unfriendly"? which is followed by answers to several other questions that show the OpenBSD philosopy.

Commercial Support for Open Source

As for commercial support options, you might do as well as IBM, but not likely better, and IBM is very much behind Linux at this point. If you need and can afford,7 by 24 hour paid tech support for Linux, I expect that IBM has a suitable plan. If you want something less comprehensive and expensive there a variety of options. Red Hat, the largest Linux distributor, is primarily a support company. All the commercially sold packages include some telephone and e-mail support. More comprehensive options are available.

Using IBM will involve selecting some specific Linux variants and products. For example, you'll not likely get Corel Linux support from IBM. Since IBM support of Linux is aimed mostly at creating an e-business and cross hardware platform, that will let all the business applications that run on one IBM hardware platform run on all, the necessary products to meet any business need are likely to be available or become available in the near future. If you can afford their services, IBM should be able to help just about any business find a solution to almost any problem they face.

While at first glance, an all IBM Linux based solution, might look something like an all Microsoft solution, it will be fundamentally different in some important regards. First, service fees will be separate from software license fees; if you're not satisfied with IBM service, you will have some option for ending the service agreements, and it will not require giving up the systems being serviced. An IBM solution will include parts that are proprietary such as DB2 rather than SQL Server. But that is only one component. Websphere, the web server is developed from Apache. If you don't need the specific enhancements provided by Websphere, you could probably substitute standard Apache with little ill effect. I have no idea what kind of license terms come with Websphere. Since it is derived from Apache, there is a reasonable chance that Websphere clients have access to source, perhaps with confidentiality restrictions. Whatever the details, because of its origins, you'll know more about Websphere than IIS. If IBM wants to take advantage of Apache developments, e.g., use new Apache modules, then they need to keep Websphere reasonably close to Apache in its core architecture.

Even with a proprietary component like DB2, you are much less locked in than with Microsoft SQL Server. SQL Server runs only on Windows NT and now Windows 2000. There are no other choices. SQL Server is tightly integrated with NT and 2000 and the security they provide among other things. DB2, which runs on Linux, AIX, NT, 2000 and others, is not tightly tied to any of them. It should be relatively easy to substitute Oracle or MySQL for DB2 (on any platform). It may be almost impossible to substitute DB2, MySQL or Oracle for SQL Server even though all are available on Windows NT and 2000, as all the functions for which SQL Server uses the OS, will need to be reprogrammed at the database or application level.

Every Microsoft product is designed to lock you more tightly into the entire product line. Microsoft products use open standards but they are not open products. Anything built on a Linux system where the OS and large chunks of the infrastructure are open, is bound to be more open and adaptable to use with other products than is any Microsoft product.

transparent spacer

Top of Page - Site Map

Copyright © 2000 - 2014 by George Shaffer. This material may be distributed only subject to the terms and conditions set forth in http://GeodSoft.com/terms.htm (or http://GeodSoft.com/cgi-bin/terms.pl). These terms are subject to change. Distribution is subject to the current terms, or at the choice of the distributor, those in an earlier, digitally signed electronic copy of http://GeodSoft.com/terms.htm (or cgi-bin/terms.pl) from the time of the distribution. Distribution of substantively modified versions of GeodSoft content is prohibited without the explicit written permission of George Shaffer. Distribution of the work or derivatives of the work, in whole or in part, for commercial purposes is prohibited unless prior written permission is obtained from George Shaffer. Distribution in accordance with these terms, for unrestricted and uncompensated public access, non profit, or internal company use is allowed.

 


What's New
How-To
Opinion
Book
                                       
Email address

Copyright © 2000-2014, George Shaffer. Terms and Conditions of Use.