# Tips on choosing a BSD system



## sossego (Apr 6, 2011)

Tips on choosing a BSD version

Linux has been the latest word in alternative operating systems for a few years now; but, there are other options with a history that precedes both Linux and the GNU base. These systems are based on the Berkley Software Distribution, a direct descendant of AT&T's (Bell Labs) UNIX which was rewritten. There are four versions: FreeBSD, NetBSD, OpenBSD, and Dragonfly; but, I will only be concentrating on the first three. Let us begin with a simple set of questions.

1) Is your interest security?
2) Are you using non-standard hardware?
3) Are you a developer?
4) Do you like a challenge or want an easy start?

Give yourself a moment to think these questions through.

I will introduce and describe the options you have, including both the positive and negative of each.

I) FreeBSD.
 FreeBSD is the most used of the BSD systems and comes with more support including work from iXSystems and the PC-BSD project. Community support can be seen on the mailing lists, here , http://forums.freebsd.org, and at local groups in various parts of the world. Development is active as ports to the PS3 and the newer SPARC64 chips are improved. However, for a person without patience or willingness to learn something different, FreeBSD may present a few difficulties:
1) No graphical installer. The option available is to use PC-BSD for such; but, what is the option if one doesn't have this type of hardware? Sysinstall and the newer bsdinstall are ncurses based installation methods. A person would also need to read on how to use gpart and maybe even use a Linux distribution to setup a disk beforehand.
2) Less support for hardware than in Linux or Windows. Your new equipment may not work "out of the box" or may even require configuring by hand.
3) No native support for flash and limited support for Java. There are options such as gnash and the FreeBSD project has its own version of Java. Be noted that it is limited to i386 and amd64 only.

II) OpenBSD
   OpenBSD is a security conscious operating system aimed at developers and those who want to follow a strict code base. Support covers more architectures than FreeBSD and the community is based on mailing lists with the only forum support being here. It is headed by a single person. OpenBSD is a great distribution but a few words of warning for the new user:
1) Follow the install documents exactly. There is no way around this.
2) Refer to the shared examples and manual pages on the system. This cannot be stressed enough.
3) Think before you ask a question and research the mailing lists archives. The different members of the OpenBSD core group, ports, packages, and side projects are developers deeply involved in their work.

III) NetBSD.
NetBSD is a more of a hobbyist operating system with support for more systems than most Linux distributions and the other two BSD systems. It is included as an option for single board and embedded computers. The community is loosely knit. Like OpenBSD, support only exists in mailing lists or here . There are a few challenges one needs to overcome:
1) Like OpenBSD, you must read the installation documents.
2) Support from the mailing list may not come directly due to the smaller community size.
3) Your hardware may not have current support; so, you may need to build a kernel and userland yourself.



> From http://netbsd.org/about/features.html#clean-design :
> 
> "NetBSD focuses on clean design and well architected solutions. Because of this NetBSD may support certain 'exciting' features later than other systems, but as time progresses the NetBSD codebase is getting even stronger and easier to manage, while other systems that value features over code quality are finding increasing problems with code management and conflicts."




You may ask, "Why would one want to use such a system when Linux is available?"

1) Both the kernel and the userland or "base" of each system is developed by the same team. Linux is a kernel only. The base is GNU,
2) A user has more control of the package installation in FreeBSD. Neither Debian nor Fedora nor the systems based on these two allow you such control.
3) All three BSD systems have lower requirements for the hardware that is supported.
4) The user is not included in the wheel group in FreeBSD. All three allow the root user the ability to include or exclude the user in any group.
5) Licensing. The BSD license is more permissive.
6) Stability. All systems follow strict rules. The permissions are set by the root account.

"Okay, but, it seems difficult already."
Such a statement is only true if one does not follow the above suggestions.

"How do I get this or that to work?"

There are a handful of tutorials and howto's around the web. Support is available at the listed forums and on the mailing lists.

"Some of my hardware doesn't work but it does on Windows and Linux. Why?"

This may be due to the company and their unwillingness to help the BSD distributions. You may want to ask your questions on the mailing lists.

"I don't feel like any of this is for me."

You have the right to choose whatever you want. These are only suggestions from me and my personal opinion based on my experience.

"You've mentioned that FreeBSD has an easier configuration than Linux. What about the advanced options for Debian or Fedora? There is also Arch and Slackware, have you thought of those?"

I am referring to the default building process with ports. I haven't worked with Arch or Slackware as of yet; therefore, please excuse my lack of knowledge on these two distributions.

"Is NetBSD used for anything besides hobbyist projects?"

Yes. Some people use it for a desktop system. Others use it for servers. NetBSD is a good choice for developers of both hardware and software because of the number of architectures it covers.


"How is the performance of a BSD system compared to that of a Linux distribution?"

Hmm. My experience has been that they run faster and smoother. This may be due to the base and kernel being developed as a single "group" in each project.  There may be exceptions with Linux that I am not aware of.

"Are there any other forums available for support?"

There is limited support at http://www.linuxquestions.org and http://www.unix.com .


"You mentioned license as being more permissive. What does this mean and who does this help?"

It means that you can release a binary with or without source code if you want.  Developers and companies can benefit from this. 
The Linux kernel uses GPLv2 http://www.gnu.org/licenses/gpl-2.0.html . Some newer applications use GPLv3 http://www.gnu.org/licenses/gpl.html . 
Believe it or not, the license has actually determined the direction software will go. Being a person who uses both Linux and BSD systems, I can see the benefits and limitations of both sets of licenses. My advice to you is to remain open to both ideas.

"Is each BSD system only for what you mentioned?"

Not at all. What I mentioned are the commonly known uses for each. I've used all three as a regular setup on different machines. It's best to try each out and then decide which is for you.


----------



## SirDice (May 3, 2011)

king52 said:
			
		

> Is each BSD system only for what you mentioned?"



Nope. They just have a different focus on things.


----------



## nekoexmachina (May 6, 2011)

My way to chose BSDs out there is:
1) Do I need wine to work on this PC/laptop?
Yes -> FreeBSD (I do not see a reason to use so-much-architecture-centric OS as NetBSD is while Im using only x86 -- they wont fix x86 bugs with good speed, and do not see a reason to use any 'small-community' OS like DragonFly or so)
2) Do I need multithreading for this PC/laptop?
Yes -> FreeBSD (Well, again for NetBSD; while OpenBSD is not for multithreading use for now)
3) Do I need recent Java to work on this PC/laptop?
Yes -> Well.. Linux is the best choice. Even here java is kinda outdated or needs to run inside the emulation mode. 
4) Do they have my $(needed device) support in OpenBSD?
Yes -> OpenBSD, no-> same question for Free, and this time no didn't happen ever


----------

