Read the handbook and learn how to build maintain and update your ports, kernel, and base system.
Read man pages
hier() ports() and
tuning()
for extra credit read these man pages:
rc() rc.conf()
Further extra credit. Build various server types (http,mail,database,dns) inside jails.
For a book recommendation I can honestly say looking over my vast library( I collect tech books =) )
Kernighan's UNIX Programming Environment is probably one of the first books anyone should ever read. It's short and succinct and will gently take you from beginner to intermediate to advance. All in one book =)
The book is pretty old at this point. It has a simple tutorial on
ed() which you may find interesting but should consider a modern editor instead. vi isn't covered so you need to learn that elsewhere. You might get a chuckle when it let's you know that
ctrl-d will log you out but if you'd like you could simply hang up the phone. =)
Non the less it covers everything you need to know about the shell. From common commands (now posix) to pipes and redirection and here files. filters are covered with the usual suspects that came after ed - grep -> sed -> awk. very good info on bourne shell scripting.
For more modern tutorial From Bash to Z Shell is nice as it shows more interactive stuff like shell history manipulation and zsh completions. But does not come close to Kernighan's book on basic usage of the system and tools.
I recomend both these books. But read the first one regardless.
~