Base system info

Hi to all, this is my first post about bsd especially int this forums. I'm coming from linux world, and i'm yet confusing about root hierarchy and other stuffs. I found very helpful guide (specially the handsbook), but in some topics it's too "light". I'm looking for some text for improve my skills or other help. Thanks in advance
 
i'm looking for the best practice for partitioning for example and understand how filesystem hierarchy is organized.
 
I'm looking for the best practice for partitioning for example
There's really no "golden rule" for this. What works for me may be absolutely unworkable for you. If you ask 10 FreeBSD admins this question you're bound to get 10 different answers. I would suggest sticking to the standard "automatic" install for the time being. At least until you have a clear idea of what you need or what you'd like to change and go from there.
understand how filesystem hierarchy is organized.
That's the aforementioned hier(7). Most important distinction for Linux users, we have a rather strict separation of the base OS and third party software (ports/packages). Ports/packages always use /usr/local as a base prefix. So their configuration files typically live in /usr/local/etc/ instead of /etc/ as is common on Linux.
 
ok, very useful (i don't think to exist a man page for hierarchy in Linux =) ). I have some restrictions for FS Hierarchy, I'm referring for example to SELinux Label (sometimes really hateful)
 
ok, very useful (i don't think to exist a man page for hierarchy in Linux =) ). I have some restrictions for FS Hierarchy, I'm referring for example to SELinux Label (sometimes really hateful)
The similarities between Linux and FreeBSD are greater than the differences!

In the physical file systems, Linux has /boot as a separate (ext2) file system. FreeBSD does not -- /boot is a directory the root. You still have to make your mind up about separating the root from /usr, /var, /tmp...

On FreeBSD:
  • The Handbook is always a good place to start.
  • /etc/rc.conf is where you start configuring most things to happen at boot (with environment variables). The action happens out of the scripts in /etc/rc.d.
  • As mentioned above, don't forget to look in /usr/local for things you might expect to find in the root -- it's something I regularly forget to do, even though I have been using FreeBSD for more than 20 years.
  • Take a close look at the periodic stuff. It automates most of the housekeeping in ways that will probably surprise you (but you need to make the effort to configure it).
  • There are only two native native file systems you are going to use on disks -- ufs, and zfs.
  • Use the package manager, pkg(8) to install applications (avoid /usr/ports until you understand the "issues").
  • You are going to miss lvm(8), a lot, but the upside is you get zfs(8).
  • You also get GEOM for various RAID options, without zfs.
  • The traditional gvinum(8) volume manager is pretty much out-dated by zfs.
I think that the Linux LVM is much easier and more intuitive that vinum. However zfs takes you to a completely new place, but you might want to tread carefully with zfs if your file systems are routinely more than 80% full.

In regards to SELinux, I'm tempted to comment about risk management, but will pass. As with Linux, you can make and mount as many file systems as you want on FreeBSD systems (so the file system structure should not be an issue).
 
I have purchased a copy of "The Design and Implementation of the FreeBSD Operating System" by Marshall Kirk McKusick and I like it a lot. It's very informative, going it quite a bit of detail but still understandable for me (not a kernel developer).
 
"Absolute freeBSD" is good choice.
but did you read "Absolute OpenBSD " from the same author? I find is more interesting than "Absolute FreeBSD".

I red "Absolute OpenBSD" a few years ago. Before becoming a FreeBSD user. I agree with you that the OpenBSD book is better than the FreeBSD one. One the other side, OpenBSD is considerably slimmer than FreeBSD so making a book out of it is simpler and the book will be more compact.

These things, AFAIRemember, make OpenBSD "easier" to deploy just after install.

-] OpenBSD comes with only one firewall : pf (FreeeBSD has 3)
-] It has by default a nice shell : ksh (FreeBSD comes with csh, wich probably you will not love
and you will want to change it for your default user)
-] it comes by default with an editor for Emacs people which is "mg" (in FBS you need pkg)
-] it comes by default wih Perl installed (FBS, use pkg)
-] it has dhcp server by default. (FBS, use pkg)
-] It does not have the Linux compatiblity layer (in FBS has it and that opens new (wild) world)
-] ... it should have by default a web server, but i never used it.

==> These make OpenBSD ready to deply just after the install *if* you
want to do build a classic network service : NAT, dhcpd, firewall, VPN, Web ....

In FreeBSD you need to do some tweaking to adapt the system to your preferences, so making a book on it becomes more complex.

I have a list of things to perform just after I install each FreeBSD instance.
[0] configure network
[-] install mg, [-] install Emacs, [-] install bash, [-] install ruby [-] install pry.
=> Then I fix the configuration files and start to adapt the machine to what it needs to do.

bye
 
FreeBSD forums are a great reference for learning many things about FreeBSD too, I learn many things here because many users test it and use it.
 
Back
Top