[aklug] My Recent Experience with FreeBSD

From: Josh Rhoades <kaiden11@gmail.com>
Date: Wed Dec 03 2008 - 11:58:32 AKST

Folks,

A few weeks ago, I decided that my old Thinkpad A31 wasn't getting
enough use. It had been my laptop for four years through school, and
I'd been storing it under my desk, only bringing it out for infrequent
games of Starcraft and checking for files I'd left behind in the
upgrade. I'd put a number of Linuxes on it before (SUSE, Debian,
Ubuntu, Yoper, Gentoo, Fedora) with varying levels of success (usually
it came down to wireless drivers, and how often class would require me
to do something in MS Visual Studio). I'd also experimented briefly
with FreeBSD 4.3 on a laptop I got from a throwaway bin.
Unfortunately, this FreeBSD experiment was on a laptop whose video
memory was somehow corrupted, causing important console messages to be
translated as gibberish. I even went so far as to write a little
"degibberish" program so I could tell what it was saying, but it ended
up being the case that letters A, B, or C would all get translated to
%, %, or %, making the reversal of the corruption impossible. I did
eventually get Fedora to install (with its GUI installer), only to
find that whatever had befallen the video memory also extended to the
system memory. That laptop found its way to another dumpster, and I
was resolved to use Windows until I finished school.

Anyhow, on a particularly dark and stormy night, I decided to dig out
my FreeBSD 4.3 disc and make myself a server with the A31. I didn't
have any requirements for it, really. It needed to run an SSH daemon
so I could mess with it from my current setup without having to drag
it out. I also wanted to check out a feature I hadn't come across
before, the "ports" packaging system. My experience with the 4.3
install was that it was pretty clean, wasn't any more complicated than
other Linux installers I'd seen, and went by pretty quickly. My only
issue was that somehow, either by user error, or by my downloading the
wrong ISO, I hadn't gotten the ports packaging system. I still had a
working FreeBSD system, but without packages to slap on there, it
wasn't terribly useful.

A few days later, I downloaded the newer 6.3 ISO, and reinstalled with
that. This went considerably better, giving me the option to include
the ports packages, as well as providing the same clean/simple
installation process as before. And this is what has been running
since on the box.

So now, I have the laptop again crammed under my desk, but this time
it has a power cord and network cable running to it (I'm leaving the
wireless configuration for another dark and stormy night). I have my
SSH daemon running on it, and I've locked down the local firewall
pretty well. I've got the compilers/interpreters for all the languages
I'm currently working in. I've even got the powerd utility running,
making sure I'm running the processor at the lowest CPU frequency
possible for recent usage (150Mhz rather than 1800Mhz, when I'm not on
it). And all, for the most part, with relatively little configuration.
The sshd worked "out of the box," (though I did tweak it to disallow
root access), and both the ipfw and powerd configuration were a matter
of adding:

firewall_enable="YES"
firewall_type="client"
powerd_enable="YES"

...to my /etc/rc.conf file. Of course, depending on what you're having
to do with a machine, this could get extremely complicated, but for my
basic uses, it was pretty painless. (Aside from the "client"
configuration, there a number of other ipw config templates, including
one for gateways, and one for simply locking everything out.)

The ports system is nothing short of badass. I appreciate its
simplicity: it is a directory structure, organized by function (system
utilities, databases, programming languages, etc), of thousands of
Make files, each responsible for downloading, compiling, installing,
and uninstalling various program packages. Where I've previously
failed in compiling certain packages (finch/pidgin has been a sore
spot for a while), they compile and install just fine. If a port has
failed, it been due to licensing issues, which are resolved by
manually downloading certain files (Erlang required me to grab a
number of Java packages that needed my agreement to a terms and
conditions agreement).

Overall, the system feels very solid. It may just be that I'm running
the thing in headless mode and just exchanging bits via an SSH
terminal as God intended, but it all works extremely well. I'm happy
with its support for various languages, as not only are many of the
popular languages available as ports packages, but also their popular
libraries.

I've just started using this, and have been so far impressed. I'm sure
if I attempt to get fancier with a graphical environment and such, my
criticisms would be more, but for now, I don't really have anything
that isn't a product of my familiarizing myself with how FreeBSD does
their configuration. Has anyone had a particularly bad experience with
FreeBSD? Or more specifically, is there something I should be
avoiding, or leave to a later project with another OS that supports a
feature better?

I'll keep the list apprised of when I stumble across new things.
Partly because I feel it's important to identify nice, working, mature
software amongst everything that is not, but also because my friends
have no idea what I'm talking about. Oh sure, they know how to comment
on somebody's Facebook wall, but the minute terminal emulation gets
brought up you're suddenly no longer fun to talk to at parties...

Regards,
 - Josh
---------
To unsubscribe, send email to <aklug-request@aklug.org>
with 'unsubscribe' in the message body.
Received on Wed Dec 3 11:58:43 2008

This archive was generated by hypermail 2.1.8 : Wed Dec 03 2008 - 11:58:43 AKST