Consider my book is new. 5th edition. Maybe you are talking of an old edition.
Also 5th edition, got it as a birthday gift earlier this year.
(About changing the root shell)
This does noe exist anymore, at page 340 now topics are Drivers and kernel.
Chapter 7.2, 'Shell basics'. I have drivers & kernel on page 540 (Chapter 11).
The problem is that advising people to always change their
root shell into
bash is a dumb suggestion for FreeBSD. It can work without incidents, but if you don't know what you're doing (which is why you'd read such a book I think) then it can cause a lot of problems. Especially on environments where
/usr sits on a separate filesystem. Not to mention the question of why
root would need an "easier" shell in the first place considering that it's bad practice to excessively use the account.
(regarding MSA)
Not really, check
this , Wikipedia knows it.
At page 597 there is written "Note that these functional divisions are somewhat abstract.
Real world mail systems break out these roles into somewhat different packages".
That is what you see, sendmail takes both ports. The description of MSA
on the book agrees with that of Wikipedia.
Problem being that outgoing local mail on a Unix system is normally handled by the
sendmail executable, not a daemon listening on port
587. The executable then provides said e-mail to the MTA which then further processes it.
Using port
587 to handle outgoing e-mail is seldomly done. Notice how the Wikipedia article can't give any examples of dedicated MSA's and has already been flagged as "
citation needed"? Fact of the matter is that you'll hardly come across the term MSA, even when looking up MTA.
I can understand that a book wants to cover the topic, but there's not that much to cover since this abstraction doesn't really exist. Sendmail listens to port
587 but does so for incoming e-mail which is to be processed on an encrypted channel. A setting with Postfix doesn't even use port
587 at all.
My problem is that the book makes it look as if an MSA is always used, which is simply wrong. Usually it's simply the MTA handling the mail which got provided directly from the MUA.
"sockstat" is never mentioned in the Handbook as well. (I use it and i like it. But i guess i discovered it here in the forum.)
Could be, but it is documented somewhere.
Still, my point is that a book which explains FreeBSD networking basics really can't ignore
sockstat, and my criticism comes from the fact that on Linux
netstat is normally used. Ergo: the authors approach FreeBSD as if it were Linux here, which is about the dumbest thing you can do.
This is the only true bug you found and it still persists in my edition.
Indeed for format for the date is wrong it should be "dd-mm-yy[yy]", as man page says.
I would say this bug is really minor.
There's also the issue of breaking up the command even though the documentation only speaks of whole commands. It's not wrong perse because
pw accepts this, but it's still bad practice considering how the documentation only uses whole commands;
usermod,
userdel, etc.
The reason why I deem this bad is because such a keyword would be something you'd use with
apropos to look it up if you forgot about the
pw command. Teaching people to split the command for no reason only makes that search a whole lot more difficult.
The book says: "rsyslog ... extends the capabilities of original syslog
but manitains backward API". If they reccomend it is personal taste, we are free to choose.
Anyhow looking at
cat /usr/ports/sysutils/rsyslog8/pkg-descr
The message tone is the same the book pushes, rsyslog is syslog on steriods.
Sure, but does that make it a preferred option to learn all this stuff?
If you really want to teach people how to administrate FreeBSD then you should teach them everything
syslogd can do (which is
a lot) and then optionally refer them to other alternatives.
Which is basically my main gripe with the whole book: it's a good read to learn how to use Linux, but it's seriously bad when you try to apply this on a real Unix-like environment such as FreeBSD. Telling people "Don't use
/bin/sh, install
bash instead" and "Better replace
syslogd with
rsyslog right away" doesn't teach people anything useful about FreeBSD, all it does is trying to persuade them to treat FreeBSD as if it were Linux, and that can come to haunt you real quick.
This is why it's usually best not to try cover everything which this book is trying but only focus yourself on one specific topic. FreeBSD isn't Linux and vice versa, and trying to cover it like this won't work.