100 Reasons Why Linux Kicks Ass

Monday, August 3, 2009

Introduction

Linux is the universal operating system. It runs on everything from personal computers to traffic signals. Airplanes, automobiles, and even wrist watches can also run Linux. Originally started as a hobby in 1991, Linux creator Linus Torvalds claimed that Linux “won’t be big and professional..." Given the rapid global reach of Linux today it's easy to see why many believe this was the biggest understatement in all of computing history.

Linux is a free (open source) operating system kernel licensed under the GNU General Public License. The Linux kernel packaged with a desktop environment such as Gnome or KDE and a host of other open source software becomes what is known as a Linux distribution. The first commercial Linux distributions hit the market in the mid 1990's. Since then hundreds of variants have been developed - although there are only considered to be about 10 major Linux distributions today (see Popular Linux Distributions).

Thousands of developers around the world contribute code to Linux and other open source projects. Some of these developers are paid by large companies like Dell, Hewlett Packard, and IBM while others are unpaid volunteers or students. Given the open nature of Linux development process, companies like Microsoft loathe Linux because it challenges their business model which is based on proprietary technologies.

Linux, combined with the freely available GNU software of the early 90's, created a digital frontier that is still being explored today. In the early years of Linux there wasn't much software available to run on the operating system. If a person (read: geek) wanted their Linux computer to do something awesome they have to roll up their sleeves and program it themselves. Many of those ideas hatched nearly 20 years ago are still being implemented and refined today.

Continuous development, short incremental release cycles, and community participation together help Linux continue to innovate and mature without getting “stale”. 100 Reasons Why Linux Kicks Ass highlights these advancements.

Reason 1: Gnome Desktop Environment

The Gnome project was started in 1997 as a 100% free and open source desktop environment. The first general release (version 1.0) of Gnome was in 1999. In the 10 years since its initial release Gnome has matured into a full featured desktop with a heavy emphasis on simplicity and usability.

Did you know? Gnome is the default desktop environment for many popular Linux distributions including Ubuntu, Red Hat, Fedora, and Cento OS.

Website: www.gnome.org

Reason 2: KDE Desktop Environment

The KDE project was started in 1996 with the goal of creating the first Unix/Linux based desktop with a rich user experience. Version 1.0 of KDE was released in 1998. Since then, KDE has continued to improve the desktop experience by combining a visually appealing desktop with user friendliness.


Website: www.kde.org

Reason 3: Xfce Desktop Environment

Xfce is a popular alternative to Gnome and KDE. Xfce is a lightweight desktop environment that is capable of providing a modern user experience without enormous hardware requirements. Xfce’s speed and low memory footprint makes it a great choice for users with older computers or those who prefer a “slim” desktop.

Version 4.6 of the Xfce desktop environment

Did you know? Most applications developed specifically for Gnome or KDE will run on the Xfce desktop. Package managers like Synaptic will automatically install any dependant libraries required to allow this.

Website: www.xfce.org

Reason 4: OpenOffice.org

OpenOffice.org (commonly referred to as OpenOffice) is an application suite similar to Microsoft Office. It has programs for all common desktop publishing tasks including word processing, spreadsheets, presentations, and databases. OpenOffice is capable of working with most widely used document formats and also provides ODF (Open document Format) which is its own file format that is based on open standards.

Version 3.0 of the OpenOffice.org office suite


Did you know? Microsoft has added native support for OpenOffice’s ODF format in the recently released Office 2007 Service Pack 2.

Website: www.openoffice.org

Reason 5: AbiWord

AbiWord is a lightweight word processing program similar to OpenOffice Writer and Microsoft Word. Like OpenOffice, AbiWord supports all modern file formats including those created by Microsoft Office. AbiWord’s basic feature set and simple interface make it ideal for everyday desktop publishing projects.

Abiword word processor


Did you know? The current version of Abiword is also available to run on Windows 2000 and newer Microsoft Windows systems.

Website: www.abisource.com

Reason 6: Gnumeric

Gnumeric is a Gnome spreadsheet application that aims to be a user friendly alternative to Microsoft Office and OpenOffice Calc. Gnumeric has native support for most common spreadsheet file formats.

Gnumeric spreadsheet application

Did you know? Gnumeric’s default file format has built-in support for compression which reduces the overall file size of its spreadsheets.

Website: http://projects.gnome.org/gnumeric/

Reason 7: Evolution

Evolution is an all in one information management application similar to Microsoft Outlook. Evolution helps users manage email, calendars, contacts, and tasks. Evolution supports most modern mail systems protocols including POP3, IMAP, Microsoft Exchange, and Novell GroupWise.

Evolution email client

Website: http://projects.gnome.org/evolution/

Reason 8: Mozilla Firefox

Mozilla Firefox is a cross-platform open source web browser. Firefox's core features are centered around security, stability, performance, and its add-on extension architecture. Next to the Linux kernel, Firefox is considered to be one of the most successful open source applications. Firefox has climbed to a worldwide market share of over 20% since its inception.

Version 3.0 of Mozilla Firefox running on Linux

Tip: Firefox has hundreds of themes and thousands of add-ons available for free download at https://addons.mozilla.org.

Website: www.mozilla.com

Reason 9: Pan

Pan is a Usenet reader for Gnome. Usenet is a distributed discussion system that has been in use since 1980. Usenet is a raw discussion forum which has largely been displaced by web based forum communities. Although somewhat antiquated, Usenet is still widely used today.

Pan usenet news reader

Did you know? Most major operating systems and software packages have dedicated news groups.

Website: http://pan.rebelbase.com

Reason 10: Dia

Dia is a simple application for creating diagrams with features similar to Microsoft Visio. Dia can be used to make network diagrams, circuit diagrams, and flowcharts.

Example Network Layout drawing using Dia


Tip: Additional shape objects for Dia are available for free download at http://dia-installer.de/shapes.html

Website: http://projects.gnome.org/dia/

Reason 11: Themes

Another great feature of the Linux desktop is its highly customizable theme system. In addition to a nice selection of built in themes, each desktop environment has a community of theme builders who create downloadable custom themes.

Gnome theme preferences applet

Tip: For additional themes visit these websites:

Gnome Themes: www.gnome-look.org
KDE Themes: www.kde-look.org
Xfce Themes: www.xfce-look.org

Reason 12: Compiz Desktop Effects

Compiz visual effects for Linux desktop were born in early 2006 as an open source software project from Novell, Inc. Since then it has rapidly matured and is now included in most Linux desktop distributions.

Compiz rotating cube desktop effect

There are two main technologies behind visual effects in Linux desktop: Accelerated Indirect GLX (AIGLX) and Compiz. AIGLX and Compiz together create several striking effects for Linux desktops such as translucent windows and 3d desktop rotation.

Website: www.compiz-fusion.org

Reason 13: Screenlets

Screenlets are desktop widgets designed to provide simple access to information and desktop utilities. Screenlets are digital replacements for many items commonly found on a desk like clocks, notes, and calculators. There are also informational screenlets for things like news, weather, sports, and stocks.

Assortment of Screenlets running on the Gnome desktop

Note: Screenlets work best on Gnome. KDE has its own built-in widget architecture called Plasma. See http://plasma.kde.org for more information.

Website: www.screenlets.org

Reason 14: Screensavers

Linux has a large collection of community developed screensavers. Some like Busy Spheres demonstrate stunning visual effects while others like Flying Toasters show the more humorous side of Linux.

Gnome Screensaver applet


Tip: Can't decide on just one screen saver? Select the random option to have the screensaver tool alternate through the entire list of screensavers.

Reason 15: Workspaces

Workspaces create virtual desktops for running applications. They are an invaluable tool for the multitasker. These workplaces can be used to organize running applications.

Workspace switcher configured for 3 desktops

There are several methods for placing programs on different workspaces. The first method is to simply navigate to the desired workspace and open the program. The second method is to right click on the applications title bar and use the “Move to Another Workspace”. Lastly, programs can be moved via drag and drop to the desired workspace.

Example layout of 3 workspaces

Tip: Ctrl + Atl + Left/Right arrow is a shortcut to cycle through the workspaces. A screen overlay (pictured below) will highlight your location in the virtual desktops.

Workspaces navigation indicator

Reason 16: Do

Do is an application launcher for the Gnome desktop. Do works great for those who enjoy keyboard navigation as well as those who prefer to navigate with a mouse.

Do application launcher

Do also has a dock interface called “Docky” (pictured below) which combines the powerful features of Do with that of a desktop dock applet.

Docky interface for Do

Website: http://do.davebsd.com

Reason 17: Search

The Gnome Search tool provides basic file search functions. It also has several advanced search options unavailable on other operating systems like regular expression matching.

Gnome Search running on Ubuntu

For a more superior search experience you can install Beagle...

Beagle (pictured below) is an enhanced desktop search engine for Linux that is similar to Windows Desktop Search or Spotlight for Mac OS X. Beagle searches all aspects of your computer and creates an index to help you find what you are looking for. Because it uses an index, search results are presented much faster than using a traditional search program like Gnome Search.

Beagle desktop search

Note: Version 4 of the KDE desktop (released in January 2008) has its own built-in desktop search engine called Strigi. For more information about Strigi visit http://strigi.sourceforge.net.

Reason 18: Document Viewer

Gnome’s Document viewer (also known as Evince) is a lightweight alternative to Adobe’s Acrobat PDF viewer. It supports TIFF images in addition to PDF and post script files and is able to read encrypted PDF documents. It also has a great search tool to help you quickly find what you are looking for in large documents.

Evince reading an editable PDF file


Did you know? When you close a multipage document Evince bookmarks your progress and will return to that exact page the next time you open the document.

Website: http://live.gnome.org/Evince

Reason 19: Transmission

Transmission is a Bitorrent client for Linux. It is designed to be both simple and powerful. Transmission's lightweight design and easy learning curve make it the ideal Bitorrent client for everyday Bitorrent needs.

Transmission downloading several large files

Note: Bitorrent is the fastest way to download your next Linux distribution. Clients for Bitorrent are also available for Windows and Mac OS X in addition to Linux. For more information about Bitorrent visit www.bittorrent.com.

Website: www.transmissionbt.com

Reason 20: Brasero

Brasero is the default CD/DVD burning application for the Gnome desktop. It has a rich feature set similar to commercial programs made by Nero and Roxio. It supports copying and authoring data, audio, video CDs and DVDs. Like all other Gnome applications it is built with simplicity in mind without sacrificing functionally.

Brasero start up screen

Note: K3b is the preferred CD/DVD burning for the KDE environment. For more information about K3B visit http://k3b.plainblack.com.

Website: http://projects.gnome.org/brasero/

Reason 21: K9copy

K9copy is a DVD backup program for Linux. K9copy can decrypt DVDs and rip them to mpeg videos or an ISO file suitable for burning. K9copy can also compress large DVD-9 (dual layer) DVDs so that they fit onto a smaller DVD-5 (single layer) disc.

K9copy DVD backup utility

Note: There are certain legal issues associated with duplicating copyrighted materials. The right to create a backup copy of legally purchased DVDs is considered fair use by many, but is currently under legal scrutiny in the United States court system.

Website: http://k9copy.sourceforge.net

Reason 22: Pidgin

Pidgin is an instant messaging client for Linux. Pidgin's multiprotocol support allows it to simultaneously connect to many popular instant messaging services including Windows Live Messenger, AOL, ICQ, IRC, Yahoo Messenger, and MySpace IM.

Pidgin instant messenger

Website: www.pidgin.im

Reason 23: Ekiga

Ekiga is a VoIP and video conferencing application for Gnome. It has integration with the Evolution mail client for Linux and supports many common phone system functions like call forwarding and transferring.

Ekiga VoIP client

Tip: You can get a free SIP addresses at Ekiga.net. SIP addresses allow SIP compliant applications to make no-cost computer to computer phone calls (via the internet) without having to use a phone line.

Website: www.ekiga.org

Reason 24: Cheese

Cheese is a Gnome application that turns your camera into a photo booth. Photos taken via Cheese can be modified to add special effects. You can also use Cheese to upload your photos to Flickr (a popular online photo community).

Gnome Cheese displaying a webcam

Website: http://projects.gnome.org/cheese/

Reason 25: FileZilla

FileZilla is an open source FTP (file transfer protocol) client for Linux, Windows, and Mac OS X. It is one of the most popular cross platforms applications behind programs like 7-Zip and Firefox. In addition to basic FTP support, FileZilla also supports secure transfers via FTP over SSL and SSH File Transfer Protocol. It has a powerful feature set that makes it a great client for all your FTP needs.

FileZilla FTP client

Did you know? FileZilla has been downloaded over 60-million times and is one of the most popular applications on the open source development website sourceforge.net.

Website: www.filezilla-project.org

Reason 26: GNUCash

GNUCash is an open source accounting program for small businesses. Similar to Intuit Quicken, GNUCash supports all functions related to Business accounting including accounts receivable, accounts payable, check printing, and financial reporting.

GNUCash accounting application

Reason 27: HomeBank

HomeBank is an open source personal finance application. It manages all your personal accounts including checking, savings, and credit cards. HomeBank can help you create an annual budget and generate graphical reports to track your spending.

HomeBank personal finance application

Website: http://homebank.free.fr

Reason 28: Terminal

As you get more familiar using a Linux system you can begin to work in the Linux command line to troubleshoot problems, connect to remote systems, and administer your computer. Even though you can use graphical applications to just about everything on Linux, many enjoy the speed and convenience of working on the command line.

Terminal displaying the output of several commands


Note: Casual users need not concern themselves with the Linux command line because it can be a scary and unforgiving experience. Unlike working in Windows, Mac OS, Gnome, or KDE graphical interfaces, the Linux command line does not prevent you from doing things that might cause irreparable damage to your system. This is especially true if you are using the sudo command or logged into the system as the root user.

Shameless Book Plug

Speaking of the command line (see reason #28) I wanted to take a second to plug my new book:


Introduction to the Command Line is a visual guide that teaches the most important Unix and Linux shell commands in a simple and straight forward manner. Command line programs covered in this book are demonstrated with typical usage to aide in the learning process and help you master the command line quickly and easily.

More information about the book is available at DontFearTheCommandLine.com where you can preview the book and find links to purchase.

Reason 29: Songbird

Songbird is an open source music player for Linux. It supports all popular music file formats including MP3, AAC, OGG, and WMV. Songbird can access a large selection of online radio stations and has a great collection of add-ons for its extension architecture. As of version 1.1 (released March 2009) songbird has an online music store and several other new features that make it one of the best music players for Linux.

Songbird for Linux displaying online radio stations

Website: www.getsongbird.com

Reason 30: VLC Media Player

VLC is a media player for Linux. The best way to describe VLC is the Swiss Army knife of media players. It has built-in support for more multimedia codecs than any other media player on any platform.

VLC media player

Did you know? VLC can be used to convert media files from one format to another.

Website: www.videolan.org

Reason 31: F-Spot

F-Spot is a photo manager for Gnome. Its main functions are photo importing, organization, and enhancement. F-Spot makes it easy to crop, rotate, and resize photos in your library. It can also export your photos to popular online photo hubs like Picasa and Flickr.

F-Spot photo manager

Note: Photos modified in F-Spot are automatically saved as revisions to preserve original images and prevent accidentally overwriting them by mistake.

Website: www.f-spot.org

Reason 32: GIMP

GIMP is a professional photo editing application for Linux. It has many features found in commercial image editing programs like Adobe Photoshop. GIMP natively supports a large number of common and obscure image formats. All of the images in this blogwere edited in GIMP.

GIMP image editor

Tip: Photoshop users may be interested in GIMPshop and GimPhoto. Both are modified versions of GIMP designed to replicate the look and feel of Photoshop. See www.gimphoto.com and www.gimpshop.com for more information.

Website: www.gimp.org

Reason 33: Blender

Blender is an advanced 3D graphics modeling program for Linux. Like many open source programs it has also been ported to Windows and Mac OS X.

Blender editing a 3D image - Credit: www.blenderunderground.com

Did you know? Blender was a closed source application created by a company called NaN Technologies. When NaN went bankrupt the open source community raised over $100,000 so that NaN’s creditors would release the program under the GNU GPL license.

Website: www.blender.org

Reason 34: Kino

Kino is an easy to use digital video editor for gnome. It can import video files from a hard disk or digital camcorder via firewire. Kino can edit imported media and add special effects like transitions and video filters. Videos created in Kino can be export it to mpegs or one of several different supported formats.

Kino Video Editor

Website: www.kinodv.org

Reason 35: Pitivi

Pitivi is another video editor for Linux. Like Kino, Pitivi has an easy to use interface and can import video files from various sources. Pitivi can import an unlimited number of clips making it one of the most robust video editors for Linux.

Pitivi Video Editor

Website: www.pitivi.org

Reason 36: Inkscape

Inkscape is a vector graphics editor with features similar to Adobe Illustrator. It can be used to create and edit SVG images. SVG images are resolution independent graphics that can be scaled without quality loss.

Inkscape displaying a SVG file – Credit: www.openclipart.org

Website: www.inkscape.org

Reason 37: Miro

Miro is an open source internet video program. Its built-in content guide provides easy access to thousands of free online video feeds and video sharing sites. Miro also has a large collection of free high-definition content.

Miro displaying HD internet television on Linux – Credit: www.nycmusicshow.com

Website: www.getmiro.com

Reason 38: Tuxguitar

Tuxguitar is an open source guitar tablature editor and player for Linux. It can open files created in other popular tablature editing programs like Guitar Pro, Power Tab and TablEdit.

TuxGuitar displaying sheet music and guitar tabs

Website: www.tuxguitar.com.ar

Reason 39: Jokosher

Jokosher is an audio editing program for Linux. It can record live audio, import and export common audio format files (like mp3, wav, and ogg), and perform advanced editing functions.

Jokosher audio editor

Note: Jokosher is a modern replacement for Audacity (an older audio editing program for Linux). Audacity is still one of the most popular downloads for Linux and is available for download at http://audacity.sourceforge.net.

Website: www.jokosher.org

Reason 40: Ardour

Ardour is a professional digital audio workstation for Linux. Its core features include recording, editing, mixing, and mastering. Ardour uses an advanced technology called JACK (JACK Audio Connection Kit) to reduce latency when connecting to different sound sources.

Ardour audio workstation

Tip: Ubuntu Studio is a customized version of Ubuntu designed for multimedia production. It includes a preconfigured installation of Ardour and several other media production programs. Ubuntu studio also includes a real-time Linux kernel to reduce latency issues that affect professional media production. Visit www.ubuntustudio.org for more information.

Website: www.ardour.org

Reason 41: MythTV

MythTV is an open source DVR (digital video recorder) for Linux. Using a TV tuner card, it can record television shows for viewing at a later time. MythTV has all the features of a modern DVR including the ability to time-shift (pause, rewind, and fast-forward) live and recorded television shows. It also has an intelligent recording scheduler to prevent scheduling conflicts.

MythTV default screen on Ubuntu

Tip: Mythbuntu (a preconfigured MythTV distribution based on Ubuntu) is the easiest way to get up and running on MythTV. Visit www.mythbuntu.org for more information.

Website: www.mythtv.org

Reason 42: Stellarium

Stellarium is a desktop planetarium program for Linux. It uses a star catalog to render the sky as you would see it at from location on Earth. Stellarium can also render the sky as it is seen on several different planets thought the solar system. In addition to tracking millions of stars, it can also render constellations, nebulae, planets and their moons.

Stellarium desktop planetarium


Website: www.stellarium.org

Reason 43: Celestia

Celestia is another popular desktop planetarium program for Linux. Celestia allows you to navigate to objects throughout the solar system and to distant stars. All objects are displayed with stunning 3D visualization.

Celestia displaying a 3D rendering of Saturn

Website: http://celestia.sourceforge.net

Reason 44: KAlgebra

KAlgebra is an advanced graphing calculator for Linux. It can be used to render 2D and 3D algebraic equations. KAlgebra is an excellent tool for students and teachers to aide in visualizing algebraic equations.

KAlgebra displaying 2D and 3D graphs


Website: http://edu.kde.org/kalgebra/

Reason 45: Kbruch

Kbruch is a KDE program used to help students learn how to calculate fractions. Students and teachers can configure exercise drills to learn addition/subtraction and multiplication/division of fractions.

Kbruch displaying a typical fraction exercise


Website: http://edu.kde.org/kbruch/

Reason 46: Kalzium

Kalzium is a periodic table elements program for KDE. It provides a detailed overview for each element on the periodic table including the element’s history, spectrum visualization, and atom model.

Kalzium periodic table of elements

Note: Kalzium is a KDE program but it runs great on Gnome. gElemental is an alternative Gnome based application that provides similar functionally to Kalzium. For more information visit the gElemental website at www.kdau.com/projects/gelemental/.

gElemental running on Gnome

Website: http://edu.kde.org/kalzium/

Reason 47: Gnome Chemistry Utils

Gnome Chemistry Utils is a collection of chemistry programs for Linux. It includes a 2D chemical editor, 3D molecule viewer, crystal structure viewer/editor, spectrum viewer, chemical calculator, and periodic table of elements.

Example of gchempaint

Website: http://freshmeat.net/projects/gchemutils

Reason 48: Ktouch

Ktouch is a Linux typing tutor for Linux. Ktouch teaches the basics of proper keyboard and 10-key usage. It has adjustable exercises and monitors statistics such as typing speed and accuracy.

Ktouch displaying the results of a sample exercise

Website: http://edu.kde.org/ktouch/

Reason 49: Gnometris

Gnometris is a clone of the classic game of Tetris. It is a part of the GnomeGames package which also includes a several other simple and fun games for the Gnome desktop such as sudoku and chess.

Gnometris running on Ubuntu Linux


Note: KDE also has a great collection of games for the K desktop environment. For more information about KDE games see http://games.kde.org/.

Website: http://live.gnome.org/GnomeGames/

Reason 50: Secret Maryo Chronicles

Secret Maryo Chronicles is a 2D scrolling game inspired by the classic Super Mario series for Nintendo. It will keep you entertained for hours with tons of challenging levels, enemies, and obstacles.

Level 1 of Secret Maryo Chronicles

Website: www.secretmaryo.org

Reason 51: Torcs

Torcs is a 3D racing game for Linux. It features dozens of cars, tracks, and opponents. Torcs can also be customized and has a large number of additional vehicles and tracks developed by the Torcs community.

Torcs open source racing game for Linux

Website: http://torcs.sourceforge.net/

Reason 52: Sauerbraten

Sauerbraten (also known as Cube 2) is a 3D first person shooter game for Linux. It is the second iteration of the Cube game and supports both single player and multiplayer game-play. With stunning graphics and tons of weapons Sauerbraten will satisfy all your fragging desires.

Sauerbraten a first person three dimensional action game

Website: www.sauerbraten.org

Reason 53: Tremulous

Tremulous is a game that combines elements of a first person shooter with a real-time strategy game. In Tremulous, humans and aliens battle against each other while trying to build a base. Tremulous supports online play allowing gamers around the globe to play against each other.

Tremulous a combination strategy/action game

Website: www.tremulous.net

Reason 54: Alien Arena

Alien Arena is another fist person shooter game for Linux. It has 60 maps and supports online multiplayer game play. There are several different game modes for Alien Arena including a standard death match, team death match, and capture the flag to name a few.

Alien Arena a networked action game

Website: http://icculus.org/alienarena/rpa/

Reason 55: Chromium B.S.U

Chromium B.S.U. is a top-scrolling flight and shooting game for Linux. It is similar to the popular retro arcade game 1949. Chromium B.S.U. has multiple weapons and other power-ups for hours of fun.

Chromium B.S.U. for Linux

Website: www.reptilelabour.com/software/chromium/

Reason 56: Flightgear

Flightgear is an open source flying simulator for Linux. Additional aircraft, airports, and scenery can be downloaded from the Flightgear website. Many of the aircraft and airports in Flightgear are designed to look exactly as they are in real life.

Flightgear flight simulator

Website:
www.flightgear.org

Reason 57: Super Tux Kart

Super Tux Kart is a 3D racing game for Linux. It is similar to Mario Kart for Nintendo and features a number of fun tracks and racing characters. Super Tux Kart can be played in single player or multiplayer mode

Super Tux Kart

Website: http://supertuxkart.sourceforge.net

Reason 58: Encryption

Many Linux distributions now include support for encrypted file systems. The most popular ones (Fedora and Ubuntu) allow simple creation of encrypted file systems during installation. By using a pass phrase, file system encryption will secure the contents of the disk drive making it unreadable to would be thieves.

Encryption dialogue in Fedora 11

Warning: File system encryption can affect the performance of your computer. Additionally, lost pass phrases cannot be recovered and will make it impossible to recover any data on an encrypted disk.

Reason 59: Firestarter

Firestarter is a simplified front end front end for the Netfilter firewall program. It allows easy creation of firewall rules and also provides real-time monitoring of network connections.

Firestarter firewall for Linux

Website: www.fs-security.com

Reason 60: Wireshark

Wireshark (formerly Ethereal) is a network packet capture program for Linux. It captures raw traffic on a network interface and performs complex analysis. Wireshark is great for troubleshooting network problems, monitoring network performance, and securing network traffic.

Example traffic capture in Wireshark

Website: www.wireshark.org

Reason 61: Nmap

Nmap is a port scanner for Linux. It is commonly used to map hosts on a network and scan their open ports. Nmap can also perform "finger printing" on scanned systems which can be used to identify what program version and operating system a remote system is running.

Example output from a nmap scan

Tip: Zenmap is a graphical front end for the nmap command line program. It simplifies the use of nmap's complex scanning features.

Zenmap frontend for nmap

Website: www.nmap.org

Reason 62: Secure Deletion Toolkit

The Secure Deletion Toolkit uses advanced algorithms to securely remove data from computer storage devices like memory and hard drives. It features several tools including:

srm - Secure file deletion utility
sfill - Secure free space scrubbing utility
smem - Secure memory scrubber
sswap - Secure swap space scrubber

Example output of the srm command

Warning: Using these commands incorrectly can cause severe damage to your computer. Use with caution to avoid losing important data.

Reason 63: Apache

Apache is a web server for Linux. It has a large number of configurable features and works well with popular web programming technologies like Perl and PHP.

Apache hosting a webpage and the associated log file on the server

Did you know? Apache is one of the most popular servers serving nearly 50% of all websites on the internet.

Website: www.apache.org

Reason 64: Nginx

Nginx (pronounced: "engine x") is a lightweight alternative to the Apache web server. It has been steadily growing in popularity since its initial release in 2005 because of its ability to easily host high traffic websites.

Nginx hosting a webpage and the associated log file on the server

Did you know? Many popular websites like wordpress.com and hulu.com run on Nginx.

Website: www.nginx.net

Reason 65: PHP

PHP is a scripting language used for creating dynamic web pages. It is one of the most popular web scripting languages and is used by millions of websites worldwide. PHP has largely displaced older web programming languages like Perl for dynamic website development.

Sample PHP script running on Linux and Apache

Did you know? PHP powers some of the most popular websites on the internet like Wikipedia.com, Facebook.com, and Youtube.com.

Website: www.php.net

Reason 66: Webmin

Webmin is a popular web interface used to administer Linux systems. Using Webmin you can connect to a Linux system via a web browser and remotely administer the system without having to use the command line.

Webmin configuration screen

Tip: You can try Webmin online for free by visiting www.webmin.com/demo.html and logging into one of the demo servers.

Website: www.webmin.com

Reason 67: Netfilter

Netfilter is the Linux packet filtering technology. It provides popular iptables firewall building program. Netfilter/iptables supports advanced inbound and outbound packet filtering and NAT (network address translation).

Webmin displaying configurable options for Netfilter

Note: Netfilter/iptables is a complex command line program that is primarily used by systems administrators and network engineers. Most users will use a simplified front end for iptables like Firestarter.

Website: www.netfilter.org

Reason 68: BIND

BIND (short for Berkeley Internet Name Domain) is the oldest and most popular DNS server on the internet. BIND has its history in Unix going back to 1980's. It is included on all popular Unix variants like Linux, BSD, and Solaris to name a few. It is highly configurable and the most complete implementation of DNS available.

Webmin displaying BIND server configuration

Website: www.isc.org

Reason 69: Postfix

Postfix is an email server for Unix and Linux systems. It was created as a simple and more secure alternative to more complex Sendmail mail transfer agent (MTA). Postfix is the default MTA for many Linux distributions because of its simplicity and features.

Webmin displaying Postfix server configuration

Website: www.postfix.org

Reason 70: Spamassassin

Spamassassin is a junk email filtering program for Linux. It can be combined with an MTA like Postfix to greatly reduce the amount of unwanted SPAM email. Spamassassin regularly releases adjusted "rules" to keep up with the ever evolving spamming tactics.

Webmin displaying Spamassassin server configuration

Website: http://spamassassin.apache.org

Reason 71: VSFTPd

Very Secure FTP Daemon (abbreviated as vsftpd) is a FTP server for Linux. It is designed to be simple and very secure and has a long list of features. Because of its simplicity and strong security vsftpd is the default FTP server for many Linux distributions.

Webmin displaying configurable options for VSFTPd

Website: http://vsftpd.beasts.org

Reason 72: RoundCube

RoundCube is a web based email client for IMAP mail servers. It is written in PHP and uses Ajax programming technologies to provide a rich user experience.

RoundCube webmail

Website: www.roundcube.net

Reason 73: Open Source Databases

There are a number of free and open source database systems for Linux. Two of the most popular open source databases are MySQL and PostgreSQL. These database systems combined with an Apache web server and the PHP programming language power some of the most widely used websites on the internet.

MySQL administration console on Linux

Did you know? Commercial support is available for both of these products despite being free and open source. Many companies have built a business model around selling implementation and support services for free software like MySQL and PostgreSQL.

PostgreSQL Website: www.postgresql.org
MySQL Website: www.mysql.com

Reason 74: Samba

Samba is Linux's implementation of Microsoft file sharing program. It allows Linux and Windows clients and servers to easily share and transfer files in a seamless manner. Samba can also emulate a Microsoft Active Directory server and be used as a free (and more secure) alternative to Windows Server products.

Linux browsing a Windows network with Samba

Website: www.samba.org

Reason 75: Cacti

Cacti is a web based tool for monitoring devices on a network. It can monitor a large number of hosts via ICMP and SNMP protocols and logs the information into a database for creating graphs and reports.

Cacti displaying a sample graph

Tip: Installing and configuring Cacti can be a daunting process. CactiEZ is a customized Linux distribution that simplifies the process of setting up a Cacti server. It is the fastest way to get up and running with Cacti. See http://cactiez.cactiusers.org for more information or to download CactiEZ.

Website: www.cacti.net

Reason 76: Asterisk

Asterisk is an open source VoIP (Voice over IP) phone system for Linux. It is a versatile telephony system that has all the features of commercial VoIP products including voicemail, voice menu prompts, and conference calling.

Asterisk GUI – Source: www.asterisknow.org

Tip: AsteriskNOW is a customized Linux distribution that simplifies the process of setting up an Asterisk phone system. Visit www.asterisknow.org for more information.

Website: www.asterisk.org

Reason 77: Virtualization

Linux is the perfect platform for hosting virtualization technologies. Its robust internals and small footprint create the ideal environment to take advantage of virtualization. Additionally, since Linux is free there are no license costs to incur when running it in a virtualized environment. Performance, security, reliability, and cost are the main reasons why many choose to run multiplatform virtualization software on Linux over Windows.

VirtualBox OSE running Windows on top of Linux

There are popular several virtualization programs for Linux including:

VMWare - A commercial virtualization product offering from VMWare Inc.

Xen - An open source virtualization framework for Linux.

VirtualBox - An open source virtualization project maintained by Sun Microsystems.

Reason 78: Installation

Installation of Linux used to be a painful process that required “geek skills” that your average computer owner simply doesn’t possess. That has changed over the last few years as many Linux distributors have worked to make Linux more desktop friendly. Distributions like Ubuntu, Fedora, and CentOS now have excellent installers that greatly simplify the process of installing Linux.

Ubuntu 9.04 installer

Did you know? Linux works well in “dual-boot” environments. This allows you to install both Windows and Linux on the same computer. During installation you can resize the partition of a Windows drive and install Linux in the unused space. A boot loader will allow you to select which operating system you want load when you power on your computer.

Reason 79: Live CDs

Many Linux distributions now offer live CDs. A live CD is a specialized disk that will allow you to boot your computer and run Linux directly from the CD drive. One of the biggest benefits to the live CD is that is allows you to test drive Linux on your computer without having to install it. Live CDs can also run utilities for specialized tasks like removing viruses from a Windows system or recovering data from a failed hard disk.

Ubuntu 9.04 live CD

Note: There isn’t much that the Ubuntu live CD can’t do but there are alternatives. See www.livecdlist.com for a complete list of live CD distributions.

Website: www.livecdlist.com

Reason 80: Update Manager

Security updates and bug fixes come swiftly in the Linux world. Major flaws are often fixed in a matter of hours after discovery. Once these fixes are tested and approved they get pushed to end users for installation. The Update Manager simplifies the process of updating Linux systems.

Update Manager on Ubuntu Linux

Did you know? Most minor updates for Linux software do not require a reboot to take effect. Only updates to the Linux kernel and boot services require a reboot after installation.

Reason 81: Synaptic

Synaptic is a graphical front end for the Debian Advanced Package Tool (APT). It is used to install, update, and remove software. Synaptic searches various software repositories for applications and provides general information about software packages. Synaptic and APT simplify package installation with features such as automatic downloads and dependency resolution.

Synaptic package manager

Note: Synaptic and APT are generally used to manage Debian based Linux distributions (like Ubuntu) running Gnome or Xfce.

Reason 82: Hardinfo

The System Information applet (also known as hardinfo) is a utility to display information about your computer’s hardware. All recognized hardware is categorized and presented in a clear and easy to understand manner. Selecting a device from the tree menu will show a detailed overview of that hardware component.

System Information applet displaying hardware details

Website: www.hardinfo.org

Reason 83: Gnome Partition Editor

The Gnome Partition Editor (also known as GParted) is a partition manager for Linux. It has similar features to commercial partitioning software like Symantec’s PartitionMagic with the added benefit of native support for a greater array of file systems. Gparted can perform complex partition management operations such as creation, resizing, moving, and copying on Windows, Linux, and Macintosh systems.

GParted displaying the partition table of a dual boot system

Did you know? Many live CD distributions of Linux include the Gparted utility. This provides the ability to run Gparted on systems that don’t already have Linux installed.

Website: http://gparted.sourceforge.net

Reason 84: Disk Usage Analyzer

Disk Usage Analyzer (also known as Baobab) is a tool that displays a graphical representation of file system usage. The Disk Usage Analyzer is a handy tool for analyzing disk usage on both local and remote file systems.

Gnome Disk Usage Analyzer

TIP: Did you know that you can use the Disk Usage Analyzer to remotely scan Windows network shares? To do this click on the on the "Scan Remote Folder". Then select "Windows share" from the drop down menu (pictured right) and enter the server, folder, and authentication information.

Disk Usage Analyzer connection dialogue

Reason 85: Terminal Server Client

Terminal Server Client (also known as tsclient) is a graphical front end for rdesktop (a RDP client for Linux). The Terminal Server Client makes it easy to remotely connect and manage Microsoft Windows systems via the RDP protocol.

Terminal Server Client connected to a Windows server

Did you know? The rdesktop development team successfully reverse engineered the RDP protocol to create a client for Linux. Since RDP isn’t an open specification Microsoft does publicly provide documentation for the protocol.

Website: www.sourceforge.net/projects/tsclient

Reason 86: Screenshot Utility

The screen shot tool is a handy application for capturing images on a screen and saving them to an image file. All of the images in this blog were captured with using screenshot utility.

Gnome screenshot utility

Tip: Did you know that you can take a screen shot by pressing the Print Screen key on your keyboard? Additionally, pressing Alt + Print Screen you can crop the screenshot to the current active window.

Reason 87: Wavemon

Wavemon is a command line utility for monitoring 802.11 (wireless) networks. It provides detailed wireless signal information to assist in monitoring and troubleshooting wireless networks.

Wavemon wireless monitor

Tip: Wavemon also has a histogram (pictured below) that can be used to graph a wireless signal over an extended period.

Wavemon histogram

Website: http://eden-feed.erg.abdn.ac.uk/wavemon/

Reason 88: System Monitor

The Gnome System Monitor is a performance monitoring application for Gnome. A similar program exists for KDE. The System Monitor displays computer resource information such as CPU utilization, disk usage, memory usage, and network bandwidth.

Gnome System Monitor


Tip: For those who enjoy working in the command line, Linux has a text based utility called top which provides similar information that is shown in the graphic utility above. To lunch the top utility open a terminal and type the command “top” at the command prompt.

Terminal displaying the top utility

Reason 89: Community

One of the greatest assets to Linux is its strong development and user community. Developers and end users work together in many ways to improve open source software and help promote adoption.

A good example of Linux community is Ubuntu Brainstorm. The Ubuntu community uses the Brainstorm website to propose and vote on enhancements to the distribution. Ubuntu Brainstorm is just one of the many ways Linux users work together to support the open source movement.

Ubuntu Brainstorm community website

Did you know? When a distribution like Ubuntu implements a new feature or enhancement it is often adopted by upstream projects and other Linux distributions. The open nature of Linux development allows open source software projects to benefit from each other’s work while incrementally improving Linux as a whole.

Website: http://brainstorm.ubuntu.com

Reason 90: Forums

Linux forms are a great resource for end users to help each other with technical issues. Most popular Linux distributions maintain a forums website. Communities of volunteers staff the forums to assist users in need of general information, advice, and technical support.

Ubuntu forums website


Note: See Popular Linux Distributions for a list of popular Linux distributions along with links to their support forums, download location, and other helpful information.

Reason 91: Value

Linux is given away freely. Although some distributors license custom software that runs on top of Linux, the core operating system is and always will be free.

Several studies have been done to try to determine the value of Linux and other open source software. The conclusion (available at www.linuxfoundation.org/publications/estimatinglinux.php) estimates that the Linux kernel alone is worth $1.4 billion USD and a complete Linux distribution is worth over $10 billion.

Reason 92: Rapid Development

Another great feature of Linux is the rapid pace in which open source software is developed and released. Most open source projects release major updates at regular intervals.

The Gnome development team - for example - releases major upgrades approximately every 6 months. These releases are usually celebrated "with lots of ice-cream" according to the Gnome website. This 6 month release schedule allows new technologies to be incorporated more rapidly than Microsoft Windows - which only releases major updates every few years. Also in contrast to Windows, Gnome updates are gradual and much less disruptive to end users.

Reason 93: Scalability

Linux scales like no other operating system. According to www.top500.org, Linux runs on nearly 80% of the world’s top 500 super computers. These super computer clusters can consist of thousands of processors and unbelievable amounts of memory and storage.

Did you know? Linux supercomputers are used for complex research projects such as climate simulation and genome sequencing.

Reason 94: Performance

Linux is a highly tunable operating system. There are configurable parameters for almost every aspect of the Linux kernel. Additionally, hardware tuning options not available in other operating systems are easily accessible in Linux.

Since Linux is a modular operating system, a custom Linux kernel can be complied with a slim set of features to create a high performance server. Custom complied kernels and software can also be optimized to take advantage of hardware specific optimizations. This makes it possible to create a small but fully featured Linux installation that is only a few hundred megabytes in size.

Dell mini Linux Netbook – Image courtesy of Dell, Inc.

All of these features together make Linux the operating system of choice for high performance servers. But servers aren't the only systems that benefit from Linux performance. The emergence of netbooks (mini laptops) has created a new market for Linux growth. Netbooks limited hardware resources require a lightweight operating system and work great with Linux.

Reason 95: Old Hardware

Linux runs much better on old hardware compared to other operating system. An Xfce based distribution can easily run on computers that are 5+ years old. 5 human years is equal to about 50 computer years. Most computers of that era don’t meet the minimum hardware requirements to run Windows Vista and usually won’t even run Windows XP that well. Despite being so old, a 5+ year old computer can use modern internet and multimedia applications when running Linux.

Damn Small Linux running a 10 year old computer

Tip: Damn Small Linux is an even more optimized version of Linux for those who have old computers or prefer extremely small installations. A default installation of Damn Small Linux is less than 100 megabytes. Visit www.damnsmalllinux.org for more information.

Reason 96: No Need To Defragment

While all file systems are susceptible to fragmentation, Linux file systems do not need to be regularly defragmented like Windows file systems do. This is because Linux disk allocation logic is much more efficient than Windows file systems. Linux file systems like ext3 and ext4 use advanced block allocation which helps prevent fragmentation from ever occurring. The result is better performance throughout the life of your disk drive without the hassle of regular maintenance.

Windows XP Disk Defragmenter

Reason 97: No Registry

If you’ve ever had to reach elbow deep into the Windows Registry to fix a problem or change a trivial application setting you can understand why most people fear the registry. The Windows registry was developed to eliminate the need for application specific INI files to store program settings. Unfortunately, Microsoft failed to make the registry do anything better than what those INI files could do and also introduced additional complexity and inefficiently in the process.

Microsoft Windows Registry Editor

Linux utilizes flat configuration files (similar to INI files) to eliminate the need for a massive database like the Windows registry. These files can be easily modified with a standard text editor. Additionally, Linux configuration files are generally placed in easy to find locations such as /etc for global configuration files and /home for individual user settings.

Reason 98: No Product Keys, Activation, or Other Hassles

Upon installing Windows - or making a significant hardware change - users are required to enter a cryptic product key to verify their system hasn’t been installed using a pirated copy of Microsoft Windows. In the event that your system is suspected to be counterfeit Windows will cripple a users system and require them to call a toll free number to prove they are not using a pirated copy of Windows.

Typical product activation dialogue in Microsoft Windows

Since Linux is free software, most distributions do not require any sort of product activation. The exception to this rule is enterprise distributions which bundle licensed services on top of the free operating system and require registration to activate proprietary services.

Reason 99: No User Account Control

In the Unix and Linux world, applications are developed using the principle of least privilege. This means that all programs launched by a user start with a minimal amount of access to the system. Windows on the other hand tends to give programs full administrative access which can lead to system stability and security issues.

Typical UAC dialogue in Microsoft Windows

To solve this major flaw in Windows, Microsoft created feature called User Account Control. User Account Control warns users when a program is about to request elevated privileges. Unfortunately, this does very little to increase security and only serves to annoy and frustrate users. Microsoft’s User Account Control is essentially a bandage for the entire Windows security model and is unnecessary for Linux systems.

Reason 100: No Viruses or Malware

One of the biggest problems facing Microsoft’s Windows operating system is its high susceptibility to viruses and malware. Many of the core features in Windows are highly exploitable by malicious programs. Poor security design combined with the homogenized Windows environment makes it the perfect target for wide scale exploitation.

Typical message displayed by Windows malware

Linux is considered to be more secure than Windows for several reasons:

1. Linux systems are built from the ground up with security in mind. Security has always been an afterthought in Windows development.
2. Linux doesn’t use easily exploitable technologies like Microsoft’s RPC (Remote Procedure Call) or Active X that make Windows an easy target for malware.
3. Linux security updates are released faster than Windows which creates a smaller window for exploitation compared to the Microsoft model which often allows several weeks of vulnerability before patches are released.
4. Linux has a modular design in which unutilized features can easily be removed providing one less avenue for exploitation. Many unnecessary services in Windows cannot be removed or disabled even if they are not being actively used.
5. There are literally thousands of exploits for Windows compared to only a handful for Linux.

Five Things To Hate About Linux

1.Poor support for modern audio and video codecs
Many legal aspects prevent Linux from easily supporting common audio and video formats such as DVDs, Blu-ray, and MP3s. Distributions like Ubuntu have created solutions for this problem – but they tiptoe around a number of legal issues in doing so.

2.Lack of video game software
Popular game tiles like The Sims, World of Warcraft, and Halo don't run on Linux. Although some of these popular games can be hacked to run Linux they are natively supported. This can lead to technical issues and frustration for Linux users. Even though there are a number of great open source games for Linux, the lack of commercial games is a major roadblock to Linux adoption.

3.Poor commercial support
Most commercial desktop and business applications are designed to run solely on Microsoft Windows systems. Since the Linux desktop isn’t widely accepted by most companies, end users suffer. Linux can’t watch Netfilx streaming movies - nor can it run Apple’s iTunes to sync with an iPod. Many bank and credit card websites can’t be viewed on Linux. For many this is the main reason why they cannot switch to Linux. This creates a “chicken before the egg” scenario in which companies will not support Linux until it has a greater market share while at the same time end users won’t switch to Linux until companies support it.

4.Incomplete and unstable software
Many open source software projects start out very rough around the edges and often take years to become stable and feature rich. Some programs are often labeled as “beta” for years at a time even thought they are publically available and widely used.

5.Too many choices
While choices are always good, too many choices is a problem for Linux. Companies that develop commercial software have to choose which Linux distributions, desktop environments, and package management architectures to support. This adds an additional road block to more widespread Linux adoption.

Popular Linux Distributions

Ubuntu
Ubuntu (African for “humanity to others”) is a popular distribution based on Debian. Ubuntu emerged in 2004 and has taken the Linux community by storm. Ubuntu is the most common Linux distribution used on desktop and laptop computers because of its rich features and ease of use.

Ubuntu Website Links
Homepage: www.ubuntu.com
Download: www.ubuntu.com/getubuntu/download
Support Forums: www.ubuntuforums.org
Documentation: help.ubuntu.com

Debian
Debian is a solid Linux distribution that has become the foundation which Ubuntu and several other popular distributions are built upon. It is one of the oldest non-commercial Linux distributions and is a popular server distribution because it of stable release policy and long-term availability of security updates.

Debian Website Links
Homepage: www.debian.org
Download: www.debian.org/distrib/ftplist
Support Forums: forums.debian.net
Documentation: www.debian.org/doc/

Red Hat Enterprise Linux
Red Hat Enterprise Linux is a popular server distribution because of its commercial support from major software vendors. Red Hat Enterprise Linux is not available for free download as it is a licensed product. Several alternatives based on Red Hat exist (such as Fedora and CentOS).

Red Hat Website Links
Homepage: www.redhat.com
Download: Free download not available.
Support Forums: Not available.
Documentation: www.redhat.com/docs/

CentOS
CentOS is a free alternative to RHEL (Red Hat Enterprise Linux). It is based on the RHEL sources and maintains 100% binary compatibility with RHEL.

CentOS Website Links
Homepage: www.centos.org
Download: www.centos.org/modules/tinycontent/
Support Forums: www.centos.org/modules/newbb/
Documentation: www.centos.org/docs/

Fedora
Fedora is a community based Linux project founded by Red Hat. Fedora is a test bed for bleeding edge Linux technologies. New technologies are added to the Fedora distribution are tested by the Fedora community. After the features stabilize they are rolled into the next release of Red Hat Enterprise Linux.

Fedora Website Links
Homepage: www.fedoraproject.org
Download: www.fedoraproject.org/get-fedora.html
Support Forums: forums.fedoraforum.org
Documentation: docs.fedoraproject.org

Mandriva
Formerly known as Mandrake Linux, Mandriva has its roots in Red Hat Linux. Mandriva was created in 1998 as a user friendly alternative to the (at the time) more complicated Red Hat Linux distribution.

Mandriva Website Links
Homepage: www.mandriva.com
Download: www.mandriva.com/en/download
Support Forums: forum.mandriva.com
Documentation" club.mandriva.com

openSuse
openSuse is another popular Linux distribution that is sponsored by Novell, Inc. The community developed openSuse distribution is freely available while SUSE Linux Enterprise (its commercial offspring) is not.

openSuse Website Links
Homepage: www.opensuse.org
Download: software.opensuse.org
Support Forums" forums.opensuse.org
Documentation" en.opensuse.org/Documentation

Slackware
Slackware is the oldest Linux distribution still in development today. Because of its complexity, Slackware is not the most popular Linux distribution but it does have a small active community.

Slackware Website Links
Homepage: www.slackware.com
Download: www.slackware.com/getslack/
Support Forums: www.slackwarehelp.org
Documentation: www.slackbasics.org

Gentoo
Gentoo is a popular source based Linux distribution that allows its users to customize and compile their Gentoo Linux system from the ground up. Gentoo is a complex distribution geared towards Linux professionals and is not recommend for beginners.

Gentoo Website Links
Homepage: www.gentoo.org
Download: www.gentoo.org/main/en/mirrors2.xml
Support Forums: forums.gentoo.org
Documentation: www.gentoo.org/doc/en/index.xml

Hundreds of variants have been created from these “top level” distributions. Many distributions are created to fill a niche such as Mythbuntu (a preconfigured Linux digital video recorder). More information about niche Linux distributions can be found on the Distro Watch website at www.distrowatch.com.

Sunday, August 2, 2009

Shameless Book Plug

Visit DontFearTheCommandLine.com to preview and buy.
Thanks!