Are there any reasons NOT to run an Ubuntu server?
I'm going to be setting up a network for a small office soon. The network will consist of about 5 workstations (soon to be more) and 2-3 servers (one "real" server and a couple workstations-turned-servers to take some load off the main machine).
I've been asking around to see what server Linux distros people prefer, and it seems like everyone is biased towards using traditional RedHat-like server distros. Every time I mention running an Ubuntu server, everyone says I should run Red Hat instead, but I have yet to hear any reasons not to run Ubuntu servers.
I'm more familiar with using Ubuntu/Debian servers, are there any significant reasons why I should run another server distro that outweigh being familiar with an OS?
There's no real reason not to, so long as you're not using any software that is unsupported on Ubuntu Server.
We run CentOS because it's got binary compatibility with RedHat Enterprise, which a lot of commercial software releases packages for. It makes my life easier, and it's really pretty stable (not that Ubuntu isn't).
If you know Ubuntu, go with Ubuntu.
I should start out by saying that I've been involved in the Debian community since 2002, so this is clearly biased.
We use Ubuntu exclusively on our servers. We use Dapper or Hardy, primarily for the 6 years of security support we get on the base OS. We found that Debian's year of security support for old releases wasn't enough for us to rebuild all our servers. The reliablity of releases is a nice thing to have.
We haven't found a significant difference between running Debian and Ubuntu. I have 8 or 9 years experience with building Debian packages, so I'm comfortable rebuilding Debian packages for Ubuntu in the rare cases where something is in Debian, but not in Ubuntu. In some cases, you might even get away with installing the binary packages directly.
I've always been scared away from RPM based distributions, purely because there's such a divergence between distributions that packages for one will not work on another in most cases. Debian has a comprehensive policy guide, which describes how packages should interact. This is possibly Debian's greatest strengths. Redhat and friends also tend not to have the wide range of packages that Debian does. It's very rare that I find something I want that's not available by apt. Yum is in no way comparable to apt-get.
I would look at using RedHat if any of the following are true:
- You have software that’s only supported on RedHat
- You need to run on architectures Ubuntu doesn’t support, only I can think of off the top of my head is IBM mainframes
- You need 24/7 reliability and the support costs that go along with it. I know you can buy support for Ubuntu server, but if I was willing to pay thousands for support contracts I would go with RedHat due to their established reputation in the server market.
Commercial and closed-source software (like backup agents) traditionally have been most supported on Red Hat (Enterprise).
If you don't have any specific needs to run that kind of software I'd recommend debian or ubuntu to you if you are new to linux.
The real questions are:
- Are the packages you're going to install supported by Canonical?
This has more to do with avoiding breakage than it does with getting tech support. "Official" packages tend to be vetted better and as a result, will not break (as often) when upgrading to a newer release.
- Are you planning on using a LTS version of Ubuntu?
Long Term Support also adds to the "stability" factor as Canonical has a vested interest in making LTS releases as stable as possible.
For instance, I recently tried to install OpenERP client and server, version 5. It turns out that the installer is completely broken and while the package does install, it refuses to start the server. Note that this is on 9.04 and the packages are not "officially supported". So your mileage may vary.
Otherwise, it should be fine to use Ubuntu server.
Of course, if you are looking more for stability and long-term use, have you considered Debian instead of Ubuntu?
If you are just looking for something commercially supported, RedHat may be more to your liking. Use CentOS if you happen to have little money but still want the "RPM compatibility" that it brings when trying to install 3rd party apps.