Unix Introduction: AfNOG 2007

Why are we teaching you FreeBSD?

The "Nutshell" view. Not necessarily politically correct:

Windows

  • Windows is simply not an option for this group. It has improved as a server OS, but it was never designed to be a server operating system, but rather is driven by external market forces. This becomes apparent time after time with the type of security breaches that are seen, licensing decisions, etc...
  • Pretty much any truly independent study done of operating system costs (there have been precious few) show Windows to be more costly to run in an Enterprise or medium-level business than Linux or Unix.
  • Windows has a steep up-front cost in terms of licensing.

Linux

  • Actually, Linux is a perfectly reasonable choice. But, which one? This is a major issue. No matter what we choose it will not be what you are using - just what some of you are using, or want to use:
    • You might use RHEL, but this costs money up-front and yearly.
    • You might use SuSE - if you aren't upset at them about their deal with Microsoft.
    • You might choose Debian. Great choice. It usually requires a bit of tweaking to get it to do what you want if you are a new user.
    • You might use Ubuntu - Another great choice. It's based on Debian.
    • You might use Gentoo. Good choice.
    • You might use Fedora. But, this has a fast development cycle that may not be best in some environments.
    • You might use another commercial distribution, but that costs money.
    • After this there are very few "realistic" choices that are truly available for free.
  • Things change in the world of Linux. It can be hard to pick your distribution and stick with it if you don't think your choice through from the start.
  • Traditionally Linux has been seen as "aspiring to" reach the levels of stability, robustness, etc. that Unix has. In reality you can still argue this, but in some areas Linux now surpasses Unix in terms of performance

Mac OS

  • As an operating system this is a fine choice. Mac OS is even based on FreeBSD!
  • You are locked in to using Apple hardware if you run Mac OS. Apple hardware is expensive and their server hardware simply cannot compete with what is available in the "Intel"-based hardware world.

FreeBSD

  • It's fast.
  • It's incredibly stable.
  • It has been proven year after year in sites worldwide (Yahoo for instance among many).
  • It has a _single_ source tree.
  • There is a single FreeBSD project and it will remain free.
  • FreeBSD uses the BSD License, which is even more liberal than the Linux GNU license.
  • Windows and Linux have played catch-up to FreeBSD for years in the areas of package (software) management, memory management, tcp/ip throughput and stability, etc... While they may have caught up in some ways FreeBSD has been doing this for a long time.
  • FreeBSD has an excellent software packaging system.
  • You can successfully and reliably upgrade FreeBSD across versions. You cannot say this about Linux. You can sort of say this about Windows.
  • FreeBSD can run Linux applications (as long as they are kernel 2.4 compatible) and it can run them as well as Linux.
  • FreeBSD has some superior features such as an indexed password file, ****, ****, ****

Operating System Philosophies

OK, now that we've given you some details about why we are using FreeBSD let's give you a quick overview of some of the higher-level philosophies.

Where do these OS'es come from? Again, none of this is politically correct.

Windows

  • Comes from market forces.
  • Was originally based on 16-bit DOS up through Windows version 98/ME.
  • Microsoft has had to reverse engineer Windows for the past 10 years in order to attain reasonable stability.
  • Other than Windows NT and, somewhat, Windows 2000 each version of Windows is aimed at the consumer desktop market - not the server OS.
  • Windows Vista is, again, driven by many market forces vs. simply being a server OS. This is painfully obvious with drm issues.
This list goes on.This is not the way to design an operating system and it shows.

Linux

"Unix for the ordinary person" as originally written by Linus Torvalds. That is, get Unix to run on Intel hardware and make it free. Linux has many similarities to Unix, but core subsystems were designed differently, such as the kernel, i/o, process management and memory management. This was apparent for many years as Linux played catch-up to Unix (FreeBSD, Solaris, AIX, etc.) to try and achieve the same levels of stability and performance.

Today Linux has largely caught up and has more hardware and software support available, but still has some fundamental design differences from Unix.

FreeBSD

Based on BSD Unix. Is a single, contained project with the goal of creating a stable, high-performance server operating system. FreeBSD and Unix have been around for many years (over 30) and have proven their stability and performance at the Enterprise level long before Linux version 1.0 was ever available. FreeBSD supports a large amount of modern server hardware and runs on many platforms. In addition, FreeBSD can run Linux applications and has a huge software repository of natively available software (currently over 16,500 programs).

Some References

FreeBSD History
http://en.wikipedia.org/wiki/FreeBSD

About FreeBSD
http://www.freebsd.org/doc/en_US.ISO8859-1/books/faq/introduction.html

Why FreeBSD
http://www-128.ibm.com/developerworks/opensource/library/os-freebsd/?ca=dgr-lnxw01FreeBSD

Comparison of Operating Systems
http://en.wikipedia.org/wiki/Comparison_of_operating_systems

Comparison of Linux Versions
http://en.wikipedia.org/wiki/Comparison_of_Linux_distributions

FreeBSD Guide
http://www.engr.colostate.edu/~reinholz/freebsd/freebsd.html

3 Reasons to use FreeBSD
http://www.engr.colostate.edu/~reinholz/freebsd/3reasons.html

Last update: Sat Apr 21 19:10:06 BST 2007