This Article is going to examine some of the reasons for using Linux, however People have many different reasons for doing
so, so it should not be considered an exhaustive list. This Article will not be directly comparing Linux to other Operating
Systems however, as people have different needs from their systems. I personally do not use Windows at all anymore, but thats
my choice to make, in the same way it is your choice which OS you use.
As with any system migration, the change to Linux requires some serious thought, whether you are at home or in the office. The
first thing you need to do is look at the benefits of Linux, and evaluate whether they meet your needs. To help you along the
way, below is a list of some of the reasons people change to Linux
Stability
Security
Configurability
Freedom - liking the open source ethos
It's cool
Now lets evaluate each point individually.
Stability
Linux is by far one of the more stable Operating Systems. All software has bugs, it is an inevitable side of programming,
and the larger and more complex the software the more likely it is to have bugs. However in my experience, if a buggy piece of
user-land software crashes, it never locks up the Operating system. (User-land software is software that is run by the user, in
other words it is not software that is run by the system, but is called by the user. A word processor is a good example of
software that runs in user-land, wherehas Cron is a job called by the system.)
Because of this the resulting system is far more stable, and in fact Linux systems can be left running without a reboot for
months or years at a time. This is especially useful on systems that run servers (i.e. Web, Samba, FTP etc) but also applies to
the desktop. Although Desktop systems are not likely to be needed to run for vast amounts of time, this ability reflects well
upon the stability of Linux. In the 7 years that I have been using Linux I have only ever seen 2 Kernel panics (the Linux
equivalent of the Blue Screen of Death) and both of those were due to changes I made, that perhaps I should have thought more
about. Both errors were easily recoverable, despite the deep level at which the changes were made. This goes to show how easy
errors can be to recover on the rare occassion that they do occur. That experience has taught me one main thing, if you are going
to fiddle at Kernel level, then make sure you have a 'failsafe' kernel installed.
Security
As any System Admin will tell you, the only 100% secure system is one which is unplugged and locked in a heavily guarded
vault
deep below the ground. If you are connected to the Internet, there is always a possible security risk, though it can be made
smaller. Linux comes with a built in firewall called IPTables, in its pure form it can be quite daunting to configure, however
many Distro's ship with their own tools for configuring your firewall. If your Distro does not come with such a tool, then a
simple tool to use is
KGuarddog. For the more advanced
users there is also
Shorewall. Both of these utilites simply manage
IPTables. Do not mistake of thinking that Linux's built in Firewall is akin to that of Windows XP, the Linux firewall is fully
configurable with zones, rules and packet logging. It is worth mentioning that Kguarddog does have some useful default settings,
though careful configuration is always recommended.
Sadly no Operating System can prevent someone from breaking into your house and stealing your computer, but they can
make it harder for the theif to access your data. Through use of the Fuse module, and several other utilities it is possible to
encrypt your filesystem. This will mean that the thief is less likely to be able to boot from another OS and access your data
that way (thus bypassing your password for log in.) Obviously passwords on user accounts should really be considered a
neccessity, a practice sadly not observed by many. However Linux is all about choice, so if you so wish it can be configured to
automatically log a user in upon boot up.
Many of us have read about the server for N being cracked, and the free (as in beer) software they have available for download
being patched
with Trojans, Viruses and worms. Sensible Linux users do not need to worry about this quite so much, Linux implements
checksumming. Simply put when the author creates the software
(i.e. after he has compiled it) he creates a checksum (most use the
MD5 algorithm), when you download the software, you can also
download a copy of the checksum. When both are downloaded you tell
your system to check the packages integrity against the checksum. If the checksum does not match the system will warn you, and so
you will be aware that the package has either been maliciously altered, or that it has been corrupted during download.
Although Linux is not prone to Malware, there are applications to cover you if and when the onslaught begins.
Clamav is a very popular and powerful CLI based Antivirus scanner. For those not
in love with the Command Line Interface there is also a Graphical Frontend available called
Klamav. The main purpose of Virus scanning on Linux (currently) is to
ensure that there are no Windows viruses hiding on network shares or in your e-mail. They can do no harm to your system, however
they could infect other Windows machines on your network, or if they are hiding on your webserver potentially anyone connected
to the internet.
Configurability
Linux is highly configurable, many routers run it as their firmware. Tivo use Linux in their product (although they have
come in for some stick about some of their
questionable actions.)Nearly every
configuration file on Linux is a text file, so if you wish to configure it by hand, that is more than possible. Of course there
are graphical interfaces that will allow you to configure your system as well, many Distros ship with their own 'control
centres.' There is very little that you cannot make Linux do, with a little bit of knowledge and experience the possibilities are
endless. For example when I come up the stairs I come within Bluetooth range of my computer, it detects my phone, Opens my
emails, plays a random playlist and switches the screen on. This is a relatively trivial task to do, there are many more complex
tasks possible (Such as my dream of building my own 'Smart House'). Another example is that thanks to
Festival and a bit of tweaking, my Server can read out its
current resources at the touch of a button.
Linux is arguably the most configurable Operating System available (although
BSD does run on a toaster) and it is undeniable
that Free (as in speech) Software does allow far more configurability, this is because it does not contain any proprietary code.
This means that if you need to you can alter the source code of the program/module/library you wish to change.
Freedom
You may have noticed that already in this article I have used the word Free in two connotations - Free (as in beer) and Free (as
in speech) - The difference between these two is very important. Free (as in beer) describes something that is given to you for
free, but you cannot modify or redistribute. You cannot modify the way the beer was made, nor can you do so with the software
that this type of free describes. Free (as in beer) describes something that was free financially. Free (as in speech) describes
software that you are free to modify/redistribute. This type of Free is at the very heart of the
GPL. The GPL defines that your software should grant the following
freedoms to both you and others.
To run for any purpose
To study and adapt to your needs
To redistribute, so you can help others
To release improvements, so everyone benefits
These basic freedoms allow you to enjoy the work of likeminded people, and for likeminded people to enjoy the work that you
do. The GPL aims to protect both users and software authors, this is a stark contrast to the licenses used by many commercial
software companies, they can be
very easy to break
accidentally.
Linux is not the only Operating System released under the GPL, there are others although of the ones I am aware of Linux is the
best established (at time of writing). FreeBSD is also well established, however that is released under a different license (also
a free license though.) With Free Software you are guaranteed the rights set out above, and providing you comply to the terms of
the GPL (i.e. Don't try to sell someone else's work) then these rights can never be revoked.
If you are interested in learning a bit more about the GPL then I wrote an article a while back on the subject (sorry about the
colour scheme) "
A word about the GPL"
Its cool!
Admittedly this reasoning is only usually used by the Geeks amongst us, but the fact remains is Linux is very cool. Aside from
the reasons laid out above, it has a great many uses that attract a great many users. As a programming platform it is excellent,
there are a great many utilities available for programming in a great many languages.
Many have seen the screenshots of
Windows Vista with its Aero interface, that is nothing new, Linux has XGL which if configured correctly is far far more
impressive. Linux is behind no-one when it comes to eye-candy development, some would argue that the Mac is the leader in this
area, but in my opinion Linux equals if not surpasses it. Eye candy does not of course make a good system, but it does help make
it more enjoyable to use. For those stunned by the feature set of Windows Vista, take a look at the Linux equivalents which are
for the most part well established, mature projects.
In conclusion, there are a great many reasons to use Linux, I have simply covered a very small sampling. However despite it's
benefits be warned that there is a small learning curve involved in learning to use Linux. I suggest if you intend to try and
learn you may want to read some more of the articles in this series.
Articles:
Articles Also Available
Getting Started with Linux Introduction Part 2 -
Hardware
Getting Started With Linux
Getting Started With Linux - Installing Software