# Best Resource for FreeBSD/UNIX Newbies



## Scribner (Jun 26, 2019)

Some of you may have read my posts over the last six months, which demonstrate the fact that I know very little about FreeBSD/UNIX. Since I don't want to flood the forum with posts, I'm wondering what members of this forum think is the single best resource for new users of FreeBSD and UNIX. I currently own _Absolute FreeBSD (3rd Edition)_ and _UNIX and Linux System Administration Handbook (5th Edition)_, and I have read the early chapters of the FreeBSD Handbook. All of these resources seem to assume familiarity with FreeBSD/UNIX. I'm looking for something aimed at the complete beginner to these operating systems.


----------



## Beastie (Jun 26, 2019)

There are many such references/tutorials/cheat lists for the real basics:
http://www.oocities.org/jeffer_ucla/unix.html
http://www.ee.surrey.ac.uk/Teaching/Unix/index.html
http://people.cryst.bbk.ac.uk/~tickle/notes/unix-beg.html
...

But more important is to experiment with your system. Learn the tools by using them. FreeBSD has excellent documentation, so that every single command has its own man(1)ual page. You don't know how to use a command or can't remember some argument? Simply type `man <command>`, `/<keyword>` to search the man page, `n` to search forwards and `N` to search backwards.

If you feel the command-line man is intimidating at first there's always the online version.

Oh, and don't log in as root unless *absolutely necessary*. This will prevent you from nuking the entire system, something which can (and will) easily happen even to the veterans.


----------



## drhowarddrfine (Jun 26, 2019)

Ask about Linux on Linux forums, not here. Absolute FreeBSD is all you need right now for FreeBSD.


----------



## Sevendogsbsd (Jun 26, 2019)

OP - as you may have surmised, FreeBSD is not related to (in any way) Linux but you will find people that try to inject "Linuxisms" into FreeBSD when they run an instance of it. I think that's why the good Drhowardfine stated that...if you keep them separate and don't intermingle procedures, you'll be fine.


----------



## Scribner (Jun 27, 2019)

I just deleted "Linux" from my post.

Beastie, those are good links and I checked out freebsd.org's Manual Pages. I still haven't tried the `man` command, but I will soon I'm sure.

So do pretty much all of the UNIX commands apply to FreeBSD? And is this not the case with Linux?


----------



## ralphbsz (Jun 27, 2019)

Sevendogsbsd said:


> OP - as you may have surmised, FreeBSD is not related to (in any way) Linux ...


Well, true. But also false.

Both Linux and FreeBSD (and many other OSes) have a very strong common heritage, from their Unix roots. And both at the user level (shell, utilities like cp and rm) and the programming level (API), much of the interfaces are standardized, with the largest body of standards being called POSIX. Excluding kernel programming and some details of system administration, FreeBSD and Linux are at least 90% identical, if not more.

There are differences between user environments that are more relevant than the operating system itself. For example, for a command-line user, bash on Linux is more similar to bash on FreeBSD, than to tcsh on either.  Similarly for GUIs, Gnome on Linux and FreeBSD are more similar than the difference to KDE on either.

While the differences for users are not large (or tiny), the significant differences happen in administration. Like installing packages, configuring network, setting up services, and so on. That is not standardized, and there *BSD is not like Linux.

I really don't like the religious war of "FreeBSD good, Linux bad". Both are very fine tools, which can be used for different things. And even then, their use overlaps a lot, and the decision which to use ends up often being a question of taste or emotional preferences.


----------



## drhowarddrfine (Jun 27, 2019)

ralphbsz said:


> from their Unix roots.


Just to nitpick. Linux roots are not in Unix while FreeBSD's roots are Unix.


ralphbsz said:


> I really don't like the religious war of "FreeBSD good, Linux bad".


I wasn't going to mention it here but I will now. I talked about the fact that I was hired to write a Linux driver and associated software for a local company that makes an interesting product found all around the world related to time. They were in no hurry for it--and the money was good--so I said I would do it. A couple of weeks ago, I quit. I can't, and won't, say anything more about it but, suffice to say, Linux is the devil in my eyes and I won't ever do that again.


----------



## tommiie (Jun 27, 2019)

Scribner: I love both of those books. Perhaps they seem a bit daunting at first as they seem to expect some kind of familiarity with UNIX/Linux systems and perhaps they do indeed. But imagine this: It's quite hard to write a book if you want to sort the chapters by topic. The first chapter, e.g. about partitioning of hard drives, will assume you know things you'll only learn in later chapters. So hang in there, read both books and if you don't understand certain topics, that's ok. Once you've finished either of these books, you will better understand all topics when they're covered again in the second book.


----------



## robotchaos (Jun 27, 2019)

drhowarddrfine said:


> Linux is the devil in my eyes and I won't ever do that again.


Man, I would be interested as hell to know what you went through. Also, I hope I'm not quoting this out of context, but rather quoting the conclusion.


----------



## drhowarddrfine (Jun 27, 2019)

robotchaos I don't want to get into the details due to NDA and I just don't feel like going into the details cause someone will keep asking for explanations. The best I can do right now is say that one of the problems relates to the constant differences between where configuration, application and libraries are placed. In one case, I found three different locations for the same config file and that's when I quit. Systemd *is* a pita, too.

I feel my blood boiling. I won't continue.


----------



## robotchaos (Jun 27, 2019)

drhowarddrfine: My sincerest apologies, I didn't mean to pry.

Scribner: I am looking to buy _Absolute FreeBSD_ and would be interested in a review from you as you are going and when you are done.


----------



## LakeCowabunga (Jun 27, 2019)

To say that Linux had/has no connections to Unix is... inaccurate.


----------



## xtremae (Jun 27, 2019)

Scribner said:


> So do pretty much all of the UNIX commands apply to FreeBSD? And is this not the case with Linux?


It is. Both systems are UNIX-like due to their common UNIX roots with linux being a clean room implementation. Since you know very little about FreeBSD, it would make sense to limit the scope of your search to FreeBSD specific books like _Absolute FreeBSD, _which is adequately high level and FreeBSD specific.


----------



## drhowarddrfine (Jun 27, 2019)

xtremae said:


> Both systems are UNIX-like due to their common UNIX roots


I'll say it again. Linux roots are not in Unix but was an attempt to copy Unix.

Freebsd roots are in Unix because it was a source copy of Unix


----------



## balanga (Jun 27, 2019)

drhowarddrfine said:


> Ask about Linux on Linux forums, not here. Absolute FreeBSD is all you need right now for FreeBSD.



Actually there are numerous things 'borrowed' from Linux and made available to FreeBSD users - video4linux being a good example. Sometimes it's useful to ask here if a FreeBSD port is fully functional compared to its Linux counterpart.


----------



## drhowarddrfine (Jun 27, 2019)

balanga Has nothing to do with what I said. You can't discuss technical questions about Linux here.


----------



## ralphbsz (Jun 27, 2019)

drhowarddrfine said:


> I'll say it again. Linux roots are not in Unix but was an attempt to copy Unix.
> 
> Freebsd roots are in Unix because it was a source copy of Unix


We are quibbling here about exactly what constitutes Unix. If I were to define it as "that which was written by the Bell Labs research group headed by Dennis and Ken and first published as Unix", then your first statement is true (no lines of their copyrighted code is in Linux, and never has been), and your second statement is false (no line of their copyrighted code is in BSD today, all the AT&T lines were removed long ago). We could instead define it in a different fashion. But the OP asked not about source code, nor about kernel development.

At a user level, what a normal user sees from a CLI is utilities and programs (such as cp, rm, bash, tcsh, vim and emacs) that are extremely similar or identical between the two OSes. From the GUI, they see an environment like Gnome. And if the OP does user-space programming, nearly all the APIs that they will use (simple ones like open() and read(), and obscure ones like tcsetattr() or pthread_cond_timedwait()) are nearly the same. That's because they are either identical and built from the same source (bash, emacs, Gnome), or their implementation conforms to a standard, usually POSIX.

That was my message above for the OP: Don't be afraid to learn about Linux, because much of what you learn there will also apply to FreeBSD. But not all will.

Where they differ are (a) Minor corner cases in common areas, like rarely used options to commands. (b) Which software is installed by default; for example BSD ships with its own make, Linux ships with GNU make, and while compatible at a basic level, the idiomatic style of makefiles is different between them. (c) Kernel programming, as you pointed out. (d) Some areas of system administration. You pointed out the example of systemd, which is the same example I used of how to create services. But mostly, things are the same, in particular for a beginner.


----------



## toorski (Jun 27, 2019)

Scribner said:


> Since I don't want to flood the forum with posts, I'm wondering what members of this forum think is the single best resource for new users of FreeBSD and UNIX



This is where are began to learn about FreeBSD. 








						FreeBSD Handbook
					

A constantly evolving, comprehensive resource for FreeBSD users




					www.freebsd.org
				



I also use this forum to get hints, suggestions and tips on how to use FreeBSD, from related topics/threads.  If I can't find an answer to my questions about FreeBSD there or here, then I use my fav. search engine to read, read .... and read more on howto in FreeBSD


----------



## scottro (Jun 27, 2019)

If you aren't a programmer, at this point, I wouldn't worry very much about the differences between Linux and FreeBSD.  While there are some vocal Linux haters here, userland especially (all the stuff besides the kernel) is not that dissimilar.  Although FreeBSD's root shell uses tcsh by default, all other users use shell by default, and lots of people just add bash.  Many commands, even for the base system, are identical, or at least similar.

Anyway, yes, Absolute FreeBSD is the best available book for a FreeBSD user at this point. Michael Lucas has the talent to strike a balance so that his books can be great for the absolute beginner and the very experienced, as well as everyone else in between.  I guess I could say it's ABSOLUTEly the best <rimshot>


----------



## drhowarddrfine (Jun 28, 2019)

ralphbsz said:


> your second statement is false (no line of their copyrighted code is in BSD today, all the AT&T lines were removed long ago).


I never said anything about what's in BSD today. Note that I said 





> it *was* a source copy


But, again, I'm picking a nit and I'm in a mood today.


----------



## Shadow53 (Jun 28, 2019)

robotchaos said:


> I am looking to buy _Absolute FreeBSD_ and would be interested in a review from you as you are going and when you are done.



I know you didn't ask me, but I'd highly recommend Absolute FreeBSD. He gets a lot of information across while keeping it (mostly) approachable. Because it's a book about an entire OS, it can't go in depth on a lot of topics, but provides a basic knowledge and pointers on where to go from there.

He also manages to keep the material from being too dry by tossing in humorous comments that manage to also not detract from the information in the book.

I have primarily used it as a reference book, but it has been invaluable a handful of times when it came to topics I don't understand as well (ZFS, PF, Jails). Third edition is also up to date for FreeBSD 12, so it's mostly all valid information.


----------



## robotchaos (Jun 28, 2019)

Shadow53: That is perfect, thank you! I couldn't tell from the overview what version it was for. But I did see it was published in October 2018, so was probably based on CURRENT at the time. I plan to buy it, especially now.


----------



## CraigHB (Jun 29, 2019)

drhowarddrfine said:


> Linux is the devil in my eyes...



I've done a hundred and eighty degree turn with Linux over the years.  Of course I'm not digging in deep enough to write drivers, but there's still a lot not to like above ground.

As stated earlier it boils down to the fact that FreeBSD *is* Unix.  Linux never was.  It started with ties to the Unix way of doing things, but it's since drifted from that.

It's an organization and philosophy thing for me.  I like how FreeBSD management is clearly defined across the whole of the system.  You'll never see some faction barge in politically and make sweeping changes to a critical part.   Equally I like the way system structure is clearly defined.  It's well organized and consistent.  Those two aspects make all the difference in satisfaction as a user.


----------



## oalanjones (Jul 7, 2019)

Scribner,
I also was looking for the "best" book on FreeBSD. I already own Absolute BSD (First Edition). I like Michael Lucas' writing style and humor. I plan on buying the newest edition soon. I started using FreeBSD on a part time basis in May of 2016. I am only recently using FreeBSD on a regular basis. I think, like Beastie said, "Learn the tools by using them. " I first started using FreeBSD on old computers that were given to me. That way I could experiment to my hearts content and not worry about screwing anything up. I also keep notes on what I learn when I experiment. The more I learn the more I love FreeBSD. I think the FreeBSD Handbook is the best documentation. So dig in and have fun while you learn!


----------



## tommiie (Jul 7, 2019)

oalanjones said:


> I also keep notes on what I learn when I experiment.


Perhaps that would make the best book: your own study notes while experimenting and working on the job.


----------

