Sufyan bin Uzayr, Freelance Writer, Graphic Artist and Photographer, www.sufyan.co.nr
FreeBSD, the free Unix like operating system doesn't need any introduction, because it has been around for almost two decades now. So why talk about it now? One key reason is that it has been gaining popularity since the near-demise of OpenSolaris. Plus, it is arguably the most user-friendly BSD flavor out there, apart from the fact that it's one of the most robust operating systems, and being used by some of the biggest web servers and web hosting companies in the world. But is it really a viable choice for SMEs?
In order to answer this question, you have to first have to see what you're currently using, and whether FreeBSD can replace that. If you're using Linux, especially with its ext3 or ext 4 filesystems, there is little or no reason to switch to FreeBSD. But if you're using OpenSolaris, then you might want to make a shift, especially because there hasn't been much development in OpenSolaris ever since Oracle put it in the basement (the last version being 2009.06).
Another key reason to use FreeBSD would be for its ZFS file system, in-built RAID, security tools, and other benefits. Let's look at these features more closely.
Why should you rely on FreeBSD?
Networking, Firewall security and stability are some of the plus points of FreeBSD in itself. Not to mention the entirely FOSS-friendly BSD licence! Plus, since the filesystem is UFS2 and ZFS, there are added advantages of the BSD OS.
fsck is not needed: If your drive has little data, you will not notice any considerable gain in performance on switching to FreeBSD. This is the precise reason why FreeBSD is not suitable for personal desktop usage. But for a back-end server that hosts a lot of data, FreeBSD's file system comes in handy during 'worst case scenarios', such as power outages or shut downs. Z File System is available immediately after reboot.
Thin provisioning: FreeBSD can natively set quotas on datasets. What this means is that it can drastically enhance the efficiency of your storage in a shared environment. We really don't need to delve deep into theoretical lectures on thin provisioning here. Just Google 'FreeBSD provisioning,' and you'll find extensive documentation in FreeBSD's man pages themselves.
Data integrity and backups: If your organization retains multiple copies of its data for backup purposes, FreeBSD can save you a lot of efforts and resources. For instance, if you employ RAID controllers, FreeBSD's ZFS or UFS2 can itself checksum the data and provide device redundancy in pools, as well as retain multiple backups of data. This can not only eliminate the reliance over RAID but also bring together volume management and filesystems, thereby providing ease of maintenance.
Ports, security and compatibility: A FreeBSD installation integrates package management and online updates within the Ports System. Apart from that, FreeBSD boasts of added security practices, such as Access Control Lists (ACLs) and Mandatory Access Control (MAC) modules. The latter is useful mainly for system administrators and managers, but the ACLs are a blessing for small businesses and enterprises.
Networking and administration: FreeBSD is fast, SMP capable and well integrated with numerous networking tools. For networking purposes, FreeBSD is as close as an OS can get to Solaris.
Documentation and support: FreeBSD is one of the best documented Open Source operating systems. Apart from assuming no prior knowledge of UNIX, the documentation and help files focus more on lesser known entities, such as Berkeley Internet name Daemon (BIND) and specific storage manage Vinum. Vinum implements Virtual Disk Drive Management and can handle RAID 0, RAID 1 and RAID 5. The documentation also provides extensive info about transferring or migrating to and from Linux and other popular operating systems.
Apart from the above, FreeBSD supports all the popular desktop environments such as KDE and GNOME.
Why you shouldn't rely on FreeBSD?
Extended file systems: If you have been using ext3 or ext4 for quite some time, moving from ext-x to ZFS or UFS2 will, bluntly speaking, offer you nothing more than slower startup times. Yes, there will be added advantages of ZFS, but since you have been using ext-x already, your enterprise must be employing ways or alternatives to get the job done anyway!
MySQL (Running InnoDB): If you're running MySQL powered by InnoDB (or other similar engines), FreeBSD's performance will not be a match for the results you can probably get under RHEL or SUSE. However, as compared to desktop centric Linux distros, such as Ubuntu or Mint, FreeBSD fares equally well. In such a case, this flaw can be best attributed to a bug and not a fault with FreeBSD itself. In either case, this is something you should bear in mind.
Installation via http: For most mid- or small- sized enterprises, this really should not be an issue. Nevertheless, for the sake of mentioning it, FreeBSD's install mechanism is not the most successful one if used over http.
With the advantages and disadvantages out of the way, let us come straight to the main question. Why use FreeBSD when there are already so many other operating systems out there, like Linux, Windows, Solaris, etc?
In case of OpenSolaris, the answer is pretty clear because there doesn't seem to be a future path for it, as Oracle hasn't done much development on it ever since the last release that appeared in June 2009. In case of other operating systems, like Windows and Linux, the decision is not so simple, and would require a case by case analysis. Where FreeBSD does shine is in its capability to harness the power of ZFS, which we've already explained. Apart from that, just about every application that's available for Linux is also available on FreeBSD via the official ports. Just browse the official repository and check for yourself!
What is FreeBSD good (and bad) at?
As with any OS, FreeBSD too can handle certain applications very well, and is not so good with others. BSD in itself powers more web hosting systems than Windows (though less than Linux), so its web hosting abilities are proven performances! You wouldn't go wrong if you choose it for web hosting or file storage, simply because as we talked above, no fsck needed either – reboot, and work!
FreeBSD can also make a decent choice for firewalls and routers (though not the most popular one as NetBSD seems to be better suitable for the task). Similarly, if you intend to build a SAN or NAS, you might consider NetBSD or OpenBSD rather than FreeBSD.
Finally, coming to where FreeBSD may not serve the purpose, if you are into database administration and other related tasks, you will perhaps retain Linux rather than FreeBSD. There clearly seems to be little justification behind this, yet statistics speak against FreeBSD when it comes to database administration. Less than 2% of Open Source database admins prefer FreeBSD, and the rest of the story can easily be guessed!