Slashdot Mirror


FreeBSD: The Complete Reference

Just Some Guy writes "I recently received a promotional copy of Roderick W. Smith's "FreeBSD: The Complete Reference". I was pretty skeptical at first - it's my nature - but was pleasantly surprised at the range and depth of information presented in a very accessible format. While not ready to supplant Greg Lehey's "The Complete FreeBSD", it's certainly a worthwhile read for new and moderately-experienced users." Read on for Just Some Guy's full review. FreeBSD: The Complete Reference author Roderick W. Smith pages 869 publisher The McGraw-Hill Companies rating 9 out of 10 reviewer Kirk Strauser (Just Some Guy) ISBN 0072224096 summary (Most) everything you need to know about FreeBSD

Overview

This is a large book. At 869 pages, not including copies of the GPL and BSD License, it packs some serious heft (it weighs slightly more than three pounds).

It is divided into six main parts, which are further divided into 32 (!) chapters. The sections are:

  1. FreeBSD Installation: Hardware requirements, installation instructions, and a general overview.

  2. Basic System Administration: Partitioning, startup procedure, file management, printer setup, user management, software installation, kernel configuration, and X.

  3. Network Configuration: Introduction to networking, dial-ups, client/server principles, basic firewalling.

  4. Servers: In-depth explanation of file, mail, web, and shell servers, plus an overview of DNS, NTP, DHCP, and other random services.

  5. Common User Programs: Introduction to KDE and GNOME. An overview of various network clients and office software. A short tutorial on The GIMP. The state of multimedia and games on FreeBSD.

  6. System Maintenance: The basics of system monitoring. How to upgrade the OS and installed software. An overview of system security. How to compile software. Basic scripting. Troubleshooting and how to get help.

The Good

This book is an excellent starting point for people new to FreeBSD, or even to Unix-like systems in general. Each of the wide range of topics is covered in a reasonable amount of detail. Mr. Smith claims to have been working in the field for quite a few years, and it shows in the way each part of the OS is presented as a component of the whole. This isn't a "cookbook"; readers are introduced to each subject in a way that encourages them to make their own configuration decisions.

I was unable to find any factual errors, and I certainly looked for them. The author and proofreaders did a good job of checking their information before going to print. Since my copy was from the first printing, I'm especially impressed.

New users, in particular, will appreciate the hand-holding approach of the earlier chapters on installation and basic configuration. More experience administrators should be able to find enough new information about rather routine subjects to keep them interested.

Of particular interest was the almost complete lack of FreeBSD advocacy in the book. The introduction features a remarkably even-handed discussion of its relative strengths and weaknesses compared to other Unix and non-Unix operating systems. I greatly respect the author's decision to weigh the alternatives fairly and let the reader form his own opinion.

The Bad

FreeBSD: The Complete Reference is, unsurprisingly, a new entry in Osborne's "Complete Reference" series. As such, it's fairly comparable in size, layout, and scope to other books in the series such as Herbert Schildt's C++: The Complete Reference (my favorite C++ text). That's a pretty high standard to live up to, and I began my first pass through the book with a very critical eye.

My only real complaint is that, despite the title, this is not a "complete reference." Although The GIMP enjoys its own sub-chapter, the book makes no mention of certain high-profile features such as Vinum (FreeBSD's logical volume manager) or jails (chroot on steroids). It's obviously not possible to document every single component of the entire OS, but the name would seem to claim exactly that. Of course, even though FreeBSD: The Desktop Reference or FreeBSD: Reference For Users might be more appropriate, those would violate the series' naming convention. Still, don't be fooled by the title.

Although less important, every user has their own idiosyncratic ways of accomplishing certain tasks, and I tend to get distracted by recommendations that are counter to my preferred methods. Having said that, Mr. Smith makes some strange recommendations, such as editing the passwd file and compiling the password database afterward by hand rather than using vipw. His system certainly works, but I can imagine a new user scratching their head in puzzlement at the amount of work necessary to change their name.

The Ugly

Any book of this size and scope will have a few minor quirks, and this is no exception. For instance, the author needed to use several domain names as examples throughout the book. Rather than using the traditional "example.com," he decided to use his own creations. That in itself is no problem, except that he and his publishers have not registered those domains for their own use. I can only imagine the surprise when a curious newbie tries to access one of the hostnames in a web browser and finds that a prankster has register the domain and used it to mirror goatse.cx.

A more serious lapse, in my opinion, was the decision to include an installable copy of FreeBSD 5.0 on the CD that comes with the book. Unfortunately, freebsd.org refers to that version as a "new technology release," and it suffers from a rather long list of installation and stability problems. Some day in the future, the 5.x series will be considered stable and ready for use on production systems, but that's still a while off. I sincerely hope that no would-be new users become disillusioned with their newly-installed systems and give up on FreeBSD as a slow and unstable OS. Despite the drawbacks, though, I can understand the author's desire to focus on the new 5.x series instead of the more stable but older 4.x line. This book was published in 2003, and I doubt that he wanted to have to publish a second edition detailing the new release less than one year after initial release.

Summary

This is a good book with a lot of solid information for new and experienced users. It may have a few minor problems, but it is a well-written and approachable reference that should make a valuable addition to any FreeBSD administrator's bookshelf. I would recommend it highly to anyone migrating from other Unix-like systems, finding themselves in charge of a small network, or wanting to see what the fuss is all about. If you're a new user, though, do yourself a favor: download and install FreeBSD version 4.8 from http://www.freebsd.org/ instead of installing the copy on the book's CD.

You can purchase FreeBSD: the Complete Reference from bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.

31 of 153 comments (clear)

  1. FP! by Anonymous Coward · · Score: 2, Funny

    Why do I need a kernel? The new grub bootloader is actaully a operating system in it's own right!

  2. The thing I didn't like by Anonymous Coward · · Score: 5, Funny

    Was the last line in the book:

    "*BSD is dying."

    It just seemed so out of place.

  3. but ... but ... by B3ryllium · · Score: 3, Insightful

    If the book is half-decent, it will show users how to make buildworld; make buildkernel; make installkernel; make installworld - with whatever the latest codebase might be.

    Therefore, the argument that the 5.0 CD will be out of date is moot - at least for people who have internet connections. :)

    1. Re:but ... but ... by Just+Some+Guy · · Score: 4, Insightful

      True, but you have to get it installed in the first place. 5.0 simply won't boot on some systems. An expert could probably work around the problems, but that's not the target audience of the book.

      --
      Dewey, what part of this looks like authorities should be involved?
    2. Re:but ... but ... by Billly+Gates · · Score: 2, Interesting
      I am glad FreeBSD.org calls it a "technology" release. I was confused when it was labeled originally as "release" and I assumed it was stable.

      On my system FreeBSD 5 booted fine with my old motherboard which became fried from a powersurge. After I blew hundreds on a UPS and new asus motherboard, FreeBSD would not work with my USB keyboard. I sucessfully got it to respond to my ancient AT style one without a problem.

      Also the ports are broken. In gods name do not do a "cd /usr/src/misc/instant-workstation;" make install clean. This will severly brake your system and not even a make deinstall will fix!

      Also /etc has changed. One of the things I loved about FreeBSD is instead of cyrptic bash scripts in /etc that linux has, it includes clean rc ones instead.

      For example rc.conf
      # Sendmail = off
      # http = off ,etc. This means you can just uncomment the lines you need to configure your system! No scripts will call scripts that are symlinked to god knows where. Linux is nearly impossible to adminster and customize unless your a real guru.

      This has been moved to /usr/local/example/etc. THis makes it harder for newbies to configure there systems and no documentation was found on the change. I needed to get rid of the insecure sendmail and replace it with postfix and without these commented RC scripts its hard to do.

      FreeBSD 4.8 is deffinetly recommended at this time.

  4. The GIMP? by Lerxst+Pratt · · Score: 5, Insightful

    What is the GIMP doing in a BSD Reference book?!? Seems like fluff to me. Especially when you can download a pretty comprehensive GIMP manual online.

  5. Skeptical by dfn5 · · Score: 4, Funny
    I was pretty skeptical at first -

    But then I thought "Hey, the book was free, what the hell do I care?"

    --
    -- Thou hast strayed far from the path of the Avatar.
  6. Thanks for hijacking my referral links by Just+Some+Guy · · Score: 5, Interesting
    The review I originally posted had links to my bn.com referral:
    The book is available from the usual sources. If you want to be nice to me, you can buy it through my Barnes&Noble referral link. If you find those offensive or otherwise objectionable, you can go straight to it.

    I didn't write the review to make money, but it still seems kind of sneaky to replace my referral with Slashdot's own.

    --
    Dewey, what part of this looks like authorities should be involved?
    1. Re:Thanks for hijacking my referral links by Just+Some+Guy · · Score: 3, Informative

      I never said I wasn't going to collect, just that it wasn't the reason I wrote the review. Think of it as seeing a Free Software project page with a PayPal tip jar. The author probably isn't really expecting to make money, but they won't turn it away.

      --
      Dewey, what part of this looks like authorities should be involved?
    2. Re:Thanks for hijacking my referral links by fobbman · · Score: 4, Insightful

      So the /. editors won't fix spalling erorrs in a post but they'll make sure to rip off the referral purchase? Smooth.

    3. Re:Thanks for hijacking my referral links by _xeno_ · · Score: 3, Insightful
      I quick look through other book reviews find that most of them contain a Slashdot link at the end:
      $AUTHOR is the author of $OTHER_REVIEWED_BOOK. You can purchase $BOOK from bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.

      The first sentence only applies to authors who have already been reviewed on Slashdot, but with very few exceptions (of which Dancing Barefoot, the review immediately prior to this, is one), Slashdot adds the buy link to bn.com as shown in the little template above. I don't think this was anything against you - it's something they do for all book reviews.

      Whether or not it was the right or moral thing to do, I won't judge. Just that it isn't anything against you specifically, it's just part of the standard book review template that Slashdot uses.

      --
      You are in a maze of twisty little relative jumps, all alike.
    4. Re:Thanks for hijacking my referral links by Metrol · · Score: 2, Funny

      but it still seems kind of sneaky to replace my referral with Slashdot's own.

      This site, or any other advertising based site, does not exist for you to make money. This isn't your site, nor are you trying to pay your rent by keeping it maintained as your full time job. You sure as heck aren't paying for the bandwidth, server maintenance, or any of the overhead to keep this site going. I'll even wager a guess that you didn't both asking any of the editors if it was okay to try and cash in on your write up.

      If you truly feel wronged by this, here's what you can do about it. Put together your very own site. Bust your ass on it for 6 or 7 years keeping the content fresh and interesting to then establish an audience. At that point, you can toss in all the affiliate payback links you'd ever care to do.

      Even easier, put up an article on you're own site and submit the link! Incur your own bandwidth costs while enjoying the benefits of the large Slashdot audience your site does not have.

      If this were my site, you're darn skippy I'd change that referral code to my own. If a contributing author expects payment for their work, it best darn well be established well in advance of publishing. And yes, working in backend affiliate links you hope the editors don't see is very much an attempt to cash in on the traffic that you could not otherwise generate yourself.

      --
      The line must be drawn here. This far. No further.
  7. Re:But the real question is by TheRaven64 · · Score: 4, Interesting
    Actually, the real question is 'is there actually a need for such a book?'

    The first thing I noticed comming to FreeBSD from Linux was the high quality and large quantity of official documentation provided. While I did buy a book when I started off with Linux, I really didn't need to for FreeBSD. This may be because I was already familiar with *NIX by that point (although FreeBSD 'feels' a lot tidier in terms of layout - 100% subjective, your milage may vary). On the other hand there was a large amount of documentation aimed at neophytes which I skipped.

    --
    I am TheRaven on Soylent News
  8. Bullschildt by AltControlsDelete · · Score: 5, Informative
    I question the credibility of any reviewer who refers to something written by Herb Schildt as his favorite C++ text. Good grief.

    From the alt.comp.lang.learn.c-c++ faq:
    16: Why do many experts not think very highly of Herbert Schildt's
    books?

    A good answer to this question could fill a book by itself. While no book is perfect, Schildt's books, in the opinion of many gurus, seem to positively aim to mislead learners and encourage bad habits. Schildt's beautifully clear writing style only makes things worse by causing many "satisfied" learners to recommend his books to other learners.

    Do take a look at the following scathing articles before deciding to buy a Schildt text.

    http://www.lysator.liu.se/c/schildt.html
    http://herd.plethora.net/~seebs/c/c_tcr.html

    T he above reviews are admittedly based on two of Schildt's older books. However, the language they describe has not changed in the intervening period, and several books written at around the same time remain highly regarded.

    The following humorous post also illustrates the general feeling towards Schildt and his books.

    http://www.qnx.com/~glen/deadbeef/2764.html

    Th ere is exactly one and ONLY one C book bearing Schildt's name on its cover that is at all recommended by many C experts - see Q 25.
    1. Re:Bullschildt by Just+Some+Guy · · Score: 2, Interesting
      Another possibility: the reviewer (me, in this case) learned C++ in school and hasn't touched it since then. To someone at my knowledge level in that arena, Schildt seems like a good author.

      On the other hand, I used FreeBSD every single day, and run quite a few production servers for various clients. I don't claim to be expert but I do know a thing or two about the subject. If I had written a review on a C++ book, I think your criticism would be reasonable. However, I didn't, and I know a lot more about the subject that I did write about than I do C++.

      --
      Dewey, what part of this looks like authorities should be involved?
    2. Re:Bullschildt by ptr2void · · Score: 2, Informative

      Visit ACCU's book corner for some opinions about Schildt and his well-liked books. Well, a lot of people like the Bible or Star Wars... wether it helps them a lot in practice is another question.

  9. Compleat vs complete by stardeep · · Score: 2, Informative

    > more like from the compleat-misspellings dept. ;)

    Actually, "compleat" for "complete" in the titles of guidebooks is an ancient and revered practice, going back to this book.

    I guess you learn something every day, huh?

    --
    Sentimentality is merely the Bank Holiday of cynicism.
    - Oscar Wilde
    1. Re:Compleat vs complete by swb · · Score: 2, Interesting

      Actually, "compleat" for "complete" in the titles of guidebooks is an ancient and revered practice, going back to this book.

      Bah, it's just an attempt to upgrade it into something it is not.

      It's not much different than the irritating practice of the local strip mall being referred to "The Shoppes of Glen Woode" or the local convention hall being called "River Centre".

      They all just appear to be copping Olde British Spellings to grant status.

  10. Does it apply to OS X? by ascii · · Score: 3, Insightful

    Forgive me if this is a dumb*ss question, but can anyone tell me how well it applies to Mac OS X?

    Thankyou.

    --
    naah sig schmig
    1. Re:Does it apply to OS X? by Just+Some+Guy · · Score: 3, Informative
      can anyone tell me how well it applies to Mac OS X?

      Almost not at all. Large sections involve installation and low-level configuration, which is irrelevant for Mac OS X. Ditto for the ports collection, administering the system, upgrading software, or installing multimedia programs. I don't think there's really anything in their for Mac users, other than maybe the section on configuring servers, and Apple probably has their own tools for that.

      --
      Dewey, what part of this looks like authorities should be involved?
  11. include news and deep-documented stuff by LastCa_ · · Score: 3, Interesting

    I've seen a lot of cool stuff to do with FreeBSD (like tweaking the kernel) that was only documented directly into the system (like in the source or man pages) and in some newsgroups.

    My point is, I would be happy if someday, a real "complete reference" book on FreeBSD is created, will all the tweaks and tricks (aka not only a beginner oriented book). No more search in the news and printed-two-years-ago-obscure-documentation for me.

    This is the kind of book I'm looking forward to.

    --
    - LastCall_
    1. Re:include news and deep-documented stuff by Just+Some+Guy · · Score: 3, Informative

      You're looking for Greg Lehey's The Complete FreeBSD, I think. The latest version came out this month.

      --
      Dewey, what part of this looks like authorities should be involved?
  12. VINUM not mentioned = good by Lew+Payne · · Score: 5, Interesting

    "...the book makes no mention of certain high-profile features such as Vinum (FreeBSD's logical volume manager)..."

    Why should it make mention of something that is being phased out of FreeBSD? Anyone who has followed the developers' thread knows that the code for vinum is unmanageable and horribly inefficient, and is being replaced. Why should the book's author teach you about something you should not use and that will be deprecated? Why didn't the reviewer research his comments a bit more before being critical of a positive feature of the book?

  13. Re:But the real question is by Arandir · · Score: 2, Funny

    The number of hardcopy paper-and-ink books on a bookstore's shelves directly correlates to the operating system's "slashdot" rating. Linux used to have only a couple of books in the bookshelves, and only geeks used it. Then there were hundreds, including a whole series of "For Dummies..." books different only the title of the distribution on the cover. It was only then that Slashdot began posting front page articles on every minor release of the development kernel.

    If we want every minor -STABLE update to have a major mispelled referrer-altered main page announcement on Slashdot, then we need more than the dozen FreeBSD books that are out there. CndrTaco and Hemoo will never recognize FreeBSD as an operating system until it has its own category in the Dewey Decimal System.

    --
    A Government Is a Body of People, Usually Notably Ungoverned
  14. A Comparison of FreeBSD and Linux by BigJimSlade · · Score: 2

    First off: This Is Not A Troll!

    Never having used any *BSD and only having a passing knowledge of Linux in its various flavors, where might one learn about the differences (dare I say Pros & Cons?) of FreeBSD and a Linux distribution? Maybe this is an Ask Slashdot question (I couldn't find a previous one, and a quick Google turned up only performance comparisons, not feature comparisons)

    1. Re:A Comparison of FreeBSD and Linux by sremick · · Score: 2, Informative

      I am going to be lazy and copy&paste a similar response I posted to USENET recently...

      I've been a FreeBSD user since my first exploration into non-MS OSes many years ago, so my Linux knowledge is second-hand (and may not be 100% accurate or up-to-date) but here are tidbits I think I know:

      - The licenses are fundamentally different. This doesn't matter so much to me but may to you. I'll therefore skip that, but understand that BSD vs. GPL is somewhat of a Holy War.

      - Linux seems to me to be more disorganized. With FreeBSD, you have one true OS. With Linux, there's the true Linux kernel, but that's useless by itself. Instead, it depends on other groups to put together distributions around a kernel (Red Hat, SuSE, etc) adding on userland programs and maybe even patching the kernel a bit for their own needs. With FreeBSD, if you're running FreeBSD 4.8 then you're running the same OS as everyone else with "4.8". With Linux, you're not running Linux version whatever, you're running Red Hat ver whatever, which is based upon a particular version of the kernel, which is different than some other distribution even if it's based upon the same kernel version. An analogy is with cars: With Linux, there's a Linux "engine" but many different companies build cars around that engine. With FreeBSD, they make the engine AND the car.

      - [opinion] Linux users seem to be more "fanatical", while the FreeBSD camp seems more level-headed [/opinion]

      - FreeBSD is renown for it's stability. Linux is a bit funkier... it seems to go for flash and glitz more than rock-solid stability. This is not to say that Linux can't be made stable, or that FreeBSD can never crash. But they approach things from a different angle. A Linux distribution for example tends to initially install X and a ton of programs you may or may not use. The benefit is that you might get to a GUI immediately with less work, but you also might have 100 daemons running you really don't need. FreeBSD on the other hand might take more work to get to initial GUI but once you're there you probably only installed what you really wanted to, and nothing/little else.

      An enlightening point is found at Netcraft's list of the servers with the longest uptime... check what OSes they run:

      http://uptime.netcraft.com/up/today/top.avg.html

      - Yahoo runs on FreeBSD. Hotmail did too, before Microsoft took it over. The largest/busiest FTP site on the 'net runs on FreeBSD (www.cdrom.com).

      - The FreeBSD ports system is awesome. As far as I know, most Linux distributions don't have anything like it. I think one has something that is close but is based upon precompiled binaries. FreeBSD's ports you compile yourself, which takes longer but has benefits that I like. I think the various Linuxes are trying to "catch up" to FreeBSD in this regard but I could be wrong about the current state of affairs. Keeping apps (and the OS itself) up-to-date with tools like CVSup and portupgrade is sickeningly easy.

      - I find upgrading FreeBSD to be incredibly simple. I have heard it surpasses most Linuxes but I could be wrong. But basically with 4 commands you're done (aside from mergemaster, which could use improvement, but really isn't so bad for most simple people like me once you "get it").

      - Linux gets more press, but I consider FreeBSD "the best OS you've never heard of". I'm a firm believer in having your vote be counted even if it's the underdog. I'm putting my support behind FreeBSD because I like it better than Linux, even though I'm in the minority. Using Linux "because everyone else does" is the same mistake that turned Windows into a painful monopoly.

      - There are technical details with threads and scheduling that differ between the two but I don't understand them enough to say anything more on the subject.

      - Don't let people scare you into thinking FreeBSD can't be used on the desktop and is only good for servers. I use it as my desktop at home.

      Well that's all I can think of for now. Hopefully I don't start a flame war... I am not anti-Linux (although I'm anti MS).

    2. Re:A Comparison of FreeBSD and Linux by kirkjobsluder · · Score: 2, Informative

      Well...

      One comparison can be found in the essay BSD: Linux With a Twist. The FreeBSD Manual also has a section on the differences primarily focused on the development model.

      But just as a summary

      Support

      Linux has more users, more books, more groups, more mailing lists and more newsgroups. Whether this is good or bad depends on your point of view. I find comp.unix.freebsd.misc to have generally very good advice.

      What you get

      Most Linux distros seem to be headed towards a "complete desktop in a box" approach. In contrast, BSD just gives you a bare-bones distribution with most other applications available as packages or ports. Under BSD the kernel and core programs are treated as a coherent unit.

      Flavors

      Linux seems to spawn off a new distribution about once a month. There just seems to be three main BSDs that focus on different things. (FreeBSD, OpenBSD, NetBSD.)

      Java

      The BSDs lag behind Linux in Java support a bit. I don't have any problems with Java 1.3 but I'm told Java 1.4 is not production quality yet.

      License

      The BSD license permits incorporation into proprietary systems. Depending on your needs and politics this is either a good thing or a bad thing.

      Hardware

      Linux has support for more peripherals. NetBSD has support for more CPUs.

      Learning Curve

      Hrm. BSD pretty much forces you to master command-line unix. The text-based install assumes a pretty good understanding of basic concepts, and while the Handbook is excellent, it also assumes a bit of knowledge.

  15. Assuming a fast net connection by A+nonymous+Coward · · Score: 2, Insightful

    Someday everyone will have fast connections. That isn't today.

  16. Some general observations by fm6 · · Score: 2, Insightful

    The first thing I want to know when anybody talks about BSD is this: why precisely should I learn yet another OS? What do I get that I don't already get from Linux or Windows or QNX or Inferno or... I'm not suggesting that nobody needs to know BSD. But any review of a BSD book -- and the ensuing discussion -- should touch on the question of who should be interested in the topic.

    Enough about Herb Schildt.

    The review is painfully padded. All JSG seems to have to say is, "Looked for factual errors, couldn't find any. Liked the book, even though I disagreed with some of the advice." Throwing in a lengthy outline and a lot of useless trivia (imaginary domain names, forsooth!) to bring it up to a proper length is just lame.

    Linking to Barnes & Noble's web site hurts your credibility. I assume people do it because they give better referral rates than Amazon, and/or you're pissed about Jeff's patent hunger. Well, forget it -- I don't want to deal with B&N's cruddy web site, abysmal customer service, and absurd inventory problems.

  17. Cheaper by SophtwareSlump · · Score: 2, Informative

    Bookpool.com has this book for $30.95. (Hint: search for 'FreeBSD'). It's $49.99 at bn.com. Do the math.

  18. Re:My FreeBSD book collection by jhunsake · · Score: 2, Funny

    Great! I'll be right over to break down the door and take them. Thanks!