Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I give you a basic question. Because I 'm a beginner.

I want to build a server with Web application. I am troubled whether I choose FreeBSD or Linux What is the difference of FreeBSD and Linux?

Please gime me recommended criteria for OS selection.

share|improve this question

closed as not constructive by Chris S Sep 10 '12 at 16:31

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

FreeBSD is decended from the BSD line. It is based on a 100% re-write of AT&T's original. Although it initially had legal issues with AT&T that hampered its expansion, it was eventually cleared (when it was discovered that AT&T had appropriated BSD code, the tables turned). As a result, it is 100% free and clear of any known legal claims against it. It is licensed under the "BSD license", which is very liberal and allows for redistribution for profit.

Linux is a 100% from-scratch System V look-alike. It was started by a Finnish programmer who gathered several other people together. Over time, the "linux kernel" grew in developers and lines-of-code, adding new features along the way. It too has had its share of legal issues, instigated by the SCO Group, who tried to claim ownership of some of the kernel code. To date, no infringing code has been found, and there have been speculative ties between SCO's actions and a large lump sum of money that Microsoft "gave" to them. It was controvercial at the time because Linux uses a GPL Version 2 license, which requires that any programs released to the public must also (a) have the source code readily available, (b) must be available under the same license, and (c) must have a notice attributing the original author.

Both systems are fairly stable. Both have long development histories. Both have active development communities and are not likely to go away anytime soon.

In terms of server network support, the historical consensus is typically on the side of the BSDs, which have been demonstrated to accommodate heavy connections and loads. In terms of ubiquity, Linux is found in the most surprising places, and has a thriving software culture.

To answer your question about web server applications, I would probably favor BSD. The basis of the selection is that BSD's network stack has been demonstrated (historically) to have a slight edge against Linux. For back-end deployment, the flexibility and ubiquity of Linux distributions means that I would have a large array of software available to me. Yes, to those BSD lovers out there, I am aware of the breadth of software available through the BSD ports program.

However, it is far easier to find Linux administrators, a potential factor that affects deployment. If this is a rapidly changing or growing installation, finding BSD talent might lead to a labor issue in your deployment.

So - it depends. :) Are you going to need full-time staffers? Stick with Linux. Are you looking for large site deployment on smaller hardware? BSD might work for you.

share|improve this answer
IMHO it really doesn't matter which you choose. Although there are differences, switching from one *nix variant to another is a minor matter filled more with annoyances than with unsurmountable problems. So, pick one, understand it as completely as you can. There is not a "correct" answer here. – pulcher Jul 15 '09 at 4:32
Very informative. I think in the end of the day you need to choose whichever one you feel most comftorable with and which ever one you think you can support the best. I come from BSD so I am biased towards it, however have supported Fedora and a couple others and find both have there positives. – Lima Jul 15 '09 at 7:57
Although correct i general, there are two factual errors here. First, not only the BSD license allows redistribution for profit, the GPL (and many other F/OSS licenses). What the BSD license allows that the GPL does not is closed source redistribution. Also, to my knowledge (and I couldn't find anything on Wikipedia to say otherwise), the GPL does not require you to any send changes back to the original author. – Mikael Auno Jul 15 '09 at 10:55
@Mikael Auno, noted, fixed. – Avery Payne Jul 15 '09 at 20:48

For a webserver I would choose linux. Distributions like Debian and Ubuntu are supported and security-patched for a really long time. (the ubuntu versions with long time support anyway)

For servers I think this is important. I have a FreeBSD 6.1 server that I can't upgrade, because 6.1 is just gone from all FTP servers and no fixes are made for it. It's not that old, but considered obsolete and I really fear upgrading it. Especially remote upgrades.

On the other hand I have a Debian Linux server that I've been running constantly since 1999, and have kept it updated and patched easily. All remote. Last time I saw it was 5 years ago when I wanted to check if the CPU fan was still working (it wasn't, I changed it).

For servers that will just have to work, debian is easy to keep updated and there is no problem with upgrading from one release to the next, even remote.

The Debian (and Ubuntu) packaging system (apt-get) make it so much better for servers than anything else that it's not even funny.

Debian GNU/kFreeBSD seems nice. I've played with it a bit, but not run it in production.

share|improve this answer
"I really fear upgrading" <-- What a terrible reason leave a system unpatched. Find a competient FreeBSD admin, it's really not that hard and very likely that you wont need to mess with the application software. Also, FreeBSD has extended service releases, use one of them if you want patches long into the future. – Chris S Sep 10 '12 at 16:33

There are lots of "under the hood" differences between the two, and indeed between different Linux versions. Somehow I don't think that's what you're actually asking about.

From the practical point of view of running a web server for me it comes down to just two things: 1) Can you secure it 2) Does it have good package management

I used to run my personal web server as FreeBSD - it's package management was a giant pain the backside compared to something like Debian or CentOS Linux. Personally, I won't use anything that doesn't have a good binary package manager like apt on Debian-based distros or yum on RedHat-based distros like CentOS.

As for security, SELinux is pretty nice to have, and both FreeBSD and Linux have good firewalls, so perhaps there's not much difference there.

Bottom line - I've admined both Linux and FreeBSD web servers, and I had far less trouble and far less work with the Linux ones. They're just easier to look after in my experience.

share|improve this answer
FreeBSD's package system is quite good, you were probably using the Port system, which is something different. Lack of understanding doesn't imply a technical shortcoming. – Chris S Sep 10 '12 at 16:36

The last I checked, Linux does better on multi-core systems. So if your application server has many CPU cores, Linux may be a better choice.

I also think that Java support is a little better on Linux so if you need Sun's or IBM's JRE, that might be a consideration. I believe that the free ones like IceTea work just fine on BSD.

share|improve this answer

FreeBSD and Linux really differ only in one - development process. FreeBSD being a bit more consistent and stable, while Linux's strength is in versatility, neat features and a lot more people developing and using it. That's why it's easier to find documentation/help if you use Linux, especially if you use popular distribution like Debian/Gentoo/RHEL/CentOS/etc.

P.S. Some people say you should choose OS that your friends/coworkers are familiar with.

share|improve this answer

You need to focus in on the Linux side and select a distribution, and decide what type of packaging system you want, what type of security updates are there, hardware support etc etc.

Then you can ask how does Debian stable or Ubuntu Server compare with FreeBSD.

And at the end of the day they will come in very close and FreeBSD will be better on some things and Debian will be better with others things. It is a tricky question.

share|improve this answer

Development process with FreeBSD is more consistent Here you can see the source of every release going back 17 years and its under source control.

Documentation is important, i doubt there is anything as complete in the Linux/GNU world.

share|improve this answer
Whilst this may theoretically answer the question, it would be preferable to include the essential parts of the answer here, and provide the link for reference. – Scott Pack Sep 23 '12 at 0:31

protected by voretaq7 Sep 10 '12 at 16:07

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.