Where Should One Go for Unix/Linux Training?
jwitko asks: "I work for an international telecommunications company. They're pretty enormous when it comes to size/budget so their willingness to send employees to get training and to better themselves is pretty strong. I am simply a student who got lucky to become a part-time contractor with this company and I've loved every minute of it. My job primarily relies on working on Unix platforms and installing/configuring our product on laptops for sales people to go out and sell to telecommunications company's (ex: T-Mobile, Verizon, and so forth). However, before I came to this company I had barely ever even touched a Unix-based OS. This summer, I would like to travel to as many different seminars, lectures, and classes to really get experience with *nix based operating systems and learn a lot more about how to use them. Where are some good places to find ongoing seminars, lectures, etc. in Unix and Linux that you think would really help a somewhat-new guy learn a lot and become more experienced?"
man linux
Your parents basement, 2 AM, with mountain dew.
Thats where the real learning occurs.
RTFMFM...
But seriously, LinuxQuestions.org, and you can google just about any question you want for Unix/Linux/BSD and get an answer.
Right here.
RTFM!!!111
I highly recommend LISA, although if you're truly novice it may be a bit above your level. It wasn't the most advanced training, but it did assume an intermediate knowledge of Unix when I attended in '04. There's a variety of seminars you can attend, learning about topics that interest you or discussing up and coming technologies that your company could/does make use of. I focused on the security track and got to learn some very interesting things that I later applied in my environment (about 150 systems at one point).
:)
It's a by-Unix-people for-Unix-people sort of thing, so not really formal training, but still very educational.
Of course, when I attended it was in Atlanta (Hotlanta?) which may have made it more enjoyable than this year's Washington DC location.
Maybe this is too simple of an answer, but INSTALL A VERSION of unix/linux and get a BOOK!
(What a waste of a article.)
j^2
You just got thrown into the fire. That's the absolute best place to learn.
easy
Intron: the portion of DNA which expresses nothing useful.
Your moms basement like most /.ers.
There has already been some good feedback - get a book, put up a sandbox system of your own to try, and finally, at the end of the day, there is no substitute for real world hands-on training.
That said, I presume you work with a finite set of operating systems. In my experience, the best training courses tend to be the certification track offerings from the OS vendor. Sun, HP, IBM, Red Hat, Novell, and the others know their operating systems very well. The drawback to this approach is that most companies depend on third-party software to perform critical functions - backup/recovery, authentication, remote management, etc. No single source will typically offer formal training on your company's stack unless you have a large training organization.
That said, many large companies do have just such a large training organization that offers specialized courses on their own environment. Take advantage of that to get better at your job, but look to the vendors for more general and reusable training.
"Adventure? Excitement? A Jedi craves not these things."
At home. Seriously. You'll learn the most by using a *nix-based system every day. You'll want to do something, then research how to do it, then you've learned. The courseware you'll find out there will be great to expanding your horizon, however, on just the possibilities on what can be done. If you come from a Windows background, it'll take you a while to realise just how flexible and endless the possibilities of a *nix system are. Get yourself a *nix system you have full control over and start tinkering.
Be relentless!
But, in everything you do, just remember: Google is your friend.
The right to offend is far more important than the right not to be offended. (Rowan Atkinson)
Check to see if your university has an extension program. I didn't know these things existed when I went to school, but I make heavy use of them now. These are where you sign up for an individual class here and there -- no commitments or programs to enroll in, no transcripts to submit, etc. Around here it's typically 1 night a week for 3-4 hours, for 6-8 weeks, around $600 a class, company pays.
Many uni's have distance learning programs, but there are so many free tutorials on the web, I like to be taught by a live person I can throw questions at, to get that kind of money's worth.
Attention zealots and haters: 00100 00100
If you just want to practice/learn on a unix command line, get a free shell account on a public access unix server. Google for "free shells" or try one of these:
sdf.lonestar.org
bsd.miki.eu.org
freeshells.ch
rootshell.be
If you do something with your own hands, the lessons tend to stick. I'd grab copies of a few Linux distros, FreeBSD, and maybe Solaris or something and try to install them at home. You can pick up a decent PC on eBay for less than $100 to use as an experimental box.
I got my initial UNIX experience (1) installing and playing with Linux and (2) taking a UNIX admin course at a local college, both in the early 1990's. The two different types of learning complimented each other well, at least in my case.
Mainframe/UNIX Bit Twiddler and long time Windows/Linux Hobbyist.
The Theorem Theorem: If If, Then Then.
Uhmmm.... ya, sure kid, I'm a eunix guru. Pipes 'n filters 'n stuff. Sure I can teach ya all that stuff.
It's just my ah, courses are, you know, full all the time so you'll have to send me a sizeable deposit, something in the high 5 figures should save ya a chair in my advanced course. That'll be cash if you don't mind.
At the end of the course you'll get a t shirt that says "I got root". Oh yea and prerequisets are you don't shower or shave or get a hair cut.
I hold the seminars in my mom's basement for tax reasons.
"Academicians are more likely to share each other's toothbrush than each other's nomenclature."
Cohen
You're going to have problems that are not covered in a class come up. By learning by searching the net in the first place, you'll learn where there are the best answers, who are the phoneys (especially the sites that charge for answers that you can get for free!), and just how to look for answers. Because there's NO class(es) on Earth that are going to cover how to do every possible problem, challenge, or task.
I have learned quite a bit from my local LUG .
Fellow members give presentations on their particular interests and can provide the opportunity to ask in-person questions with other linux enthusaists who, with respects to my LUG, have a great variety of experience.
Not to mention, it is more sociable than to RTFM and use google ^_^ / a bit obvious ?! / oh wait, most of us here are not that extraverted.
www.linuxfromscratch.org
What better way to learn than by building it from scratch... learn as you go and pick up a general *NIX book for help with each of the tools
I don't know where these "get a box and throw *nix on there" and "get a book" comments are coming from. You need proper training. Does your work pay for you to take college classes? You shouldn't just learn a handful commands and be done with it. If you are going to be primarily working with *nix software as you job you need real training to find out what the commands mean, how the filesystem works, and some experience in shell scripting or C. If you can only take certification type courses I'd say go for it. However, my advice would be to find out exactly what your company will be willing pay for.
I've been to LISA a few times over the years and it is easily the best training environment I've run across. Their tutorial sessions (which run over the days before the actual conference kicks off) are every bit as solid as the training you would get from Sun, HP, or Oracle. (I can only speak for the vendor training I've attended.) That said, I also think well of Sun's Solaris admin training and have heard good things first-hand of Red Hat's.
The most important thing, though, is to spend time on it after training. Make it your primary home OS if you are not resposible for an installation at the office. Training on your resume might get you the interview, but knowing how to make it dance will land you the job.
https://www.redhat.com/training/training_special.h tml?sc_cid=MSI_GTRRTKB_4
The best advice I can give is to find an older PC (or use your current one at home) and install a distribution on it. And use it. A lot. It's so different that you may find it annoying at first, but eventually (even if/when it annoys you) you'll find windows annoys you a lot more. Also, I highly recommend an easier distribution to get into things, namely Mandriva or Kubuntu. That will ease the transition, as well as bug you less because of certain friendly similarities.
Once you're starting to get comfortable, it'll be time to switch to Gentoo, or OpenBSD.
========
77 77 77 2e 6d 65 6c 76 69 6e 73 2e 63 6f 6d
I recommend Slackware (www.slackware.com) along with the official book, Slackbook: www.slackbook.org. Slackware and Slackbook is a nice introduction to Linux. You can view it online or download a PDF.
Slackware is, as far as I know, the oldest Linux distribution in existance. It is simple and clear. I hear comments say that it is very close to pure Unix (I can't say myself, I haven't used Unix, nor any of the modern BSDs). It's a a "do it yourself" fashion, it doesn't rely on configuration "wizards". From an educational point of view, I think that it is the best way to go.
There is a "slogan" saying, "When you learn a X/Y/Z distribution (Fedora, Suse, etc), you know that X/Y/Z distribution. When you learn Slackware, you know Linux."
One suggestion: You can have a dual-boot with Slackware and another, more "automated", distribution, like Ubuntu, Suse, Fedora, etc.
I was fortunate enough to take two classes at my community college. I found them totally valuable. I think that most places don't have these kind of classes, but if you do have the opportunity to learn in a classroom/lab environment, from a Real Unix Administrator, you can really learn alot.
I learned the most by using *NIX systems for 10yrs or so, but sometimes we need help!
One of the most valuables sources I found is the forum of the distro I use (I will not name it, but let's say I like to watch gcc working ;) ). When you ask politely, more often than not you get an answer! Just don't forget to help others!
"There is always an easy solution to every human problem -- neat, plausible, and wrong."
H. L. Mencken
Install linux in a separate partition on your own PC.
Then destroy your windows installation (accidental or otherwise). Bonus points if you don't reinstall it.
If you're asking such a question, you first have to learn to learn. Seriously, I'm sure of all *nix users here on /. (and elsewhere), 90% never asked "How to [...]". They just Googled it and learned by themselves, because it's simply interesting. I don't understand why people "Ask Slashdot" while they won't even read the previous ones; because, this has been asked 1000 times, may it be "learning UNIX" or "learning to program". That's the same, you can't *know* UNIX/*nix if you don't know how to program -- and the answer's always the same: learn to learn, do it, and RTFM.
;)] or could have learned by myself (or it was just not interesting to me, like some lower level/electronics stuff).
RTFM isn't an insult, it's something that we all do; saying RTFM isn't rude, it's a service given to you; RTFM is our way to say: look by yourself, because once it becomes a reflex, you'll do whatever you want, a lot faster.
So now, what fine manual should you read to have some *nix skills? Well, TCPL seems to be a requisite, installing a GNU/Linux distro and using it (it means, ditching Windows completely, no dual boot), then some book on UNIX programming (because the POSIX/*nix system calls API shows you how UNIX is designed, and what IS actually UNIX), and then, if you're only interested in doing some techie stuff, just install and configure the most popular daemons (postfix, apache2, etc). If you start by this last step, you won't actually understand how it *works*, and it will be done in no time (since it's really easy), but you won't have learned much.
Once again, learn to learn by yourself. Don't rely on courses. The only CS interesting courses I have ever been to are software design or theorical CS (I'm a CS master student). The rest ("UNIX", programming, networking, etc) I already knew [because I had learned to learn
that's right, download a copy of solaris and stick it on your pc.
you'll learn fast..
my password really is 'stinkypants'
To the original poster:
The certification and training courses listed above should keep you busy for the summer. It might be easier to figure out where you'll be this summer and find out who does what training in their area. You might find some smaller training facilities that have better student/teacher ratios. As far as the "RTFM" and similarly phrased answers, ignore the fact that they didn't read your question (that you're looking for formal classes/seminars) and apply their advice to your after class practicing. I'd even suggest you get Knoppix to start with. Being a live CD, you can use it to practice without touching your regular system's installation.
"Common sense will be the death of us all"
... and I'll add my own bit. Read a lot. I like http://safari.oreilly.com/ because I save a ton of money on books.
Install your own Linux network and way over engineer it. You'll learn lots by setting up DNS, NIS, Apache and other services.
When you don't know something Google is your friend. Lot's of people forget this. Got an error? Google it. Want to see how NIS works? Google it. It's pretty rare to have a question that hasn't been asked a hundred times before.
Pick a subsystem and study it. Do a "ps ax" and pick a process and learn what it does, how to configure it and whatnot. That's the beauty of Linux you can dig as deep as you want.
I also hear from a number of friends that installing Gentoo is a great way to learn. The docs are excellent and you learn a lot by the time you've got a base system up and running.
Never lose your curiosity for how things work. It's the key to learning.
The obscure we see eventually. The completely obvious, it seems, takes longer. - Edward R. Murrow
I am so used to having to do everything the hard way and so is the way I learned Unix/Linux. Try editing fstab/exports in efforts to set up a first ever linux network without a gui, without knowing about vi or less, and not even knowing commands enough to type anything after man. It worked though. Sometimes I amaze myself with what I can do with a command line and perl. My self forced discipline to stay away from a gui in the beginning was key for truly learning Linux/Unix. My first ever Linux gui was twm with a custom .twmrc file edited with none other than the vi skills I was forced to learn. I've since upgraded to XFCE for my desktop, but the notion of a server with a gui just seems like a silly waste of resources to me now.
Build a Slackware box. That's how I started.
I want to delete my account but Slashdot doesn't allow it.
Everytime you have a problem, just post it to Ask Slashdot... seems like those are the most common questions around these parts.
Novell historically has one of the strongest IT training programs around - after all, they started the idea of IT certifications with the CNE. Since Novell bought SuSE a few years ago, they've moved intoLinux with the SuSE training as well. Course Technology has recently come out with a series of books that covers the basics fairly thoroughly, and includes the Linux+ certification.y =Networking&subcategory=Novell%20Networking&isbn=1 -4188-3730-X
http://www.course.com/catalog/product.cfm?categor
As a Master CNI teaching at a local community college, I can tell you that the program they offer is affordable, gives plenty of hands-on, and is fairly vendor-neutral (which follows from support of the Linux+ cert)
There are even some fairly substantial diferences between the two major Enterprise Linuxes (RH and SUSE).
In any case, all these companies offer training for their product line, usually at their headquarters and large cities. They're not cheap, but from what the asker says, that doesn't seem to be an issue.
Two thoughts:
:-)
- In terms of summer events, the Ottawa Linux Symposium is supposed to be a great event. I haven't made it to one yet but I've wanted to for a few years. It's July 19-22 in Ottawa (Ontario, Canada).
- [Shameless Plug] This doesn't quite match your description but I thought I'd mention it anyways: I teach at Seneca College, Toronto, and we have a 10-month intensive Linux Administration graduate certificate program that I think is one of the best Linux training programs available. We've had students from all different backgrounds including current staff from large systems vendors. We also throw a great Free Software and Open Source Symposium in October; this year we have Mike Shaver and Neil Deacon (Mozilla), Nat Freidman (Ximian/Novell), Chris Blizzard (One Laptop Per Child), and a raft of others.
And I agree that there's no substitute for getting dirt under your fingernails and actually working with the technology!
Even I know this one: RTFM!
=p
How the fuck do you get a job like that if you BARELY even touched unices? I'll tell you where to get training: at the FOAD shop.
Question: Where Should One Go for Unix/Linux Training?
Answer: to your computer.
UNIX cannot be learnt by:
Chapter 1: ls, cd, mkdir, rmdir, chmod
Chapter 2: ps, dmesg, netstat
Chapter 3: sendmail, c libraries
Chapter 4: Dev API
Chapter 5: Advanced
Appendix A: Commands
Appendix B: Versions
Appendix C: Ethics, privacy, other shit.
To learn UNIX, get a copy on a media, get a computer and set targets.
Heres how I was trying to learn all about HP-UX:
Chapter 1: Buy an HP9000 workstation on ebay, and download test OS
Chapter 2: Download sample Domino and Oracle.
Chapter 3: Install and configure Domino and Oracle.
Chapter 4: Skim through the cert requirements, read up a little and give the damn exam.
Appendix A: How to use google
Appendix B: How to use google groups
Appendix C: How to find time for it all
So honestly, if youre not hands-on, you dont know it. You cant read how to ride a bike. Some people read about how to fly and airplane, but you dont get pilotage from a book.
What company is that anyway, and do they have openings?
"Give orange me give eat orange me eat orange give me eat orange give me you." -Nim Chimpsky
Honestly. I didn't start out with Linux with any sort of training or anything – I just got a copy of Linux for Dummies with a free Red Hat 8.0 CD included, stayed with it not because of technical reasons but because it looked pretty – and now where am I? I'm running my own distribution (Slackware-based, if you're wondering), writing complex shell scripts and even the odd full-blown program, learning all sorts of new and creative programming languages – the only thing keeping me from doing it as a full-time job is the fact that I'm still a high school junior and have to spend as much time slaving over endless amounts of work for IB as I do staring at a glowing screen all day.
:-)
And really, the hardest part isn't starting, it's finding when to stop. Of course, you probably would have to keep an open mind and all, but hell – sounds like you're more or less willing to learn, so you should be fine. And if not, we're more than happy to help you join the ranks of the evil penguins in our conspiracy for world domination
Creative misinterpretation is your friend.
RTFM
Get a spare hard drive, a C compiler, a kernel, and sources for all the essential utilities. Compile all the sources, then format the drive and create a working *x installation using only cp(1) (or cpy.exe if you insist on Windows). You may want to bootstrap it by installing only what you need to boot to single-user mode using another system, then booting the system and installing the rest of the userland from there. If you can do this, it will qualify you as an expert. If you can do it without consulting documentation, then you can consider yourself a true guru.
By experience. You get experience by trying it, be it on work, home, user groups, etc.. Belive me - I'm as familiar with AIX, HP-UX, Solaris, Linux as with EXEC8, MVS, OS/Z or 390, VM, GCOS, Guardian, etc.. or DOS ( the PC version ), Windows, PSOS, other "toy" systems.. because I got the basic training on computer/system architecture from IBM. So as far as I know - for Unix LISA is a good start, first year just listen, second year figure out some questions, third year you may be able to help some new people coming to Unix - same with any system / architecture. Actually much faster than taking some university courses, nothing against that but.. The difference is that dealing with real world you don't have those 2-nnn number of years just to learn one thing. I still miss the two-three week 24h/day intensive/internate training IBM used to have. Hard but if you can do that you will have very good basics. Sadly - I don't see that kind of training offered much today.
I've dealt with HP, Sun, and IBM training material and courses. If your company will pay for it, then take the course appropriate to your skills and environment. The 'intro sysadmin' course is a great starter at any level--I finally took one after six years of being a professional SA, and still learned things. After that, the advanced admin courses and subject-specific courses are great.
However, the only way you learn any of the stuff, courses or not, is by applying it and practicing it. Yes, computers require practice. Programming requires practice. Administration requires practice. Install it (repeatedly, if possible) and work with it daily.
And of course, man. You must know man pages and vi.
"People who do stupid things with hazardous materials often die." -- Jim Davidson on alt.folklore.urban
I don't know where you are located and what is offered in your area but in Ontario Canada there is Linux training to be found at the local college and university level. I teach Linux at Conestoga College in Waterloo. Linux I and Linux II and Linux Networking and Security I and II are offered. Check the colleges and universities in your area.
Get involved with your LUG. If you get involved you may find they are involved in many projects in your community. They may be involved in FOSS projects, network installations ... They will have an email list where you can ask any question you and should give you near instant responce. The LUG in my area is run by the Univerity professors that teach linux.
IBM has online stuff on getting your LPI.
http://www-128.ibm.com/developerworks/linux/lpi/
I think you can take the exams online for free as well.
Frozentech's Live CD site is a great place to dl distros and give them a test. You may want to think about what you want to do with the distro (ie clustering) and then find a distro to test and see if it fits your needs.
I highly recommend setting up a machine at home with some Unix/Linux distro. There is no conference that can do this for you. I'd go to confrences also, but I've never gone to one and am at least competent in setting stuff up, fixing simple problems. I'm not much of a coder yet, but I'm working on it. Again, I have one C++ book and google as resources. There is no substitute for experience. Find an old Pentium II in somebodies garbage, eBay, etc. You don't need anything fancy for this box, just find someone you know that has a computer collecting dust somewhere.
Download Ubuntu. It's a great starting point, most things will Just Work after the install. apt-get is also a very good package system that will allow you to get a working system up and running right away.
Set this up near a currently working computer. Being able to google things that aren't working saves a ton of time compared to dual booting if your network interface goes down. I've tried dual booting in my early days and it was terrible.
Start trying to break things. Start small, get used to xterm and bash. Try to limit your time on your current computer. Once you get used to that I'd start messing with apache. Don't open it up to the web, but it's a good way to get used to editing configuration files in vi/emacs/pico/ other editor. Set up subdomains, web forums, and whatever else you can think of. Just learning the process of doing the editing is very helpful. Google is your friend here, learning how to properly format questions is very helpful.
If you get frustrated, don't be afraid to ask a forum for some help. Chances are someone has thought of what you are trying to do and will havew some advice.
Once you get used to Ubuntu, try a different setup. Pick a BSD or or Gentoo, something with a lot less handholding involved. You'll find all the annoying quirks of each one. Try setting up various other web services. Compile programs from source by hand. It's not hard most of the time, but hunting down dependancies on the web will show you why package managers are so useful.
That kind of rambled a bit, but it's 1 am. Cut me some slack for the probable typos and train of thought issues. The advice stands. While you should go to some conferences, there are some things you just have to teach yourself. Much like driving a car* or other skills, books and lectures can only teach you so much. Especially at the start of learning linux, learning basic command line and other skills is just manual labor you have to deal with.
Good luck!
*I had to slip a car metaphor in somehow.
SAILING MISHAP
I finally managed to get Solaris 2.6 and 2.7 to boot from my second physical SCSI drive, though. Thank goodness for System Commander! :-)
Mainframe/UNIX Bit Twiddler and long time Windows/Linux Hobbyist.
The Theorem Theorem: If If, Then Then.
I have no idea what *nix-based operating systems you use at work, and, thusly, I have no idea which sorts of *nix you'd really like to learn; please do keep that in mind.
Pick a Linux distribution that doesn't hold your hand with graphical installers and graphical system administration tools, and preferably one without a crutch like apt-get or rpm. I would recommend Slackware, because it's one of the best distributions for learning how to run a Linux system. Google is your friend, alongside forums like Linux Questions. You might give a basic book like O'Rielly's Running Linux a look, as well, but the actual learning is going to come from your experience.
Next, pick a BSD distribution and do the same thing. FreeBSD is pretty popular, but you might also want to try OpenBSD.
Going to conferences and symposia probably wont teach you very much, unless they're intensive introduction to Linux/BSD/*nix flavour events.
There is a very good school in Las Vegas NV the teacher there makes his students install Redhat stripped of most of the garbage.
I heard about that place about 3 years ago i have yet to earn enough $ to go there.
see if you can find it I forget the name.
TSS
This company http://www.useractive.com/ offers training online by giving you an account and throwing simulated problems at your for you to solve. Kind of a learn by doing approach.
The method is based on a way of learning calculus using computers and problems rather than traditional lectures. The founders of the company learned calculus this way, liked it, and started a company to teach IT this way.
It is sponsored by The University of Illinois, so you can also get a U of I certificate.
If you're coming from a windows-heavy background then I recommend Cygwin (http://www.cygwin.com/). It will give you a chance to gain comfort and experience in a *nix like environment without leaving your windows safety-zone. And like most other things in life, the best way to learn *nix is to use it as much as possible (Something that may not be possible with pure *nix due to the relatively steep learning curve and overwhelming amounts of material you will need to learn to become truly competent).
/etc on various systems, but coming home to a Cygwin system that you can actually use (with the occasional windows crutch) might speed you along in your *nix education.
IE: if your still not comfortable with Vi or Emacs, you can fall back on your favorite windows Text editor as needed, instead of spending more time reading man pages and memorizing shortcuts.
Plus Cygwin can compile and run a significant portion of *nix programs from source. The ability to configure, compile, and install from source is a very important part of learning *nix (IMHO).
Of course you will still need a real *nix system to learn the actual details, such as the config files in
I tried to learn linux from numerous books and online material and never really got anywhere. What changed this was when I bought myself a second PC and installed Linux on it. From then on I forced myself to use the Linux box for EVERYTHING - writing documents, paying bills, balancing accounts, browsing the net - and only reverted to the windows box when I was hoplessly lost. After only a month, linux felt so natural to me. I then blew away the other windows box and made it my Linux server. I did all administration of the server using the command line only. Within about 4 months I felt like a Linux pro... obviously I wasn't but the confidence definately helps.
- The Design of the UNIX Operating System, by Maurice Bach
- The UNIX Programming Environment, by Brian Kernighan and Rob Pike
Have done that, the you should be prepared to figure out the rest by yourself. It's not that difficult, but it might take a while.---- It won't be as bad as you fear or as good as you hope, but it will take twice as long as you plan.
The console.