On Tue, 18 Dec 2007, Dan Rue wrote:

> FreeBSD has a *very* strict file hierarchy (man hier in freebsd or see
> http://www.freebsd.org/cgi/man.cgi?query=hier&apropos=0&sektion=0&manpath=FreeBSD+6.3-RELEASE&format=html).
> What this means is that there is strict separation between the core
> operating system and third party packages.  The core OS includes the
> kernel, but also a couple of editors (vi and ee), a couple of shells
> (tcsh, csh, sh), core libs, bind 9, and a few other things.  The nice
> thing about that is that those things are guaranteed by the FreeBSD team
> and you never have to worry about the most basic parts of your OS being
> damaged by a package upgrade, for instance.
>
> I remember a few years ago watching dselect in debian remove the entire 
> OS, including the kernel and dselect itself.  While it was a PEBKAC/user 
> error - that can never happen in FreeBSD (using package tools).  In 
> fact, you can mount the base part of freebsd read-only, to really 
> prevent such occurrences.

This would be someone logged on as root, I assume (i.e., the sys admin). 
Is it not possible to mount corresponding files in the Linux system as 
read-only?


> One nice thing about all of this from my (the admin's) perspective, is
> that FreeBSD's base config files live in /etc, and ALL third party
> configurations live in /usr/local/etc.  In fact, all third party
> ports/packages get installed to /usr/local.  No matter how badly you
> hose up your box, it is safe to rm -rf /usr/local/ and (and /var/db/pkg
> and maybe one or two other spots) and start over.

Can't things also be installed on a Linux system so that they are entirely 
within /usr/local?  That's what I usually do with

./configure prefix=/usr/local

But that is the typical default path, so the prefix is usually not 
specified.  I like your idea but I don't see why it can't be done in Linux 
too.  Maybe it's a lot easier to pull it off in FreeBSD.


> Now, I am not trying to troll tclug here; just trying to clarify a core 
> difference between FreeBSD and linux.

Your comments are much appreciated, Dan.

I also am not trying to start a battle, I just want to learn some things.

Mike