7

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.

7 Answers 7

20

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.

4
  • 2
    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, 2009 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, 2009 at 7:57
  • 2
    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. Jul 15, 2009 at 10:55
  • @Mikael Auno, noted, fixed. Jul 15, 2009 at 20:48
8

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.

2
  • 3
    "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, 2012 at 16:33
  • I did find "competient" FreeBSD admins, one of whom makes it a point to go to international conferences on "package management in BSD". They sort of bowed their heads in shame that there was at least at the time no solution to "upgrading" that actually worked.
    – Thomas
    Jul 1, 2018 at 11:04
3

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.

1
  • 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, 2012 at 16:36
1

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.

1

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.

0

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.

0

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.

http://svnweb.freebsd.org/base/release/

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

http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/

1
  • 1
    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, 2012 at 0:31

Not the answer you're looking for? Browse other questions tagged .