Best Training in Linux Administration?
Love to Learn Linux asks: "My company is making the move to Linux. I've been a Windows admin the last 5 years and have been asked to learn Linux. I've got some O'Reilly books but I need some hands on experience. My company will pay for any Linux training I choose. I'd prefer an online course to one of those 4 day classroom courses since I'd like to take my time and really learn it.
So far, I've been recommended the Red Hat eLearning course and the O'Reilly Learning Lab. Would you recommend either of these over the other, or are there some better choices?"
Install Linux at home. It's the best training you'll ever get. And then switch over your best friends and finally your grandparents. You'll be a pro in no time.
Yes, some people mock Gentoo, but installing it is once of the best linux learning experices I've ever had. Even if you don't end up running it, it'll teach you a good bit about the internals. The documentation is pretty good as well.
Set up a firewall, web server, mail server etc, play with the hardware, reconfigure the things, set up raid, lvm, etc.
Nothing beats hands on, and nobody I've interviewed for a sysadmin job (and I've done quite a few recently) who didn't have a setup at home was any good.
-- Alastair
I did a 6-day bootcamp style training session with TrainingCamp. I successfully attained my LPIC-1. Out of the 6 people in my class 2 (including myself) had previous Linux experience and we both passed, the others failed. However, having many coworkers and friends that are teaching themselves linux, this would have given them one of the best starting points around. Highly recommended no matter what your skill level.
Personally I'd recommend the RedHat training.
This will be more of benefit to you if you actually are going to use RedHat, but of course the general principles will apply.
If I were you, I'd also get Linux on a home machine and start "fiddling" to get up to speed.
Maybe install Vmware or a similar product so you can try different things.
Personally I took a leap and went from Windows to Gentoo linux and never looked back!
Good luck with it.
You could dual-boot an existing Windows machine or run VMWARE so you c
Games Programmer And Designer
If I were you I'd stay away from an online course. From what I've found, they usually aren't much better than just reading and doing reseach on your own, the only diffrence is that they have exams and it adds to your GPA. Perhaps you should find a real class of some type (perhaps one of those weekend campy type deals) and get some real world hands on experience.
In addition to whatever training you want to do, audit your office for its current tech needs. If time is short, you might not want to spend too much time studying minutiae unrelated to your future tasks -- some of that time can be put to better use preparing for the switch away from Windows.
Just a thought.
--------
Bleah! Heh heh heh... BLEAH BLEAH!!! Ha ha ha ha...
These days it is difficult enough to get training (at least in the corp America I work in) let alone offsite. A whole week to do nothing but dig in and learn. Take it... then on your own you can always do self paced work and such... it's a win-win.
Good Luck!
I
Ask a friend o someone else you know that has some experience to share it. People who love linux often love it because they learned it as hobby and those are the people who usually like to share the knowledge and help others learn it. But if the company has the money to spend, give that a try. Also read through the HOWTOs those helped me.
It seems quite a few geeks are recommending hands on experience as the way to go for learning linux. At risk of sounding like an offtopic troll, I would also recommend hands on as a way to learn about girls. No, not hands on *that*! Hands on the girl!
I bet that I now lost my reputation for being a geek.
Don't waste your vote! Vote for whoever you want, unless you live in a swing state it won't matter anyways
Seriously, get your co to pay for training in the most interesting setting they'll allow, where you can score a free lunch.
If you have time to "take your time", where you'll really learn is by installing at home. Have the co fork over for VMWare, and set yourself up with a nice virtual network on your home machine. You'll learn way more than through any online training course. You may even want to do this for a few weeks before starting the official training course.
This is a little off beat, but if you're totally new to unix, it might be helpful to nab a copy of Solaris x86 and put that in a vmware machine. I hate to admit this, but when I was starting I had a hard time understanding the linux man pages. The Solaris documentation was just luxurious, and the main options for commands pretty much the same. It used to be (maybe still is) free so you can probably get a copy someplace.
Good luck.
Kill, Tux, kill!
By picking the hardest distro such as an older Slackware (don't knock the new ones), you've essentially master-micro-managed all aspect of Linux administration in virtually no time.
It's no different than mastering the DOS 3.3 command set and scripting; just [infinitely?] more commands scripting, languages and widgets at your disposal.
If "someone" recommended Red Hat eLearning, I assume your company is adopting Red Hat? At the outset eLearning might be a reasonable choice, but if you really want to understand Linux, you'll probably want to laern more than just the Red Hat way of doing things. Experiment with Fedora or Red Hat 9 at home; then, after a few months, test a distribution that doesn't rely centrally on RPM and you'll gain a new, edifying perspective.
In your work lab get 2-3 computers. Set up a linux box as a DHCP and DNS server, then maybe add apache, samba, etc. These are the things that you'll likely be using linux for in the enterprise, right? You can play with firewalling and IPSec if that is your thing too.
After the initial install, go here to learn the rest:
The Linux Documentation Project
The basic sysadmin guide there will give you the basics, and the specific howto's are great for setting up DHCP, DNS, etc.
Another good guide:
IBM Linux Newbie Guide
Set up that small net, play, learn, then go to your class and learn a lot more.
Have fun!
Roll your own using http://www.linuxfromscratch.org/
I've found most distros have thier own GUI tools to simplify configuring your system but all these tools simply mask what's going on underneath where everything is really just shell commands and scripts strung together. When the GUI fails what you want to do, you're lost without knowing what goes on underneath. Beyond that, if you become familiar with Redhat tools and GUI and your work installs Debian you're starting over. I'd also reccomend learning Bash shell scripting which is the ultimate in telliing your Linux system what to do.
for an example of what's been done with Linux from scratch check out ByzantineOS
"The Most Fun Possible on 4 wheels" is at SunBuggy in Las Vegas
and sandbox your activities in it. If you can get your hands on 3 or 4 pc's and a cheap hub, you can get very far.
What you want to concentrate on are
*auth services (pam, unix, nis, samba, ldap, etc)
*mail (set up a few MTA's and try some different configurations)
*name services (dns - probably where you should start)
*shell usage (this takes a while)
*routing and firewalling
*printing (cups, samba)
*samba
Set aside a few tasks for yourself and star trying to do things. Stay simple at first, then work your way up to bigger things.
Though I don't see how the boss asking you to learn linux is much of a motivator.
Depending on how complex your network is you might even be able to get the company to fund a "model city" at work in a spare room.
You can use local sources to buy outdated computers, used switches, hubs, routers and etc to build a "dumbed down" low cost clone of your current network which will allow you to learn using it just like the real network, heck even the same IPs if you're going to put that much effort in. You can practice deploying software, using the systems etc. You might also want to get exact (sans-serial-numbers) clones of key servers if possible so you can test things very carefully.
It's a great way to learn but it'll really help to have a guru to get you going.
Find the local Linux User Group and get involved, make friends and then pester them on IM.
I honestly can't recommend a training program, though perhaps others can. I would keep it in line with the Linux your company plans to deploy.
But *in addition* set up a small network at home. Set it up as a mini-professional network, not a slapdash home network. You never learn like you do when you're doing, too.
But managers like Certifications, so I wouldn't suggest shorting out the course. Besides, some problems are related to scale, and you won't touch that on most home LANs. Book learning and practical learning can work together.
I'll second what someone said about Gentoo. While you want to deploy what your company uses, it wouldn't hurt to install a Gentoo box. Gentoo has very little handholding, and the install teaches you more than other installs. I wouldn't make Gentoo your first install, or even a particularly early one, though.
The living have better things to do than to continue hating the dead.
- Take advantage of an off-site "bootcamp". They won't make you a Linux SysAdmin, but they will give you a very good head start and are a good introduction to Linux. Let someone coach you through the first installs in class - you'll get plenty of opportunity to beat your head against the wall on your own later.
- Definitely set up systems at home. The best way to learn is getting your hands dirty and using it every day. I'd also recommend using it as your primary workstation right off the bat at work; drink your own champaign, so to speak. With tools like rdesktop, smb4k, webmin and OpenOffice.org your should be able to do everything you need to do while you learn.
- Build a good reference library. You've already mentioned O'reilly - they're great, but also build up a library of bookmarks and make friends with google!
- Try many different distros. Everyone you ask will tell you difinitively which one is best. Don't take their word for it, find out for yourself. Besides, my recommendation for a desktop distro for my budy isn't the same as the distro I'd use for myself, and that is different still from the distro that I'd run as a web- or file-server, etc.
Personally, I'd not spend my time, initially, on an online course. In my experience, you're better off starting out in an environment where you have someone in meat-space to bounce questions off of and get answers immediately. Once you know your way around Linux a bit, then pick some specific goals or projects (set up a mail server with DNS, set up a webserver with secure areas and cgi scripting, etc.). Just going through the process of downloading the latest apache and compiling it from source (and forgetting to compile in certain functionality or having to go hunting for supporting libraries for a function you're missing) will give you invaluable insight into the whole process of fine-tuning and customizing your Linux boxes to really make them perform as you want.And if you don't know perl and php, learn them! Windows admins don't naturally think of scripting something right off the bat, at least I didn't. Now, "how can I script this?" is the first thing I ask if I find myself doing the same thing more than once. I've even loaded ActivePerl onto my Windows Servers and have my entire user and group management process scripted. over 18,000 users are created, placed in groups, have their home directories created/moved/archived, etc. based on data gleaned from HR's databases. I used to get lists of hires, fires and transfers and have to manually manage their accounts and data. Not any more. A couple of perl scripts and an Active Directory perl module with a little Win32::OLE thrown in and I spend my valuable time doing more important stuff (like post on /.)
Anyway, this is free advice, which means you get what you pay for ;-) Welcome to the club!
"terrorism" and "pedophilia" are the root passwords to the Constitution
Yes, everyone I know who is best at Linux is self-taught. But how much time did that take? Valuable lessons can be learned alone, but you can reduce the time it takes by a factor of 10 or more with structured lessons.
I'm talking years here. You can reduce 10 years of lonerdom to 1 year by using structured learning tools. No class is going to teach you to be a guru in 4 days.
I run several machines at home, one of them is a gentoo machine. I like Gentoo, but it will *not* teach you much about being a system administrator. It will teach you about some basics about linux (installing one, to be specific), which I don't believe have much to do with sys admin. For example, bootstrapping your kernel. During the gentoo installation, that's just one command, you run the bootstrap script (I believe it was bootstrap.sh), and off it goes (for the next few hours). You don't really learn anything from that except typing in that "bootstrap" command.
I recommend that you read about real TCP/IP networking, as most Windows sys admins I know don't have the correct knowledge about networking (they only know it in Microsoft terms). O'Reilly's TCP/IP Network Administration is a good book, so is Linux TCP/IP Network Administration by Scott Mann.
Get comfortable with command line. I know many Windows sys admins who fear the command line tools. Most linux programs now have GUI counter parts, but to really get the most out of a tool, command line is still your best friend. It also will make remote administration a lot easier for you.
Find out what distribution you will be using, and join the user mailing list(s). Also get familiar with package management of your choice (RPM, DEB, or source). As a sys admin, you will quickly find out that custom compiling everything will become a nightmare to maintain. For me, I build everything into RPMs, even if it's just a single file script. This makes administering multiple machines much easier.
There's nothing that even comes close to having a hardcore hacker as a good friend. Information is quickest gained through other people's personal experience.
I've done it all. I've read a whole series of O'Reilly books (don't even bother with any other publisher) on various Linux and Network related subjects--I've read at least 25 of them cover-to-cover in the last 4 years. I have a whole bookshelf lined with them.
Then I subscribed to O'Reilly's Safari online program, and will never again be without it. I'll never have to buy another tech book again. If you can tolerate reading books online, getting a subscription is an ABSOLUTE must. And if you buy (or would like to buy) an average of more then two or three books a year, this will save you loads of cash. You can read up to about 60 books a year for $10/mo.
However, when you need to come up to speed as quick as possible, by far and away the best resource is a friend who knows it all. Install Linux on all your computers, and play with every piece of software you may be even slightly interested. Read all the books, read all the man pages. Write a few scripts in Bash, Perl, Sed, Awk, and anything else you hear about. And when you get stuck (and believe me, you will), call up that friend or drop by his desk. You'll be an expert faster than you can immagine.
It's the little things, you know, that make you an expert. Anybody can copy files to another computer, but if you can come up with something like
off the top of your head, then people will start feeling the respect."With sufficient thrust, pigs fly just fine. However, this is not necessarily a good idea...."
RFC 1925
I cannot recommend LFS highly enough... http://www.linuxfromscratch.org/ 'nuff said
Take their distro agnostic Linux courses. I have never been better educated than by IBM (That was in the OS/2 days)
Anyway, the disto agnostic approuch seems more usefull to me than a red hat cert.
"/Dread"
In addition to choosing a difficult distro to start with, pick up an older unix book. Something mid-80s or earlier. Why? Those books have more useful commandline tricks, simple stuff that is often overlooked in the modern day age of pointy-clicky. Scrounge your used book stores for a copy of "A Practical Guide to UNIX System V" for starters. I also scored a whole accounting box full of HP-UX manuals awhile back, many many neat tricks, mostly forgotten shell script kung-fu. You'll quickly pick up what still works and what doesn't. Basic commandline zen goes lightyears, especially if you plan to work with other variations of *n?x...
Hell, just install FreeBSD and bookmark the online handbook...
When encryption is outlawed, ou++1!@(93j++js-d9298yIUH(*Y24JKB!~
I would recommend you start with Gentoo and move to Debian or Suse.
Before I'm modded flamebait, here's why:
1)Gentoo has some of the best install documents in the Linux community
2)It requires that you set up a lot of things by hand (system logger, kernel if you choose expert, etc)
3)It has some of the best forums/support around. Even Gentoo critics admit this.
After you get gentoo working on your box, wipe it and reinstall. After the fourth or fifth time, you'll actually have learned something. Then wipe and install Debian:
1) Debian has the largest volunteer following.
2) Deb has one of the simplest updgrade paths
3) If you choose stable, its old but very secure.
4)Suse is pretty darned awesome, too.
5)Then make a customized patched kernel for the heck of it.
Just my two cents. I took the Gentoo->Debian Road for the simple reason of learning and it helped.
There is a Universal Life Value Check it