# Recommendation for FreeBSD online school



## jt202 (Apr 10, 2010)

Ive been trying to learn FreeBSD on an off for years. I always run into the same brick wall, when I have questions and try to access different formats on the net, Like chat sites on IRC, I get high school kid crap and dont learn ANYthing. 

Heres what my main goal is. A small business. I want to run a server to lease out web space and do domains and the basics. I understand FreeBSD has the best security and is best for the job at hand. Also PHP and so on.

I need to find an online school or college for FreeBSD. I've been searching with no luck so far. I was hopeing I could get some suggestions here.

Thanks in advance


----------



## Caliante (Apr 10, 2010)

I don't know about that, but I can recommend you two very good books:

1. FreeBSD 6 Unleashed
2. Absolutely FreeBSD

(In that order as far as I am concerned).

Those two, combined with the online handbook on freebsd.org + this forum should get you somewhere (says I, as a noob myself ).


----------



## fender0107401 (Apr 10, 2010)

Just read the handbook and don't waste any time before you master it.

Read it carefully and be patient.

If you don't know howto install freebsd? read chapter 2

If you don't know whoto install software? read chapter 4

If something confuse you, ask here, many people will help you.

A long time ago, when I started try to learn the Unix-like OS(Debian GNU/Linux), someone recommended me use windows many many times.

But I didn't give up for that recommendations.

Now, I run FreeBSD as my desktop.


----------



## gilinko (Apr 10, 2010)

Although FreeBSD is good for this, I suspect that what you need more is the general knowledge about DNS, webserver software, network topology, email(sendmail), backup strategies etc, as this is not specific to FreeBSD. 

Most universities have CS programs, and that is what you probably should be looking for in terms of "official" education and courses. But in my mind there is nothing better than to dive in and start using the software and reading the manuals and any tutorials found on the web. I would say that I could start a businesses like this after close to 10 years using *nix systems and their clones/derivatives, so the primary thing you would need is time or hire someone to do that for you while you learn.


----------



## jt202 (Apr 10, 2010)

fender0107401 said:
			
		

> Just read the handbook and don't waste any time before you master it.
> 
> Read it carefully and be patient.
> 
> ...




Thanks for your responce.

Over the years on an off, Ive have used the handbook and all. Just that it doesnt explain in detail what Im doing. It took me like 3 times just to get the install correct. My problem is, I have no-one to ask questions too. Well, in forums like this, and IRC chat channels, Its frustrating because most of them are, Im assuming young teenagers. I get more insults and high school Makeings fun of, Than I do getting answers. Im 54 years old serious about starting a business. Doing this by just reading, with no one to help has discuraged me every time. And haveing a bunch of kids laughing cuz someones new at it, is counter productive.

So Thats why Im seeking a school. Or at least an expert that will help with questions. I'm in a small town in Alaska and most here never heard of unix, much less any other OSs for it.

Again, thanks for your help. I appreciate your time


----------



## jt202 (Apr 10, 2010)

Caliante said:
			
		

> I don't know about that, but I can recommend you two very good books:
> 
> 1. FreeBSD 6 Unleashed
> 2. Absolutely FreeBSD
> ...



Thanks for that advice. Ill look into those.


----------



## jt202 (Apr 10, 2010)

gilinko said:
			
		

> Although FreeBSD is good for this, I suspect that what you need more is the general knowledge about DNS, webserver software, network topology, email(sendmail), backup strategies etc, as this is not specific to FreeBSD.
> 
> Most universities have CS programs, and that is what you probably should be looking for in terms of "official" education and courses. But in my mind there is nothing better than to dive in and start using the software and reading the manuals and any tutorials found on the web. I would say that I could start a businesses like this after close to 10 years using *nix systems and their clones/derivatives, so the primary thing you would need is time or hire someone to do that for you while you learn.



I was concisering hireing out as well. But I dont like the idea of my employees knowing more about this than I do. I know Ill be hireing later. No doubt. 24 hour bussiness needs a few people to run. But I want to know this stuff in an out and sideways before makeing the financial plunge.

Thanks for youre recomendation.


----------



## paean (Apr 11, 2010)

As someone who also tinkered with BSD over a number of years, but never fully dove in until recently, I would recommend the school of hard knocks. Install FreeBSD on a machine and don't use any other computer unless it also has FreeBSD. Like learning a new language, there's no beating immersion. If you have absolutely no other options, you will learn many times faster because you have no alternatives.

I understand what you're asking, but there is no FreeBSD formal training (that I'm aware of anyway). Those that don't use the forums, mailing lists or the handbook probably have a job where they are mentored. You could stimulate your learning experience by aiming for a BSD Certificate, but the "courseware" is really handbooks and man pages. 

If you'd like to add a book to your list, FreeBSD Hacks deserves your attention.


----------



## beesatmsu (Apr 11, 2010)

r u sure you can make $? I tried to do that many years ago. when website-hosting were like $400 month...now it is like $5...do not know how they make money...I did my own DNS, web and email. I still do not know a lot of things about freebsd after all these years...


----------



## SirDice (Apr 12, 2010)

jt202 said:
			
		

> Over the years on an off, Ive have used the handbook and all. Just that it doesnt explain in detail what Im doing. It took me like 3 times just to get the install correct.


You won't believe how many installs I screwed up over the past 10 years. That's how you learn, by making mistakes.



> My problem is, I have no-one to ask questions too. Well, in forums like this, and IRC chat channels, Its frustrating because most of them are, Im assuming young teenagers. I get more insults and high school Makeings fun of, Than I do getting answers. Im 54 years old serious about starting a business. Doing this by just reading, with no one to help has discuraged me every time. And haveing a bunch of kids laughing cuz someones new at it, is counter productive.


I think the average age on this board is about 35-40, not really a lot of teenagers here


----------



## troberts (Apr 12, 2010)

*man(ual) pages and examples*

FreeBSD has excellent documentation which you should take advantage of in your quest for knowledge. When you want to learn about a configuration file just type "man" and the name of the file. As an example, if you wanted to learn about /etc/rc.conf, you would type

`# man rc.conf`

and it will display information about the file. You will use *man* to get information on the various ports/packages you install, but that documentation is dependent upon the people maintaining those applications so it is hit-or-miss. Some applications will have its manual/documentation in a help file accessed through the 'Help' menu or its web site.

At the bottom of the man pages there could be a "SEE ALSO" section listing more man pages, usually with a number in parenthesis at the end such as, chmod(1), fstab(5), etc. Including the number in your man search will either go directly to that section of the documentation or only display that section of the documentation. You put the number between the command and file like so:

`# man 1 chmod`
`# man 5 fstab`

/usr/share/examples is where you need to go for examples on what can go into the various configuration files. Not all files have an example and some examples are copies of the default files that get installed with the system.

If you did not already know, http://www.daemonforums.org/ is another great *BSD site.

I found a link to this site, http://www.bsdguides.org/guides/freebsd/security/harden.php, in the "Hardening FreeBSD" post in the "FreeBSD Security" section on the daemonforums web site. It also happens to be one of the "TOP GUIDES" on the home page of the BSDGuides web site.


----------



## jt202 (Apr 12, 2010)

Thanks everyone. I appreciate the advice. 

Since thern Ive been contacting schools and colleges all over and some teach linux and some teach unix. Im just kinda surprized there are no schools that teach freebsd. Being that Ive seen plenty of hi end busineses that use it.

The time you guys speak of to learn this on ones own, as opposed to doing hourly lessons. Not sure if I can handle the time load. I got like 3 and 4 jobs I work at :/

However I'll get those books and use my old machine for a test dummy. Worst that can happen is getting laughed at for stupid questions I reckon :/


----------



## phoenix (Apr 12, 2010)

There are training courses available for FreeBSD.  Not very local to Alaska, but they are available.    Don't know of anything specifically for online learning, though.

A great book to get to know the inner workings of FreeBSD and how it all works together is Greg Leahy's The Complete FreeBSD.  It's out-of-date (covers FreeBSD 5.x), but goes into great details about the user side of FreeBSD.  I started out with the first version of this book, covering FreeBSD 3.1, and found it to be absolutely invaluable to learning FreeBSD 3.x and 4.x.

There are lots of books available that cover FreeBSD 5.x and 6.x.  Not sure if there are any that cover 7.x, and almost certain there are none that cover 8.x.

Other than that, there are lots of good websites for FreeBSD beginners.  Dru Lavigne's FreeBSD Basics is a good place to start.


----------



## fronclynne (Apr 13, 2010)

Taking a Unix course wouldn't be a complete waste of time.  Nor a Linux course, for that matter.  I learnt what little I know from a combination of trying and failing a lot, and an obsolete* textbook** that pretty much only covered DOS, Unix, and MVS/VMS.  And the handbook, obviously.


* At the time, it was almost 9 years old, which is an eternity in the computer world!  By 1996 OS/2 will rule the business world, and massively parallel computing will be on everyone's desktop in a tiny, RISC package.  Those BBN kids know where it's at.

**To draw this back to the Minix thread (make your own link, I'm tired): the OSI model will soon obsolete TCP/IP.


----------



## RedGhost (Apr 14, 2010)

If you want to test your knowledge you could become BSD certified: http://www.bsdcertification.org/

There are exam locations all over the world and I am sure they have various resources on their website.

As previously mentioned there are also various books:
Absolute FreeBSD: The Complete Guide to FreeBSD, 2nd Edition
Building a Server with FreeBSD 7
BSD UNIX Toolbox: 1000+ Commands for FreeBSD, OpenBSD and NetBSD


----------



## chavez243ca (Apr 14, 2010)

Honestly, you are going to pay good money for post secondary level classes that may be *nix related, but not BSD specific and what you will get is some introductory theory, maybe a little hands-on lab time and still find yourself scratching your head staring at a hash prompt.

Trust the wealth of experience in here, if you want to become adept at BSD administration, use it, use it, use it - read the handbook, the man pages.  I started with SCO Unix in the mid-to-late 90s, dabbled with some linux and then latched onto BSD 4.x and never looked back.

along with some of the other resources mentioned, I've used http://onlamp.com/bsd/ alot over the years.

needless to say... I'm not a teenager either


----------



## Anonymous (Apr 14, 2010)

So basically you're trying to start a business in an area you have absolutely no experience in and you're wondering why you're getting made fun of?


----------



## jt202 (Apr 15, 2010)

mharvey87 said:
			
		

> So basically you're trying to start a business in an area you have absolutely no experience in and you're wondering why you're getting made fun of?



Im glad this guy piped in. A perfect example of what I was talking about earlier. 100% counter productive responce

This is definitely the best group of all the forums and channels Ive visited. In 18 or so posts, good informative advice. Great suggestions and recomendations. Only *ONE* that had to be a smart ass. But at least confirms what Iâ€™ve been dealing with over the years. Got to be one in every crowd I guess. In this case Only one fortunatly  In most other places its an exact opposite ratio.


----------



## jt202 (Apr 15, 2010)

Im going to assume the Avatar is the dude's real Photo? Or mabey thats 2 or 3 years younger or so?


----------



## DutchDaemon (Apr 15, 2010)

No need to get personal, guys. That goes for everyone. Stick to the topic.


----------



## bojan (Apr 15, 2010)

It sounds like you don't have time to learn all the advanced admin stuff to be able to run Web hosting business from bare-bones system. Why not get shared/managed host running FreeBSD from existing hosting company, which has installed cPanle, Plesk, Webmin or other front-end tools which will help you admin, all the web space, email and DNS settings for your customers with few clicks. This will also introduce you about all these protocols and how they work on the Internet.

In mean time you can learn stuff so in the future you can manage your own bare-bones FreeBSD server and move your customers.


----------



## jt202 (Apr 16, 2010)

DutchDaemon said:
			
		

> No need to get personal, guys. That goes for everyone. Stick to the topic.



My sincere apologies. I generally donâ€™t reply at all to those types of replies. Got a little carried away.

Thank you


----------



## jt202 (Apr 16, 2010)

bojan said:
			
		

> It sounds like you don't have time to learn all the advanced admin stuff to be able to run Web hosting business from bare-bones system. Why not get shared/managed host running FreeBSD from existing hosting company, which has installed cPanle, Plesk, Webmin or other front-end tools which will help you admin, all the web space, email and DNS settings for your customers with few clicks. This will also introduce you about all these protocols and how they work on the Internet.
> 
> In mean time you can learn stuff so in the future you can manage your own bare-bones FreeBSD server and move your customers.



Now thats the best one yet. I did get far enough to use cpanel and plesk. Which was a breeze. Thats the ticket. I can still learn while useing a managed server. Still need to get familliar with DNS and domain stuff.

Thanks for the suggestion


----------



## Anonymous (Apr 17, 2010)

If you want to learn DNS in less 24 hours do this:
-Read Wikipedia article on DNS
-Read one of the main RFC's on it
-Find a good online reference to DNS headers
-Read handbook chapter on DNS
-Use the handbook to practice setting up a master, slave, and caching DNS server
-Download wireshark and scapy, then do some experimentation

You are also going to need to learn about apache, specifically virtual hosting.


----------



## leopard (Apr 17, 2010)

Seems to me like you haven't really thought about what you expect to get out of taking a course in FreeBSD. Unfortunately it's entirely possible that you finish the course with a certificate saying you are competent at administering a FreeBSD system when you really aren't. I'm not implying that you wouldn't do well is such a course, just that there are so many factors that may prevent you from achieving your objective of learning to administer a FreeBSD system, like the quality of instruction, the quality of materials, the amount of time you have to devote to the classes, to doing homework, etc. It's my opinion, like some other guys on here, that if you're planning on devoting your time to learning about networking fundamentals and the standards that apply them, like TCP/IP, DNS, etc. Because once you have the fundamentals, learning to manipulate them with the tools (i.e. FreeBSD, Linux, whatever) will be much easier. It's better to learn how to build the house before learning to swing the hammer. Just my 2 cents.


----------



## bloodtears (Apr 23, 2010)

Caliante said:
			
		

> I don't know about that, but I can recommend you two very good books:
> 
> 1. FreeBSD 6 Unleashed
> 2. Absolutely FreeBSD
> ...




Hey I have recently borrowed (the book is a bit too expensive for me to purchase... for now) _Absolute FreeBSD 2nd Ed._ and I feel it is a good book with lots of clear and easy to understand explanations. It is quite up-to-date (based on FreeBSD v7) too. And most importantly it has solved some of my problems with FreeBSD 

I use the handbook for the installation and getting things to work, and will turn to Absolute FreeBSD if I want a more elaborated explanation on certain topics. Hence maybe you will want to get hold of the book too and see if it can clear some of your doubts?


----------



## GhettoBSD (Apr 24, 2010)

When I first inquired about FBSD in the mid 90's I was told "It's like windows... you wouldn't understand."

Well, at that point in time I had 0 use for any BSD. But as time went on it became appealing.

From having come across VERY generous people who 'guided' me along my path of learning I didn't learn much by way of free shells, free books (old copies), or even on-line reading at that time.

I tried to learn it and guess what I did? While installing as dual-boot with windows 98 I messed up my windows partition. Very discouraging as CD burners were very expensive and media prices were still ridiculous. So needless to say, I f'd up pretty bad. With no way to fix it.

Since then, I have learned quite a bit - the hard way. While I still don't know everything (who does right?) all I can tell you is my experience.

The end result of learning BSD was to:
1) Host my own web site (for 'scripts' I wrote for mIRC)
2) Run my own DNS to do rnds on the fly.
3) Provide e-mail services and shells free of charge to select individuals.
4) Provide free web hosting to select individuals.
5) Runs BSD as a desktop OS
6) Provide network shares compatible across the network
7) Lots of other things I can't think of at the moment (it's Friday!)

What I did:
1) Bought the FreeBSD Power Pak that came with 12 CDs and "The Complete FreeBSD Handbook) (AKA the bible).
2) Did a lot of reading (my fav. entry: "Then magic happens.")
3) Ask a lot of questions.

I agree with what others have said about taking "classes." You will be certified to administer a system, but you won't know how. I had 1 friend in particular who ended up choosing IT as his career and took all the crash course certifications. It's scary to me that he ended up configuring networks (even though they are windows based) when he didn't fully understand what he was doing. (As an aside, that friend took credit for my hard work when he was applying for work!)

As for what you want to do:

1) A small business (that's easy)
2) Lease out web space. That is easy, install apache, enable FTP, a little security detail and you're set. But that's not it, now you have to help people out who have no idea what they're doing, specifically in pointing their domain to you. Things to keep in mind: they need to restore mail they've "lost" (deleted), they messed up their website and need your help (backups), they have x issue with n language (php, perl etc).
3) So you want to make more money by installing more free software and handle the DNS yourself? Yikes. I've never met anyone who said learning Bind was "easy." So I won't lie to you and say that it is. If you want to use it at it's most basic setup you can do it without having to read a lot. But if you want to take advantage of what it can do, be prepared to be humble and ask for help when you can find what you need by reading. Also have a good way of updating your entries (search for updating conventions).

You mentioned security, historically FreeBSD has had a lot of, 'vulnerabilities' in the past. It depends on your needs really, if you're paranoid then move to OpenBSD and work backwards. If you want to put in a lot of elbow grease and LEARN how to make Fbsd secure then this is the OS for you.

You probably come across a lot of negative opinions because you're asking for help on something similar to "how do I build a house from scratch? I know how to use a saw and a power drill, but not a power saw." You can jump right in and fairly "easy" enough to set up what you want, but when you have customers to deal with who pay you money and you can't figure it out yourself, you're going to be in trouble.

What I recommend, is set everything up for yourself. Get a domain, website, maybe secure transactions (if your customers might need them) and see how that goes. Install a forum and a blog, common things people with sites do. If you feel like you're in over your head then quit. If you don't have a "that's too hard for me attitude" then keep at it and you will figure it out (right guys?).

Also, I recommend you learn how to do everything in console. Now to make my life easier for some things I use something similar to Webmin. But if I didn't know how to do things in console, I would have problems! Some examples I'm talking about:
You can use webmin for configuring apache, ftp and even users/groups.
In console you can write small scripts that can help you rotate logs, clean up the system and perform basic checks on a schedule (cron).

Worth mentioning again is Bind DNS. Not the easiest thing to learn in life. Also worth mentioning is sendmail. If you can't hang, don't even start. I recently had a problem with an install and it turned out to be a blocked port 25 on the ISP's side. But because of the errors it was giving it wasn't something I thought was the problem right away. So be prepared to bang your head on things for a while until it gets sorted out. Although I recommend asking for help, don't expect people to be able to help you out every time (for example, my authentication settings for samba 3 with window 7 clients - a windows 7 problem).

A note about me and my story: GhettoBSD = hand me down and outdated hardware. My network consisted of 3 FreeBSD servers and 2 windows machines. I had 33mhz intels that ran 66mhz on turbo and currently useless amounts of ram. I was in awe when I saw what such lowly hardware specs could accomplish when the latest and best was 133mhz. Since then I've upgraded and even run my 'server' on a intel d510 dualcore atom (for power saving efforts). And to this day I spread FreeBSD goodness under the name of GhettoBSD and even current have set up 2 servers at my clients location (they're windows based though they use linux-based devices and servers). Little by little they see what BSD can do and maybe even one day, replace "windows advanced servers."


----------



## carlton_draught (Apr 24, 2010)

jt202 said:
			
		

> Ive been trying to learn FreeBSD on an off for years. I always run into the same brick wall, when I have questions and try to access different formats on the net, Like chat sites on IRC, I get high school kid crap and dont learn ANYthing.


This (how to ask questions the smart way) has been one of the best pieces of advice anywhere for me on how to get what you want answered in the FOSS world. Read it, internalize it.


> I need to find an online school or college for FreeBSD. I've been searching with no luck so far. I was hopeing I could get some suggestions here.


Some awesome replies here already. *Course vs DIY* - you want to do something specific with Unix. So does everyone else. Expecting a generic course to cater to everyone's needs (especially your own) is not very realistic. Someone creating a course does not know what everyone needs to know. They do not have perfect market research to find what are the most common needs. They don't have perfect recall as to what were the hard parts of learning what they know. By the time the course is created, it will already be out of date.

It's a bit like taking an automotive repair course vs buying a Haynes manual for your car and learning how to do everything. I've never done the former, but I have done the latter. Now I can change the oil and oil filter, the coolant, the brake fluid, brake pads, etc. If I get stuck I type whatever it is I want to do into youtube, e.g. "brake fluid change". And the thing is, now I've started down that path I see the mistakes that "professional" mechanics make, who probably learned via courses. Spark plugs, oil filters overtightened, and some major screwups I've seen before - e.g. rags left behind the air filter that got sucked into a turbo, and more. Those are just the ones I've found. I shudder to think of the mistakes I don't find, or the short cuts taken that will ultimately cost me money.

It's not that I don't think courses are unimportant, otherwise I wouldn't have an engineering degree. But I think the best learning, particularly for actual systems rather than general principles, is DIY. I knew lots of other engineers in college. I would ask myself if I would hire them - do they look good on paper or do they live and breath their field of expertise? All my instant hires were good at various things by the time they got to college. They were all self-taught in something, be it fixing cars, running Linux themselves, whatever. Other people thought they were good too - some worked for the university running the Unix labs, and all were hired and are making good money now doing actual engineering.

DIY gives you something that courses don't, and that is resourcefulness. Someone who has taken a course on something Unix related will have a set of go-to cookie cutter ways of doing specific things. Once they do something out of the ordinary, they can get stuck. Someone who has taught themselves will just do what they did to learn what they already did. And the thing is, the internet has lowered the bar tremendously for DIY. It's dead simple these days.

*How I do it*
There is of course a lot of very good documentation available for free online or very little cost. It will be specific to your needs. Here is my rough algorithm for figuring out how I do what I want to do with FreeBSD (e.g. set up a soundcard). Note that at any time I discover new information that I know is crucial to what I want to do, or interesting, I start the algorithm again with those search terms, often opening up new tabs in firefox. Often I learn that the way I initially thought to do the problem is not a good solution at all, and this may happen multiple times along the way. Note that my algorithm is easily modified for anything, just replace the forums I search on with other application specific forums you have discovered.

Google what it is I want to do. (Maybe someone has an excellent howto somewhere on some random blog or page.)
Google site:freebsd.org and the terms I want (note that I use "file" tags because it comes out as a smiley otherwise.) Read the links that look interesting.
Google site:daemonforums.org and the terms I want. Read the links that look interesting.
Consult the handbook. This is often worth doing first, especially if it's something not cutting edge. But the first two paths will usually find it anyway.
man pages. If you've come this far, there might be a driver or program related to what you want to do. e.g I've figured out that my wireless card requires the rum driver.  e.g.
`$ man rum`
(hint, type "/" to search, type "n" to go to the next term.
If I don't know the specific man page, apropos is your friend. It will give you a list of relevant man pages that you can then try with step 5. e.g.
`$ apropos sound`
Ask myself would a book have current information? Search amazon and read the reviews to find the best books on the topic I'm after, and if it's current enough. Is it in another book I have? e.g. I have a book on OpenBSD, and a book on "Building Internet Firewalls", maybe it's in there.
Consider how soon I want the information. If it is not time critical, I might ask on the forum. People are more inclined to help if they know that their answer will help other people rather than be confined to irc log wasteland.
At this stage, I usually decided that I can't wait that long and so I try some more iterations of my algorithm from the beginning, with new search terms. Or actually reading something from the handbook or the man page. For example, to learn more about ZFS I printed out the man pages for zpool and zfs. Often I find I solve my own problem if I actually take the time to READ what I have googled.
Ask on IRC, in the manner of the very first link I posted. Think of how you can give back to the community though - maybe write a howto or something, so that some benefit comes from their help, and if you are serious, phrase it that way. And don't expect very much in the way of a response, not more than a line or two. Take what you have given, and apply it through the steps above (e.g. use it as the search terms).

And at the end - DOCUMENT WHAT YOU FOUND. What is the point of going through a process that may take days, weeks or months, only to forget it all again? And consider giving that documentation back to the community. There is a self-interest aspect here too - every time you give back quality stuff (code, documentation, newbie help) to the community, you build your reputation. That's like depositing money in a bank that you can later withdraw from in the form of help when you need it. Nothing is guaranteed of course, but it certainly doesn't hurt.

Some other things - don't bite off more than you can chew. Running FreeBSD straight after windows would have been too hard for me. I started off with Ubuntu after trying various Linuxes and BSD. To do it I ran it as my primary OS, ditching Windows completely. Know which apps you are going to be running first though, otherwise the culture shock will be huge. Then migrate the OS.

Good luck.


----------



## FBSDin20Steps (Apr 24, 2010)

Pretty good reads... Nice one, guys!


----------



## hedwards (Apr 26, 2010)

Ideally you're going to want to do a bit of DIY and formal classwork of some sort. But the times when I've learned the most about FreeBSD was from making mistakes and having to learn how to fix it. Coursework is great in that they can guide you through the basics, but systems administration as well as related IT stuff is as much an art as it is a science. There might be, and usually is, several ways of accomplishing a task, but one way which is significantly less of a pain than the others.

The OP might consider looking at http://www.oreillyschool.com, it's completely online and mostly practical work. It hasn't got anything specifically for FreeBSD, but some of the topics like Perl are definitely useful.


----------



## Ruler2112 (Apr 27, 2010)

I don't know of anything other than what's been discussed here (some great books have been mentioned), but wanted to throw in my experience.

I went to college for 6 years and have 2 degrees in computers from it.  I had exactly 1 class in Linux, and that was one the teacher let me sit in on during my final semester because they'd just created the course.  (Linux had been hugely popular for years at this point; schools generally lag behind quite badly in the technology they teach from my experience.)  After the linux course, I can honestly say that I still had no clue what I was doing.  Of course, I didn't *know* that I didn't know what I was doing, which is worse than knowing that you don't know what you're doing IMO.

I've learned FAR more reading on my own, playing with systems, trying to break into my own systems after I have them built, investigating problems as they come up, etc than I did throughout all my years of college.  If you know how to learn and are willing to read/struggle through things, this is the way to go.  Go pick up an old box somewhere, install BSD, configure it, destroy it when you screw up, then repeat.    I can't tell you how many times I nuked one or more of my computers by doing stupid crap, but I learned from each.  I'm far from an expert at BSD, but I know how to learn and am willing to put the time and effort into it.  I installed and have run a mail server for my company for the past 3.5 years; what I've learned in the process has been invaluable.

With your free time being so restricted, I honestly don't know if this is realistic.  It took me over 3 months to get BSD installed and configured to a point I was comfortable putting it in place for our mail server... every time I thought it was ready, I'd find something else, or something would act strange, or I'd find a way to break in, or I'd read something and figure out a way to tweak the system for better performance or to be more stable or to be more secure or to monitor itself more completely or...  This was working a 40-hour/week job, doing a few hours of other stuff (fixing PCs, repairing printers, etc) but otherwise strictly dedicated to setting up, configuring, and testing BSD on the server.  After doing this and running it for ~6 months, I set up/configured BSD on my home server in a day and a half, and it only took that long because the machine is old/slow (low power) and took a long time to compile the ports I needed.


----------



## carlton_draught (Apr 27, 2010)

Ruler2112 said:
			
		

> Go pick up an old box somewhere, install BSD, configure it, destroy it when you screw up, then repeat.


This is key. You need more than one machine, and more than one HDD. You need one machine to google stuff with, download ISOs and whatever else. You need the other machine to experiment with, and if it gets hosed, it gets hosed. An extra HDD is nice - you can just switch out the HDD so that you can keep one install intact while you try something with the other HDD. Also mandatory are multiple USB sticks, for transferring files, booting, storing config files, etc.

If you don't have a machine or two to experiment with, you won't learn because you will be too scared to break something.


> With your free time being so restricted, I honestly don't know if this is realistic.  It took me over 3 months to get BSD installed and configured to a point I was comfortable putting it in place for our mail server...


I'm glad you said this. It has taken me several months of continuous work to set my machine up, and I'm still going. I had no idea, really. Now I don't feel so bad. It's funny that several months of human labor can be reduced to a few lines of code or config, that can run in a few minutes. 

You might pay the equivalent amount of money equal to your time spent configuring your system to buy a commercial solution... but you won't build the knowledge or the confidence that brings, you need to trust someone rather than knowing, and you won't end up with a solution tailored to exactly what you want.

Also: Don't forget the time spent to spec out your machine and purchase it, if you need to. You won't get that done in a day, or a week even. Then you will be waiting for parts.


----------

