FreeBSD 5.2-RELEASE is the third major 5.x release for the next generation of the FreeBSD Unix system (release notes). For the last few years I only used the 4.x stable releases, waiting for a mature 5.x release to come out before trying it. I felt that the time had come with 5.2, but has it?
The text-based installation is the same as in past versions of FreeBSD, so there is nothing new to report on this. As long users gets their head around FreeBSD’s partitioning/slicing scheme, the rest should be pretty straight forward for most users.
The FreeBSD installer let me choose of 2-3 ways of configuring X, and I first chose the graphical one, which failed. I decided to deal with X later (after the installation had finished), and so later I just copied my XF86Config from my Slackware 9.2-Current partition and used that successfully.
Our firewall/router here at home is based on FreeBSD 4.x and so I got… proof that FreeBSD excels as a server (we haven’t seen a single crash with it for the last 2 years). However, my FreeBSD 5.2 installation was done on my AthlonXP 1600+, which is a desktop system, and so this evaluation of the FreeBSD software was done with that in mind (hardware description: 256 MB RAM, 32MB GeForce2-MX400 AGP, 80 GB IDE, Matsushita 4x DVD-ROM, BTC CD-RW, Yamaha YMF-754 PCI sound card, Texas Instruments PCI Firewire card, IOGEAR ALi-based USB-2 PCI card, 19″ LG 995E CRT monitor).
The FreeBSD boot screen has a text selection menu with an ascii Daemon next to it: from there you can choose the kind of booting you want (normal, safe mode, single user etc).
When I created the “eugenia” user using the installer, I typed /bin/bash as the shell for that user but what I didn’t remember was that the location of that binary on FreeBSD was /usr/local/bin/bash. I could edit the passwd files later to correct this, but as I was already booted to KDE as root (couldn’t login as “eugenia” yet because of bash’s wrong path) I decided to use the kuser KDE application to fix my user’s entry. A minute later I had everything saved and tried to login as eugenia. Seemingly everything went ok. But when I needed to “su -” to root to do some additional first-time configurations I noticed in terror that I could not login as root at all anymore. Apparently kuser had mangled both the /etc/passwd and /etc/master.passwd files and deleted the first 3 lines of these files which contained the information for root. It took me over an hour trying to find on Google clues as to how to put my installation back together as my last resort would have being re-installation. So, I fixed it by booting to single user, doing a “mount -t ufs -a”, and then going to /etc and doing a “pwd_mkdb -p master.passwd.bak” which re-created my passwd file and its user database (thankfully there was a .bak backup file there, otherwise I would have to re-install like this guy had to do).
I wrote to the FreeBSD KDE members about this incident and apparently this was a known problem but the fix was commited two weeks after the code freeze. In my opinion this utility should have either not included at all (the problem existed on FreeBSD 5.1 as well for months now!), or they should have accepted the patch in time for 5.2. I will take one point off for FreeBSD — not because of the bug (bugs happen) — but because of the decision to not do something to fix this important problem in time for 5.2 while it was a known problem. While most users will follow the Handbook and use the adduser command, others might just find convienient a GUI tool at some point and then face unnecessary hell. (After this report, the 5.2 Errata was updated).
FreeBSD includes Gnome 2.4.1, KDE 3.1.4, AfterStep, and Windowmaker. I used Gnome most of the time. FreeBSD found and supported all my hardware except my USB-2 ALi-based card (only works with Windows) and my Creative USB web camera (works with Linux). The ov511 driver for FreeBSD is not up to date for 5.2, but even if it were, it would not work with Gnomemeeting because the driver port from Linux was done to merely grab snapshots from it and not to do video. I wrote to some of the ov511 developers about it and they told me that they wouldn’t do the job to completely port the driver properly because there is no infrastructure on FreeBSD like Video4Linux is on Linux. Regarding the USB2 card, I could not test it because I couldn’t see any EHCI option (“device ehci”) on the FreeBSD configuration kernel file except of OHCI and UHCI and so I didn’t bother recompiling the kernel (especially now that the 5.x kernels come precompiled for sound there is little incentive to mess with it anymore). I might look into this further in the future, though ’cause I know that EHCI *is* supported by newer FreeBSDs.
FreeBSD doesn’t come with all the cool stuff already preconfigured for the user as most newer Linux distros try to. For example, I had to create links for /dev/dvd and /dev/cdrw to the actual device names; I had to chmod them to 666 so all my users can use them, and turn vfs.usermount on sysctl to 1. I had to edit /boot/loader.conf and add DMA support for my IDE and ATAPI drives to increase performance, and I also had to load the sound card driver manually too (which was an exercise in frustration as the DS1 driver is not really documented as much as the emu10k driver is). I also had to edit rc.conf to enable Samba and FAM support (Samba configuration still requires more tweaking; it seems as Nautilus just can’t use smb:/// at all).
Speaking of FAM and Nautilus, Gnome wouldn’t use FAM even after this was installed. I had to setup and use cvsup for the ports tree, download a new /devel/gnomevfs2 tarball and recompile it with FAM in it and with -DWITHOUT_KDE_MENUS, because the default gnomevfs2 has all the KDE menus loading inside Gnome’s, hence creating a terrible sight. Special thanks to Marcus from the Gnome-FreeBSD project for his help.
On the upside, FreeBSD 5.2 comes with client support for NFS version 4, much better integration with the ACPI power management subsystem, full tier-1 support for all AMD64 systems, better driver support for IDE, SATA, and 802.11a/b/g devices, dynamically linked root partition and (experimental) first-stage support for multithreaded filtering and forwarding of IP traffic. More new features are listed here.
After I had cvsup’ed, I decided to give it a go and play a DVD using VideoLAN. After about 40 minutes of compiling it and its dependancies I had VidioLAN up and running, only to get a black output window (the video was playing fine and the sound was fine but it would render black and it would take an awful lot of cpu, error messages on the terminal would appear, Google didn’t help). After hitting a few random buttons on its window to make it stop, FreeBSD would just crash and the machine would reboot. Upon rebooting I installed Ogle which would give me the error message “DVDsetRoot is not set” or something to this effect. I have all devfs links needed setup (/dev/dvd, /dev/cdrom, /dev/cdrom1, /dev/cdrw) however Ogle was possibly trying to find a device link that doesn’t exist. I had to tell it “ogle /dev/dvd” to get it to open the right device. After doing that, Ogle would play the DVD just fine, even with overlay capabilities. Totem with Xine backend would also work with no problem. But regarding VLC 0.7, still not joy.
A few more bugs I found were that the gnomegames package would not get installed properly thinking that the 2.2.0 version is installed (please note that this was a clean installation), and so the HighScrores would not get recorded. Upon forcing the gnomegames-2.4.1.1 package to re-install from the CD, it would then install all the right files in the right places. Another problem was that any CD or DVD it mounted would not have a title but it would show as jibberish, it would have a filename with weird characters. This is apparently a known bug, fixed in the CVS for Gnome 2.5. As I mentioned above, I gave the right permissions to all devices/mounted dirs and told sysctl to let my users mount CDs, but still no joy with Nautilus.
Other ports problems include the libvorbis and libogg telling me that they are newer versions available (check screenshot) and upon upgrading them they keep telling me the same thing (I fear that the bug is just a typo in their version the db looks up), while every gtk application I compiled creates dependencies to the /devel/qmake package for some reason. I wouldn’t normally mind, but trying to use portupgrade would tell me that the db has problems because of these dependencies. Running “pkgdb -F” to fix these packages, it would tell me that all those packages have “stale dependencies” (whatever that means) and it would just not properly fix them (I recreated the index.db too with no results).
Later, I wanted to mount (read-only) my Fedora ext3 partition using the EXT2FS driver. I do not understand why the actual mount_ext2fs command exists while the kernel module for it is not compiled and even more weirdly, while the “option EXT2FS” is now completely removed from the GENERIC kernel conf file. From the moment the mount_ext2fs command is present to the system the option should have been in the kernel conf file, commented out even.
Not all is bad though. On the upside of FreeBSD you will find its speed. On my AthlonXP 1600+ 1.4 GHz, FreeBSD boots in about 16-18 seconds, the same as a lite Slackware or Gentoo, but way faster comparatively on other popular Linuces like Fedora or Mandrake or SuSE. As I have mentioned in the past Slackware was the fastest platform to run X/Gnome/KDE according to my tests, but the crown of DE speed now goes to FreeBSD 5.2. GTK apps are a bit faster than in Slackware overall but applications load significantly faster on FreeBSD.
The ports tree –while time consuming when compiling a port and its dependancies– it has its advantages. It is well-maintained and generally trouble-free (just not always as I demonstrated above). Linux solutions with Red Carpet, Debian, Gentoo etc., also have good results though today, so I don’t see the FreeBSD Ports anymore as the big selling point of the OS. Once upon a time this was a big bragging point for the Linux/Unix folks, but today is nothing that would make any new user or “switcher” awe. Especially when there are not many binary packages to choose from, it can be a disadvantage to subject the time users long compilation times (e.g. compiling OO.o could take many-many hours as it downloads Java, Mozilla and other such monster software to compile them as dependancies).
The big advantage FreeBSD still has today is that it is not a bunch of kernels, then gnu utils on top and then a gazillion of other third party apps on top of that. The OS feels integrated, it is a system designed and maintained from the ground up, not like any random distribution. This is a major selling point and is what makes FreeBSD feel like a trustworthy product.
In my opinion, FreeBSD rocks as a server, but it is pretty poor as an “out of the box” desktop system is concerned. But then again, FreeBSD is a server system in its heart, a real Unix; it is just that I can’t overlook the fact that they ship with desktop software and so this has to work as well as the system utilities and servers. I might sound like a mega-whiner here, but despite all these discomforts I had to go through again since my previous 4.x installation, extra work that the user has to do, and the occassional unexpected bugs, I still like FreeBSD. As long you stick to it and spend a few hours (or days, depending on your experience) fixing and configuring your way through to get the results you are looking for, you should be able to get a good setup and a worthy system to do your day to day job. It doesn’t come with all comforts that most Linuces come with (Flash, Java pre-installed, media software etc) but it is a worthwhile experience and it is generally very stable.
If you are after the “experience” go for it. If you want a solid server system, go for it too. If you are after an easy-to-use desktop system that doesn’t require you to learn anything new, then you better look elsewhere.
Good points: Faster than Linux on the desktop (at least compared to kernel 2.4.x distros), easy to configure via its well-documented conf files, feels integrated and like a mature Unix that you can trust (at least as a server).
Bad points:Limited ‘exotic’ hardware support, silly little annoyances all over the place, not many binary packages available and so compilations from ports may take ages.
Installation: 7/10
Hardware Support: 6/10
Ease of use: 7/10
Features: 7.5/10
Credibility: 7/10 (stability, bugs, security)
Speed: 8.5/10 (throughput, UI responsiveness, latency)
Overall: 7.16
First, with regards to the devfs filessystem and the missing /dev/dvd, etc., man devfs.conf. (It’s all automatic.)
Second, yes, a lot of things have been removed from the KERNEL and are now loaded modules that can be access through /boot/loader.conf.
Third, besides the ULE scheduler, with regards to performance, in the /boot/loader.conf add:
hw.ata.atapi_dma=1
hw.ata.ata_dma=1
agp_load=”YES”
In /etc/sysctl.conf,
hw.snd.maxautovchans=4
hw.snd.pcm0.vchans=4
kern.ipc.shm_use_phys=1
kern.ipc.shmmax=67108864
kern.ipc.shmall=131072
My video performance, especially on playing DVDs with either mplayer or ogle, was nothing short of INCREDIBLE. My load on a 600 MHZ PIII went from 1.2-1.6 down 0.2-0.4 !!!!
Please remember that 5.x is developmental. I’ve watched this development for the last 3+ years. This OS is nothing short of solid and has the potential to be the BEST.
At the present time, I’m developing a KDE-based desktop on it. The KDE/FreeBSD team is very responsive.
Another person that doesn’t know how to read I guess..
http://www.freebsd.org/doc/en_US.ISO8859-1/books/faq/disks.html#USE…
The fact that there is not a clearly documented way to allow non-root users to mount cdrom’s is a disgrace, it needs to be documented.
Not to shout RTFM at you, but please a minimum of effort (like a cursory read of the manual) would be appreciated : FreeBSD handbook Chapter9 – How do I let ordinary users mount floppies, CDROMs and other removable media? ( http://www.freebsd.org/doc/en_US.ISO8859-1/books/faq/disks.html#USE… )
Just us xf86cfg -textmode. That is the best way to configure X, also don’t forget about /stand/sysinstall as a very stable way of administering and configuring the system without command line arguments, it’s very useful for a novice. I’ve used FreeBSD from 4.6 and currently am using 5.1, I found it easy to setup and get going on my system. Also, not everything needs to be installed as source, many binary packages are available.
You also forgot to mention the ease of upgrading a freebsd system. Sysinstall, or through portupgrade, never had much of a problem upgrading my FreeBSD, Debian Linux on the other hand chokes when you have to many packages installed.
I find FreeBSD a very capable and useful desktop system, I use XFCE4 so I don’t have the Gnome problems, but those are Gnome’s fault and not FreeBSD’s.
I think most of Eugenia’s problems come from lack of familiarity with FreeBSD, then FreeBSD being a bad desktop. Most, if not all, of Eugenia’s problems would have been avoided if she read the FreeBSD handbook (The number one selling point of the system, though not mentioned in the article barely!). Don’t complain about something not working if you don’t read the handbook then do it wrong.
> I simply cannot recommend this for non-unix gurus.
Umm… Why should you? FreeBSD *is* UNIX.
I don’t know. Their are some good points made about FreeBSD in general in the comments, but I don’t think that the people who are saying “just don’t use THAT utility” are really thinking it through. If it isn’t useful for configuring the system, it’s not a utility. If isn’t a utility, then what is it? A trojan? There is already a testing platform for virii, worms, and trojans, and it’s not FreeBSD.
Also, a release candidate should look a lot like the final product. If kuser doesn’t work right in FreeBSD, and the FreeBSD KDE team knows about it, then they should leave it out until it is fixed. It may not be the core FreeBSD teams responsibility, but it will become FreeBSD’s problem. It does not enhance FreeBSD’s reputation for stability or bloat-free-ness (I know, it’s a terrible term, but I couldn’t think of another way to say it).
And as far as having a native English speaker rewiew your prose, well, we NES’s are often cavalier with our language, so make sure it’s a capable NES, or your prose could end up worse than it started.
“Its such a stupid thing to be picky about, the content is far more important.”
Absolutely. Some of you are being so trivial. Get off her case already.
I have spent a fair amount of time (Days) preparing aBSD (5.1) machine with applications I like to use. It would be cool if I can somehow create an ISO of that install. Anyone know where some docs are on how to create a BSD distro?
Maybe this means that KDE is not cross platform as it should, and linux-only or linux-oriented applications are crap. They should *never* touch master.passwd when the pw command can be easily run without a tty.
I think that the review is fair regarding an experience with 5.2-RELEASE as a Desktop, which is it’s intended purpose. My only gripes with the article are:
1) The review doesn’t state that 5.2-RELEASE is not billed as a mainstream release yet, and is not recommended for use as such.
2) The problem with BASH is entirely user error, not FreeBSD’s. I personally feel that it’s the same as complaining the system fails after ‘rm -rf /bin’ has been issued, but that’s me.
However, very good article and vary fairly (as in justly) written. I would however ask that it somewhere mention that 5.2-RELEASE isn’t recommended for average users.
How many of you are going to point out she’s reviewing 5-2-RELEASE? It’s been clearly written in multiple comments. Sheesh.. 😛
The choices on ULE and KSE for 5.2 were practical ones. For KSE, it started to stabilize late into the 5.2 cycle, and there wasn’t enough time to make the switch and deal with the ensuing ports problems and still keep our schedule. Believe me, this was hotly debated. It is a primary goal for 5.3, and work on the conversion has already started.
For ULE, it also didn’t stabilize until late in the cycle. SMP changes in the i386 port complicated it a bit, and again we couldn’t stabilize it to our liking in time. 5.2-CURRENT (the stream that will become 5.3) has already been switched to ULE, so as long as it performs well, it will be the default in 5.3.
FreeBSD has always had a policy of not shipping GPL components in GENERIC kernels. However, the real mistake here is that the ext2fs module is not built by default. That was fixed last night. With that change, the mount_ext2fs tool will automatically load the ext2fs module, and there won’t be a compelling reason to compile it into the kernel.
The article is very shallow. Very tendensious. You should get your review a whole lot better than you already is.
FreeBSD proves it stability and robustness over the years. You can not provide such shallow that could lead to a very bias information to either FreeBSD wannabe or flame most of its long time users.
How long have you put your hand on FreeBSD? I suspect not less than few weeks, tough I believe your husband is a long time computer freak himself. Now why don’t he make the review. We welcome he to do his time, rather than to put your name/reputation over information you got from him.
Sorry Eugenia, this no flame or abuse, but rather a very constructive critics.
Long live OSNews!
Well, from my own experience running FreeBSD on a laptop (started with 5.0, 5.1, 5.2…) for around a year now:
1) it surpasses lack of USB support in Linux (suposedly due to non standard Compaq hardware – in BSD it works and does not require tweaking)
2) surpases Windows XP in multimedia (ati mach64 with mplayer and vidix work flawlessly, whereas in Windows I have tried a bunch of drivers and none work. In fact, they reboot the machine while playing divxs).
3) surpasses Linux in ethernet support (absent in Linux)
4) 1 year ago, my soundcard did not work. After a few email exchanges with a developer he managed to make the drive work for me too. Had no problems ever since.
5) one year ago, using 5-current, power management support was lousy. Today the system is far more cooler than while running Windows.
Can not say I am not satisfied. In fact I have faced pretty much all the small problems Eugenia mentions but one learns with experience and I find FreeBSD instalattion deliciously simple. Certainly a much more straigthforward process than most Linuxes and by far a much faster process than installing a Windows XP.
As for the packages, well tweaking them is half of the fun. Nevertheless, regarding OpenOffice, did you noticed the precompiled packages here: http://projects.imp.ch/openoffice/ ?
Well now that we have a few real experts in the ring, I hope someone can answer my question: how about USB NICs, especially WLAN? I’ve read the release/hardware notes, but found very little information about this specific issue.
And thus… NOT STABLE BRANCH.
If you wanna all things working, don’t use 5.x series until labeled STABLE.
The only remarkable problem I can se in that review is you use GNOME and some of your problems may be derived from that fact. I’ve been using FreeBSD since 4.6.2 as desktop, and KDE is better supported that GNOME in the whole 4.x series. I don’t know if that’s the same in 5.x, but may be you should keep this in mind.
Btw… with Linux binary compatibilty I have Star Office and Flash working without problems in my (currently) FreeBSD 4.9.
I would like to thank the FreeBSD team for all the hard work and remind all the people complaining that on the release note s for 5.2 it clearly states
“FreeBSD 5.2 also contains a number of significant stability and performance improvements over FreeBSD 5.1. However, it is still considered a ‘New Technology’ release and might not be suitable for all users. Users with more conservative needs may prefer to continue using FreeBSD 4.X.”
http://www.freebsd.org/releases/5.2R/announce.html
I personally am waiting until I see a stable 5X branch.
Jopa
~~~~~~~`
Sorry about that Eugenia. Believe it or not, I occasionally misspell my own last name (makes me wonder if I have a slight case of dyslexia…). BTW, is your name a Spanish name? It sure looks like one… If so, that’s rather embarassing–especially in light of my speaking Spanish…
This is exactly the kind of feedback FreeBSD needs to push 5.x forward as a desktop OS. Eugenia is obviously an advanced, experienced FreeBSD user so most any difficulties she runs into are worth noting and fixing.
On a selfish note, this article has saved me a lot of time and frustration by convincing me not repeat Eugenia’s experience. This only highlights the need for willing people to test 5.x in various roles and report the results in detail, good or bad.
It is clear that you shouldnt be using 5.2. This is not a production release and it is going to have issues. How much code have you contributed to fix it? Rather then cry about this and that stick to the production releases if you expect everything to be perfect and understand development releases are just that.
You have to think the whole thing more “consumer-wise” and professinally (sic) and less “geek-wise”.
Why does FreeBSD have to be a consumer OS? Who is pushing for this? Let it be a server and workstation, and a desktop for those who love its zen-like purity.
Forget KDE/Gnome etc.! I agree that this junk shouldn’t even come with the disto.