Taking PC-BSD 9.0 BETA for a spin
You may have heard about BSD systems, especially if you've been using Linux and/or other related systems like Solaris or AIX for some time. You also might have heard that "BSD is dead" or some other fantastic stories. Our article here, besides taking PC-BSD for a ride, also serves the purpose of shedding some light on BSD systems and debunking some myths as well. If you have some experience using BSD, the better, but this is not mandatory, we'll try to help you get used to using BSD in general and, of course, PC-BSD in special. If you still have some questions after reading this article please try our new LinuxCareer Forum.
1. Introduction to BSD systems
Like any self-respecting intro to a new subject, this part will start with, you guessed it, BSD history compressed. First of all, BSD stands for Berkeley Software Distribution, and, as the name implies, has it's origins at the Berkeley University of California . The original BSD is no longer in use, but there are several open source operating systems that use BSD-derived code, plus lots of proprietary systems among which Apple's Mac OS X stands out. The proprietary system part is possible due to the more liberal BSD license, which, on the other hand, spawned a new holy war among IT people : GNU license vs BSD license. We won't take sides and we recommend, if you really are into licensing, that you read templates for GPL, BSD, MIT and so on and try to make an opinion of your own.
The first release of the BSD Unix distribution was on March the 9th 1978 by Bill Joy, a graduate Berkeley student at the time. In 1980, after DARPA decided to fund CSRG (Computer Systems Research Group at Berkeley), came 4BSD. Wikipedia, in their article on BSD , quote Information Week from a 2006 article about 4.3BSD, released 1986. The quote says "BSD 4.3 represents the single biggest theoretical undergirder of the Internet."
With the release of Net/1 in 1989, BSD was available under the BSD license, although it contained some AT&T code, as did all versions of BSD until 4.3BSD. Despite Keith Bostic's attempts to replace the proprietary code with free equivalents, the AT&T's Unix System Laboratories vs. BSD lawsuit occurred. This of course scared a lot of people and generally affected the project badly, mainly in terms of popularity. This was all happening in the early 90's , quite the same time as a Finnish student, named Linus Torvalds, started his own kernel. He said that if he had known about BSD, he probably wouldn't have created Linux. Anyway, the lawsuit was settled in 1994, mainly in Berkeley's favor, and few months later came 4.4BSD-Lite, which served as a base for FreeBSD and NetBSD, and of course was free of any AT&T code. From NetBSD spawned OpenBSD, the third of the "big four" and DragonflyBSD is a FreeBSD derivative. Since sockets, as used by IP, first came from BSD, you may imagine the extent of the influence it has on the industry. That combined with the fact that big commercial OSs,like Apple's Mac OS X and Sun's SunOS, have deep roots in Berkeley, gave BSD the nickname of "The Unknown Giant". There are some people who say that even Microsoft's operating systems have some BSD-borrowed code, mainly in the networking stack. And despite all the rumors, BSD is anything but dead : all the project have strong, although smaller than some Linux distributions, communities with capable people and lots of will. We use BSD in everyday life and are subscribed to the most important mailing lists of Net,Free and OpenBSD, so we know first-hand that BSD is alive and well, just lacks the hype that Linux has, which is how the developers want it.
Anyway, after this short history lesson, let's get to PC-BSD : it's a FreeBSD derivative started in 2005 by Kris Moore with the purpose of offering an easy-to-use experience to anyone trying FreeBSD, since the "father" 's installing method are more arcane and aimed at more technically-inclined people. The first big change, when compared to FreeBSD, is a graphical installer, then there are PBIs, which offer a more user-friendly package management experience and are self-contained, eliminating the dependency problems. PBI files are just like Windows' installers in essence, but of course you can use the ports system of FreeBSD, should you want to. PC-BSD does not change anything from FreeBSD's code base, so the two systems are compatible. The BETA2 release of the upcoming PC-BSD 9.0, based on FreeBSD's upcoming release, was announced just a few days ago, and since the developers promise us lots of enticing goodies, we downloaded and started the installation.
2. Installing PC-BSD 9.0 BETA2
You probably noticed that you have quite a few options regarding the download of PC-BSD. We recommend, if you have the means, to use a USB stick, because your install will go faster and you can rewrite the stick anytime, should you need to. We downloaded the DVD iso for x86_64, since we will use a virtual machine to do this. We are greeted with the classical FreeBSD bootloader, only PC-BSD branded. Since this is a desktop-oriented project, hardware requirements are a little higher, since PC-BSD tools and default desktop are Qt-based. After the first installation questions (the usual, like timezone and keyboard layout) you are asked if you want to install PC-BSD or FreeBSD, that is, a system without the desktop enhancements. We think this is a very good idea, since you can use the same media for installing a server and a desktop. Cool.
The installer's layout is simple yet efficient, asking only what's necessary. Next we get to the disk partitioning part. Here we'll have to explain a bit, since disk management is different in the BSD world. Basically the idea is that here you first have to reserve a portion (or all) of the disk and then partition it as usual. We select "Use entire disk" and use UFS as the filesystem of choice, as we don't need nor have the horsepower for ZFS. Here you will notice that disks are also managed differently : what in Linux would be /dev/sda1, that is the first partition of the first disk, here would be /dev/ad0s1a. More logical, we say, although weird at first : ad0 is the first ATA Disk in the system, s1 is the first slice (the part you reserved earlier) and a is the first partition. Those who use Solaris will find this familiar. We will publish an article dedicated to the differences between Linux and BSD soon. Until then, all BSD are very well documented and FreeBSD's handbook is an example, so we suggest you use it extensively until you get accustomed with the way BSD systems work.
What you see is something new in PC-BSD 9.0 : the ability to modify the default package/desktop selection. We selected KDE, XFCE and Fluxbox. Afterwards you have the chance to install the ports (means to install software from source) and system source tree now, instead of post-installation, then you'll get a summary of the choices you made so you can go back and change your choice, should you want to, and the installation starts.
Depending on your machine and options, your installation will finish in a reasonable amount of time. You may remove the installation media and press "Finish" to reboot your computer.
3. Using PC-BSD
When starting the system for the first time, PC-BSD attempts to auto-configure X and present you its findings to confirm and apply. In our case it did a pretty good job, so we accepted and confirmed the settings. In a short amount of time we ended up looking at a pleasant gdm login screen. We entered our password and selected KDE as the desktop. Another impressive thing about PC-BSD is that it tells you basic things you might find useful about your desktop in the shape of tips, like how you can add more software (AppCafe) or how you can configure your system with the PC-BSD control panel. As far as we notice, there is everything enabled within the system so the user can have a pleasant desktop experience. I'm talking cuse4bsd, for webcam, cups for printing...it looks like the developers thought it all out so that one can have a really complete ride with PC-BSD. The system may feel a little slower than expected from a FreeBSD-based one, but since it's beta, there are some options enabled into the kernel so that it gives more useful error messages, so developers can easily know what's wrong. Using a release version or disabling the WITNESS option in the kernel will probably make your system a little snappier. We ran the system with 512 MB of RAM and even the behemoth named KDE felt pretty responsive after loading.Of course, we recommend more memory for a KDE desktop.
As far as we can see, PC-BSD comes with lots of software you might need when doing every day computing tasks. AppCafe, the GUI for PIB management, is simple yet efficient : it breaks down software by categories, lets you add/change repositories and it's pretty fast. If you don't find a PBI for your software of choice, you can always use FreeBSD's packages/ports to install it. Life Preserver is a simple GUI app for creating and managing backups, the PC-BSD control panel is basically the system-related parts taken from KDE's system settings application, plus some specific tools, like ports management. Everything seems to fall into place pretty neat, and we sure like the ride so far. You might wanna ask : "why would I want to switch from my Linux desktop?" Well, if you're happy with your Linux desktop, just continue using it. However, I think BSD might offer the same or a little more: the system is one big entity (kernel plus userland), as opposed to Linux, which is a kernel having userland tools "glued" on top, ZFS, DTrace, live upgrades, good documentation and a fantastic community, among others. We recommend you at least try PC-BSD and see if it's your cup of tea.
In all honesty, we can't wait for the release of Free and PC-BSD 9.0. Of course, your opinion might differ, but we recommend you keep an eye on PC-BSD. I, for one, especially since BSDs are good at emulating Linux, so you can run Linux-only software, don't see why PC-BSD wouldn't be a smarter and faster desktop OS for me and others. What do you think?