Linked by Eugenia Loli on Mon 28th Apr 2003 15:48 UTC
Original OSNews Interviews Today we feature an in-depth interview with three members of FreeBSD's Core (Wes Peters, Greg Lehey and M. Warner Losh) and also a major FreeBSD developer (Scott Long). It is a long read, but we touch a number of hot issues, from the Java port to corporate backing, the Linux competition, the 5.x branch and how it stacks up against the other Unices, UFS2, the possible XFree86 fork, SCO and its Unix IP situation, even re-unification of the BSDs. If you are into (any) Unix, this interview is a must read.
Permalink for comment
To read all comments associated with this story, please click here.

Today I run Gentoo Linux on my primary machine (this is important because it's what I have most experience with, and therefore, what I'd most compare FreeBSD to). This past weekend I decided to give FreeBSD a try, for various reasons. My experiences:

(1) The installer is kind of like Debian's - text-based, but simple to use. I was able to get the system installed properly without problems, without documentation. I didn't consult the superb FreeBSD handbook (available online) until after the primary install process. It's rather intuitive. It took about 30 minutes.

(2) The FreeBSD handbook is great. It's not overly detailed but covers all of the basics clearly, succinctly, in plain language. As someone who has always been impressed with Gentoo's documentation, I have to give kudos to the FreeBSD handbook. It's in a similar vein, perhaps with a little more "why are you doing this" information than the Gentoo docs. Print it out or leave a browser window open when you're first figuring things out; it's your first resource for anything FreeBSD related. Small parts of it are a little out of date for 5.0 (which is understandable), but if you're installing 4.8, this won't matter.

(3) FreeBSD is almost more similar to Gentoo or Debian than Gentoo or Debian is similar to other distributions like Mandrake. FreeBSD's ports system will be immediately recognizable to Gentoo users, though its use is a little more granular than Gentoo's portage (cd into the ports directory, then do a make, make install, make clean - it then fetches the files from a CD or the net, does the requisite dependency/requirements checking, downloads and compiles those). There's nothing as simple as USE, but FreeBSD does support various compile options, including specifying the CPU you're using (via config options in a configuration file or on the command line). A Gentoo user will be able to figure it out easily with help from the Handbook. Debian folks will like the fact that you also have the option of downloading compiled packages. In a sense, the best of all worlds. I would add that I make no comment as to what's under the hood with all of this; from a user's perspective though, all of this is pretty familiar. If you live in the United States and are familiar with the US, think of FreeBSD as Canada, from a user's perspective. A little different, but easily navigable (I may have just bothered some Canadians - my bad).

(4) Got KDE and Gnome installed. I've been compiling everything via use of ports, perhaps out of habit. They work great, and are of course indistinguishable from Linux.

(5) The directory structure is a little different, but not radically so. There's a /stand directory, for example. There's also a menu-based system management tool (as referenced in this article) called sysinstall, which is optional, but useful, especially in the beginning. I don't see any great problem with it that it needs replacing; of course, you'll probably eventually get into manually editing the various configuration options via a text editor instead.

(6) The boot sequence for starting services struck me as a little bit unusual. There's nothing like rc-update in Gentoo. Took me about 30 minutes to figure out how all of my services were starting, but it's just a matter of being used to something different. I've noticed that a little more attention is paid to "local" vs shared or global applications and daemons in FreeBSD, than what I'm used to. This can lead to things being installed in places you might not expect. For example, the Apache 2 httpd.conf file is installed in /usr/local/etc/apache2/ - This may be even par for the course even for Linux distros I haven't run, but not for the ones I have (which install into, usually, /etc/httpd/ or /etc/apache).

(7) Compiled a kernel. In FreeBSD, you edit a large textfile filled with commented and uncommented lines for each module you want compiled in. I didn't see any menuconfig type tool like there is in Linux. I was able to successfully recompile kernels with ease; even a beginner should be able to follow the guide and get a new kernel compiled and installed without difficulty. However I haven't yet found a very good reference explaining what a lot of the modules did, and the consequences of including or excluding them. menuconfig contains a little metadata on each module; the text file containing the list of modules has a comment for most modules but I'd like a little more info. The first time I compiled the kernel, it failed because one module required another I had commented out. I'd like to see these kinds of dependencies better documented. Perhaps they are, somewhere. I haven't found any such resource. Nothing to panic about, but it might take you a try or two. I was able to figure out what was missing through a single Google search on the error I was getting.

(8) I installed 5.0, which is considered unstable ("New Technology Release", but it seems to be as stable as anything else I've run. Supposedly it's slower than the 4.8 production release (as per this article) but I have nothing to compare it to. Seemed snappy enough on my P2-400, even in Gnome and KDE.

(9) For whatever reason (I am full of preconceptions from reading too many OS-related websites), FreeBSD (in my mind) had a sort of reputation for being a niche, geek OS, but I've found it to be rather intuitive, well documented, and about as easy as any non-commercial Linux to install (Alternately, I could just be a major geek. Which is probably the case). The ports collection is vast, and I haven't had to mess around with the Linux compatibility layer (unless it's enabled by default by some of the ports; I don't know yet - I've just not had to specify anything about it, or go through any gymnastics as you have to with WINE under Linux or anything like that). Every single application I run in Linux is available via ports, and there are *thousands* of them. Also, it plays well with my Linux and Windows boxes in terms of NFS and samba; it's a good "network citizen". Most of the configuration files are the same. In short, it's all familiar stuff. Ports may be new to you, depending on where you're coming from, and if you're stuck on an RPM based Linux distro, you'll probably love Ports. No question.

(10) I'm still very new to FreeBSD and may have hosed things a little bit trying to get KDE 3.0 up to 3.1 - if you install FreeBSD, be sure to cvsup (serves the same basic function as emerge rsync in Gentoo) before you go around installing big packages. Had I done that, I'd be fine. I'm still finding my way around the ports system; there are a fair amount of permutations of what you can do, in terms of command-line switches for updating packages and so forth.

Worth an install, if the only reason you've been avoiding it is fear, or something.

If, on the other hand, you are a Windows user and hate Linux for all of the typical reasons, you'll probably hate FreeBSD too (With the exception of package management, which is wonderful in FreeBSD).

Users of Mandrake, Red Hat, SuSE, may find it a little more complicated, but nothing insurmountable. Easier than Gentoo to install, about the same as Debian to work with in terms of difficulty (Trust me, the dependency handling goes a long way).

Debian and Gentoo users (and probably Slackware users) should find it a breeze. Gentoo users will probably smile about how much Gentoo has borrowed and improved from FreeBSD (I assume FreeBSD, and not another BSD) in terms of portage. Of course, this is pretty common knowledge anyway, I think.

The choice of using precompiled packages, is, of course, a great plus for people who are too impatient to compile everything.

I like it a lot so far.