Henk,

The following post is basically a brain pick because you are familiar with linux versions of UNIX as well as FreeBSD. I have some years of experience using unix boxes in shell accounts building bots, bouncers and the like so running C compilers is no big deal but I have had very bad experiences trying out the Redhat linux distribution and ditched it because it was done so badly.

I will have a spare box shortly as I am building a new PIV for my normal Windows work and this will allow me to try out another UNIX style operating system again.

I have had a quick read throught the FreeBSD website and it sounds like it is well done and usable as an installation without the usual crap of a badly designed install.

Without starting a holy war over linux versus and freebsd, do you see there are advantages for a technical user to start with FreeBSD rather than playing guessing games with different linux distributions ?

If you have the time, I would appreciate your experience here as the last episode pissed me off a lot as it was so badly done.

Regards,

hutch at movsd dot com
Posted on 2004-01-30 20:08:27 by hutch--
Hutch, while my experience with BSD is more limited than henk's, I have played around with it. My general impression is that it's a more mature OS with more mature users. They only add new features to the system after a lot of testing, so when downloading a -RELEASE (or, even better, -STABLE), you should be rather certain that it is tested and stable.

The BSD people are *very* interested in security, rather than flashy graphics. I think I've heard of less BSD exploits than linux exploits. When looking at BSD source, it looks pretty clean and well done.

Linux and BSD are somewhat different, and a bit more so than comparing a couple of linux distributions. However, since you're bound to end up reading documentation no matter which system you're going to use, this shouldn't be too much of a problem - except of course that a lot of open-source programs asssume:linux, and you'll have to keep this in mind when reading installation documents etc (some files are placed in different locations).

There's more stuff for linux than BSD, and if you wanted to use the box with a windowing system, linux might have more hardware acceleration support - I haven't checked recently though, I don't care much about graphics on *u*x boxes. Most stuff will work on FreeBSD though, and iirc there's even some linux binary emulation if you get some of the less portable open-source that's around (funny how 'portable' means 'between linux versions' to a lot of people).

The only reason I'm running linux on my router/firewal/filestorage right now is that I wanted full harddrive encryption, and BSD didn't really offer that at the time I set it up - this seems to have changed with the recent addition of GEOM. Besides I had already played with linux for a while when I tested out BSD, so more linux experience + lack of full block device encryption made me go back to linux. That might change now, though :)

BSD is basically a no-nonsense OS for people who know what they want. A bunch of web hosting companies are running BSD systems, and have pretty impressive uptimes.

Oh, and the BSD license is much saner than the viral GPL.
Posted on 2004-01-30 20:33:07 by f0dder
The danish hosting company www.dht.dk runs FreeBSD.4-STABLE, and I'm very satisfied with them. I haven't noticed any downtime, the service is fast and reliable and seems secure enough - plus they have a quite okay admin system.
Posted on 2004-01-30 21:07:50 by f0dder
you are familiar with linux versions of UNIX as well as FreeBSD.


I have something against calling linux a unix. It's unix-like at best, if you ask me. FreeBSD is actually a descendent of the original AT&T UNIX, and has common ancestors with most commercial unices. Linux is just slightly different, which is annoying at times... Missing functions (even POSIX-ones), include files missing, wrongly named, or simply in the wrong directory... Weird system for installing software (not obeying standards for usage of /usr/local, /etc, and such)... and probably other stuff that I can't think of now, but has annoyed me in the past.

I have had a quick read throught the FreeBSD website and it sounds like it is well done and usable as an installation without the usual crap of a badly designed install.


Well, the FreeBSD installer is not very fancy, it's textmode-only (ncurses UI though, I think mouse even works, but I don't have one on my server), but it gets the job done. It's rather rough around the edges, but an experienced user should not have a problem to get it set up... I had some problems when I installed 5.1 over my old 4.7 though, but that was probably partly because of old junk lying around, and partly because the install didn't go entirely as planned...
Anyway, it was not a big problem, since once you can boot a FreeBSD system and get on the internet with it, you can fix pretty much everything. The beauty is that you can use cvs to update your kernel and 'world' sourcecode anytime you like. So that's what I did... I just downloaded all the sources again, and recompiled the OS. After a reboot, the bad install worked fine :)

There is also the 'ports' tree, which is much like what gentoo is hyping over (gotta love linux hype for stuff that others have been doing for years). Same sorta thing again, you can use cvs to update it anytime you like... Basically it's a large collection of 'stubs' for programs that are ported to FreeBSD. Just a makefile and some extra info in some tiny textfiles.
If you go into the directory of the program that you install and just type 'make', it will automatically download the sourcecode, the FreeBSD specific patches, and patch/configure/compile the latest version of the application, optimized for your system. Then 'make install' if all went well, et voila, it's installed.
'make deinstall' to make it go away, etc.

So I won't paint any rose-coloured pictures for you (we've heard enough of those about linux already), FreeBSD is not all that user-friendly, and it's quite rough around the edges... But once you get it going, it just keeps going, and you should get the hang of it soon enough. The handbook (http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/index.html) should also be very helpful.

Kernel compilation is slightly nicer in linux these days, I must admit. They have an ncurses-tool now, which allows you to tag features on/off.
In FreeBSD there is no such tool yet, as far as I know, so you are still stuck to editing a configuration file manually. Then again, I don't compile kernels often, so it doesn't bother me. The handbook describes the process quite well, I suppose.

Without starting a holy war over linux versus and freebsd, do you see there are advantages for a technical user to start with FreeBSD rather than playing guessing games with different linux distributions ?


Well, one of the best features to me is that FreeBSD is managed by one team, and they have one common goal. Everything is centralized, there is only one flavour of FreeBSD, and all the support is available at http://www.freebsd.org.
I never got the whole idea about linux distributions anyway... It seems that nobody can decide what linux should really look like... But as far as I'm concerned, it's all the same kernel, all the same GNU/FSF 'world' tools, all the same XFree86/KDE/Gnome/etc, so if one distribution doesn't work for me, why would any other, if it's built from the exact same ingredients?
At least FreeBSD has its own kernel, and its own BSD 'world' tools. X may be the same, but I never use that anyway on my FreeBSD box. I have Windows for that sorta stuff.

linux might have more hardware acceleration support - I haven't checked recently though, I don't care much about graphics on *u*x boxes.


As far as I know, only nvidia has released official FreeBSD drivers. For the rest, you are stuck to the third-party drivers that are included in XFree86. But they should be good enough for sporadic use.

iirc there's even some linux binary emulation


Actually, it's an entire RedHat linux kernel, mutated into a FreeBSD kernel module. The last time I looked, it was a RedHat 6.something kernel though, so it's not exactly state-of-the-art, but most stuff should run on it anyway.

A bunch of web hosting companies are running BSD systems


Indeed, and not just some simple companies either...
http://www.freebsd.org/gallery/gallery.html

hotmail.com is probably the most remarkable there :)
Or yahoo.com? :)
It's not just kid's stuff :)
BSD has often been praised for its "industry-strength" TCP/IP stack. It scales very well, and it's virtually indestructible.
I find the www.winguides.com entry remarkable aswell. Can you imagine a linux-server hosting helpful information for Windows-users? :)
Speaking of which... www.tucows.com?
And what about www.sun.com?
www.sony.co.jp?
Well, looks like plenty of serious users ;)

and have pretty impressive uptimes.


It's not so much the uptimes as the fact that BSD systems are actually being used for heavy-duty work while they're up :)

Oh, and the BSD license is much saner than the viral GPL.


Yup, FreeBSD is absolutely free. You can even modify the sources, recompile and sell it as your own OS, without having to give anyone the sources. If you are making commercial applications, the FreeBSD sourcecode can be a nice pool to 'borrow' from.

So, IF you can use FreeBSD, I think it's the best choice for a free x86-server.
But there are some exceptions ofcourse... FreeBSD doesn't have such a wide hardware support as linux has, and some software only runs on linux, so sometimes you're stuck to linux.
I'm just lucky that I am not ;)
Posted on 2004-01-30 21:27:30 by Henk-Jan
Some comments as a BSD user both on server and desktop :)

1. Motif is _the_ standard. The only reason it is not used in linux-centric freeware is that it cost money. Since 2000, it is available freely including source code. People who don't understand Motif and Xt's object-orientation mechanism resort to gtk. (And, that is exactly why gtk was created as the one of the author confessed.) Qt may be a nice addition to X for better object orientation support. But, then again, I bet it would never be included in the standard.

Oh, BTW, even RMS made a special exception about developing software using Motif. I'm not sure if he still maintains the position, but IIRC, it was because Motif is the standard.


2. -STABLE should be interpreted carefully. It does not mean 'stable' in everyday meaning. It means "no big change in the feature". This should be stressed because -STABLE branch became more or less unstable since 4 branch became -STABLE. One cannot cvsup arbitrarily at any point of time and make world and expect it to work. (It was possible before 4-STABLE, though, and that is why people sometimes get mixed up the intention of -STABLE branch and the stability.)

3. FreeBSD installer may be less friendly to users. But, that is only one time cost. An average FreeBSD user does not reinstall to upgrade. He/She "make world". (OK, I admit it. I reinstalled between 2.2.8 and 3.1. But that was becasuse I did not want to go through ELF migration.)

This feature and OpenBSD's 'fake install' mechanism of port inspired the project leader of Gentoo linux. (I don't know if his articles are still available, but he wrote a series of articles at IBM site about how wonderful BSD is and how to introduce the mechanism into linux.)

4. I forgot who said it, but here is a famous quote: "BSD is what you get when bunch of Unix hackers try to port Unix system to various architectures. Linux is what you get when bunch of PC hackers try to port Unix to PC." Of course, here, 'hacker' is used in traditional Unix sense.
Another famous quote is: "Linux is used mostly by MS haters. BSD is used mostly by Unix lovers." :)
Posted on 2004-01-31 04:11:44 by Starless
Motif is _the_ standard. The only reason it is not used in linux-centric freeware is that it cost money.


Quite true. My mental image of X was that of X under Motif, before I started using it myself. All the commercial systems that I've ever seen/used, were running Motif. That's why I installed Lesstif on my first X installation (was a free clone of Motif). I use KDE these days though, because it works much nicer, it's almost like Windows :)
But yea, Motif is what X should look like :)

An average FreeBSD user does not reinstall to upgrade.


I had to reinstall from 4.x to 5.x because they changed from gcc 2.x to gcc 3.x, and in their infinite wisdom, the gcc people decided to make gcc 3.x's object format incompatible with the earlier ones. It was impossible to link old and new code, so you got sort of a chicken-and-egg problem. But that is not entirely FreeBSD's fault, they weren't responsible for the idiotic mistake, and their only alternative would be to stick to gcc 2.95 forever, and be left behind... they would have had to make the move sometime anyway. Anyway, I just did a minimal binary install over FTP, over the old 4.7 install, which as I said above, didn't work out entirely correctly, so the system was acting a bit weird afterwards. But after a cvsup/make kernel/world, everything worked fine again.
Posted on 2004-01-31 04:52:16 by Henk-Jan