Why should I use Linux as the operating system for my server?
There are lots of reasons to use Linux for your server. Linux is stable and secure. It evolved from Unix, an operating system that was built from the ground up with security in mind. Linux has the software you need, and it's top quality. Linux has a broad user base of people who are willing to share their knowledge and software with you. As an example, the Apache web server powers more web sites than any other software. It's stable, secure, flexible, infinitely configurable, open source and very well documented. And quite incredibly, it's free! There are a plethora of mail servers of the same high standard. Maybe there are too many, it makes chosing one difficult. Will you use Sendmail, Exim, q-Mail or Postfix? You'll find lots of vendors willing to sell you expensive email virus scanning software, but ClamAV beats them all, and it too is free. With ClamAV you can update your virus signatures a dozen times a day, and viruses are centrally detected at the server well before they reach their intended victim. I know of one implementation where a well know, commercial email virus scanner, installed on Windows computers, hasn't detected a single virus, because ClamAV caught them all before they even made it to the Windows PC. With the help of Howtos and guides on the internet, you'll also be able to configure your mail server to detect and reject spam. Do your network computers need to be assigned IP addresses? A DHCP daemon on a Linux server can do that for you. DNS? Easy. Windows file server? Not a problem with the Samba server suite. Do you need to connect your LAN to the internet? Linux excels at networking, and packet routing capabilities are built into its core. It can be your firewall, gateway and/or router.
But isn't Microsoft Server and it's GUI easier to use?
Microsoft based computers are ubiquitous, we're all familier with them. Linux presents another paradigm, another way of doing things, and that can be a bit daunting. Learning new things can be hard, and you'll curse a few times along the way. But in the end, the Windows GUI is another layer of abstraction that puts you further away from what you want to accomplish. Linux is infinitely more flexible and configurable. You have the ability to configure and connect software in ways that simply isn't possible otherwise. Once you've worked with Linux, you'll wonder why anyone would ever use anything else.
How does Linux differ from Microsoft Windows?
Linux and Windows were built form opposite ends; Linux started with a solid and secure core, Windows started with an easy to use interface. Linux evolved from the Unix operating system, and Unix was a multi-user, networked operating system before MS-DOS was even born. Linux was designed to connect to its peers, the Internet was created on its Unix parents. On the other hand, Windows started life as a loner, designed primarily for a single user, but it did have a pretty face. Microsoft made computers easy for anyone to use. Windows is the operating system that's in everyone's home.
Linux is based on a solid, integrated core, and the command line. Windows is base around an easy to use graphical interface. Windows has come a long way though. It can now communicate with the internet protocols that it borrowed from Unix, and it's now more at home on the network. Linux has moved forward as well. There have been recent attempts to put a pretty face to it and move it to the desktop. Linux was developed from the inside out, starting with a solid, secure, multi-tasking, multi-user core. A pretty face is a more recent addition. Windows started with a pretty face and an easy to use interface, the 'inner beauty' has been slower to come. Both operating systems have their strengths and weaknesses. But Linux, because of its stability, security and flexibility, is the prefered choice for server applications.
What Linux distribution should I use?
Perhaps one of the biggest problems with Linux is that there are too many choices! There are literally dozens of distributions, but they all have more in common than they are different. The question is often put forward as to which one to use. My personal choice is Debian, and the Howtos presented here are based around that. But there are several others that are worthy of mention, and I'll briefly review some of them here. For a more detailed look go to www.distrowatch.com. I'd like to start with some comments about the software requirements for a Linux server. I've mentioned how the trend has been to put a GUI onto Linux. This might be desirable for a desktop computer, but it's something that's not necessary for a server. The traditional method of configuring and running Linux software is via configuration files and the command line. Using a graphical interface might initially be easier, but in the long run it's less flexible and you don't get the same understanding as to what's really going on. And once you get the hang of it, you'll find that it's actually easier, and certainly more powerful, to use the command line and configuration file.
Debian embodies the philosophy of free software and community. It has a very wide user base, and that's important when it comes to getting support. If there's a software package available for Linux, then you'll almost certainly find it in a Debian package in the Debian repositories. Once you have your Debian system up and running, and connected to the internet, downloading and installing software is a breeze. A simple apt-get command will find the package in the repository, download it and its dependencies, and install it for you. Debian can be a bit harder to install than some of the other distros though.
Redhat is a company that has been able to make a commercial success from Linux. They too have a wide user base, and their Redhat Package Manager has become a standard way that many distributions manage and package software. Many commercial enterprises turn to Redhat for their software and support. More recently, Redhat have split their software into two streams. There's the commercial Redhat Enterprise that they provide support for, but it costs money. And there's the Fedora Core that's developed and supported by the open source community. If you need commercial support, then consider Redhat. But that's not what these series of Howtos are about.
Perhaps the best word to describe Slackware is venerable, this is one of the original Linux distributions.
Perhaps one of the biggest problems for new GNU/Linux users is the installation and the intial meeting between you and the software. There are several distributions that might make this challenge easier. Redhat Fedora is one of them. Another distribution to consider in Mandriva, formerly Mandrake. It's very popular, and uses Redhat's package management system. Suse is another one with a pretty face and ease of installation. Ubuntu Linux is based on Debian (as are several others). It might make the transition to Linux easier, and it's particular beauty is that being based on Debian, it has Debians easy method of installing software.
My personal choice, Debian. Or use Ubuntu if you want a gentler introduction to Linux.