Kuro5hin.org: technology and culture, from the trenches
create account | help/FAQ | contact | links | search | IRC | site news
[ Everything | Diaries | Technology | Science | Culture | Politics | Media | News | Internet | Op-Ed | Fiction | Meta | MLP ]
We need your support: buy an ad | premium membership

[P]
How To Become An Experienced System Administrator

By mami in Technology
Mon Aug 13, 2001 at 05:09:26 PM EST
Tags: Help! (Ask Kuro5hin) (all tags)
Help! (Ask Kuro5hin)

I like to ask this question to the K5 community as someone who wants (has to) set up a home-based training schedule without access to college classes or other training facilities.

I assume the road to system administration's enlightenment goes somewhere through either the Computer Science department of a college, a technical trade school's certification program or hands-on exposure to the technology within some military based educational programs.

My question is different. What does it take to become an "Experienced" Unix System Administrator through self study ? The RedHat training department is expecting you to be one, before engaging in taking their RHCE certification exams. Is it possible to achieve such level of experience based on self study on a home based network ?


I was triggered to post this question after reading through this article in the Unix Review.com site.

I think this article very precise and helpful to specify the topics you should be able to master (in your sleep) BEFORE even starting to prepare for the RHCE exam. Here the list of topics quoted from the article :

The prerequisites for the RHCE Rapid Track course are knowledge and mastery of the following skills and topics. You should be able to:
  • Administer the Linux printing subsystem
  • Automate tasks with at, cron, and anacron
  • Back up filesystems to tape and tar archive
  • Communicate and transfer files securely
  • Configure a workstation as a client to NIS, DNS, and DHCP services
  • Configure an NFS client and autofs
  • Configure basic host security
  • Configure, customize, and use the X Window System and GNOME desktop environment
  • Configure, compile, and install the Linux kernel
  • Connect processes and files using standard I/O and pipes
  • Control common system hardware
  • Control system processes
  • Copy files to and from a floppy disk
  • Create and maintain the Linux filesystem
  • Filter and process text
  • Install Red Hat Linux interactively and with Kickstart
  • Install, update, query, and remove software packages with RPM (Red Hat Package Manager)
  • Integrate a workstation with an existing network running common network services
  • Issue essential Linux commands from the bash shell command line
  • Launch applications from the command line and GNOME interface
  • Maintain and interpret system logs
  • Open, edit, and save text documents using the vi editor
  • Perform basic bash shell scripting with sed, awk, and perl
  • Perform basic performance, memory, and process management
  • Perform basic troubleshooting
  • Perform common file maintenance tasks
  • Perform common tasks using GNOME GUI applications
  • Perform security administration using Red Hat Linux
  • Perform user and group administration
  • Query packages on your system
  • Set up, configure, and administer common networking services on Red Hat Linux:
    Apache Web Server
    DHCP
    DNS/BIND Domain Name Service
    ftp
    NFS
    NIS
    pppd
    SAMBA file and print sharing to Windows clients
    sendmail
  • Understand and maintain file access permissions
  • Understand and use email and related applications
  • Understand system and service initialization
  • Understand system tools available to the user
  • Understand the Linux file system
  • Use network applications and utilities
  • Use printing commands and utilities
  • Use regular expression pattern matching
Keep in mind that these are prerequisites and should be mastered before you consider studying for the RHCE.

Since the time I started thinking about the possibility to achieve hands-on experience within the realm of self-study at home, I always wondered about the order in which best to aquire those skills.

My assumption was that before you start learning to program you would learn various system admin skills. That obviously doesn't work, because if you look at it, you need extensive knowledge in shell scripting, sed, awk, regualar expression pattern matching skills, some C and later, more importantly some Perl to do a lot of system adminstration tasks.

Looking at curricula at community college's certification programs and having participated in some of the introductory course work I realized that those classes are merely covering may be 1/8 or less of above mentioned topics with no option to get real hands-on exposure. The subject areas covered in above list consist of the theoretical equivalent content of at least four to six college level courses.

Now RedHat starts to broaden its training class offerings to include networking, programming (C, Perl, Shell Scripting) etc. classes to be considered prerequisites to mastering the System Administration and some of its upcoming eLearning track. Thinking of the considerable costs and the fact that most of those classes are not (yet ?) available in complete online format, I try to find the best way to put hardware and teaching material together to simulate an environment in which I can try out any of the above tasks.

This leads to the question, what is the miminum equipment you would need ? What is the optimal order of learning those topics to master the requested tasks ? Is it realistically possible to become an "Experienced" system administrator on a home-based network ?

Sponsors

Voxel dot net
o Managed Hosting
o VoxCAST Content Delivery
o Raw Infrastructure

Login

Related Links
o RedHat
o RHCE certification exams
o article
o Also by mami


Display: Sort:
How To Become An Experienced System Administrator | 84 comments (78 topical, 6 editorial, 0 hidden)
The steps (3.85 / 7) (#1)
by wiredog on Mon Aug 13, 2001 at 01:28:34 PM EST

First, you won't become an "experienced" admin if you're just admining 3 or four boxes at home. Unless you experiment with them alot. As in, reconfigure daily. That said. Buy, read, and use the following O'Reilly books (in order):
  1. Running Linux and Linux in a Nutshell
  2. Linux Network Administrators Guide
  3. Apache reference (can't remember title)
Also, get the Camel Book or the Python book after step 1. Read the faqs/docs/man pages. Don't expect to be experienced in less than a year. Oh, don't forget to have fun!

If there's a choice between performance and ease of use, Linux will go for performance every time. -- Jerry Pournelle
That's a good start (3.75 / 4) (#2)
by Vladinator on Mon Aug 13, 2001 at 01:47:23 PM EST

Then read "Unix System Administration handbook" by Nemeth, Snyder, Seebass, and Hein. AKA The Red Book (Now the Purple Book). Also a must read would be "Essential System Administration" By Æleen Frisch. AKA The Blue Book. The first is published by Prentice Hall PTR and the second by O'Reilly and Associates. I reccomend that people start with the Frisch book, personally. There are a few others. There was a good article on Slashdot about the 4 books you need the most, I think you could do it with just these two if you had to. Both of my copies are well worn. I find "Apache The Definitive Guide" to be usefull but I'm still going through that one. If you're really serious, pick up "sendmail", "DNS and BIND", and "SSH, The Secure Shell" all of which can be found at ora's website (see link above).
--
LRSE Hosting
[ Parent ]
And here we see the problem... (4.00 / 3) (#6)
by wiredog on Mon Aug 13, 2001 at 02:09:10 PM EST

Between the books you mentioned, and the ones I mentioned, he's out about $200. Then we want to talk about making a truly secure system, Samba, etc. etc. System administration is as complex, difficult, and expensive to learn as programming. The various docs, howtos, and info and man pages that come with a distro are all valuable, but it's hard to write margin notes on them.

Also, we're just talking about Linux/Unix. What if he has to admin some windows or mac boxes? Ouch. There's a reason that a good sysadmin makes in excess of $100K/year.

If there's a choice between performance and ease of use, Linux will go for performance every time. -- Jerry Pournelle
[ Parent ]

right (3.50 / 2) (#13)
by mami on Mon Aug 13, 2001 at 02:39:19 PM EST

If I hadn't already an extensive library of books (more or less by accident) and had to reconsider if it's worth spending time on money on it, I would even more hesitate to start it.

To me the biggest problem is organizing the work, focussing in the right order on each tasks, and being finished learning all it before it might be obsolete.

It seems to be almost a constant battle against constant changes of a wide variety of minute details of a magnitude of different and new tasks on ever changing platforms and application packages etc.

Even to decide in which language to become more skilled is difficult. All the developers focus on one specific language and project. But not the system administrators.


[ Parent ]
Focus (3.00 / 1) (#50)
by rasilon on Tue Aug 14, 2001 at 07:04:50 AM EST

To me the biggest problem is organizing the work, focussing in the right order on each tasks, and being finished learning all it before it might be obsolete.
That, I think may be the problem. You will never learn it all before it is obsolete, there is too much to know. You appear to be trying a depth first search when you should be trying a breadth first search. Don't study one topic each day, study ten, they all support each other. That is why you are finding that everything presupposes knowledge because nothing is self contained.
As to which language to become most skilled at, learn several then pick the one you like/use the most. Try C, C++, Java, Perl, PASCAL, ML and prolog. prolog and ML are liable to bend your head a bit, so try them last, but you will learn from them and that's the omportant bit.

[ Parent ]

Not really - there are alternatives (3.33 / 3) (#56)
by Vladinator on Tue Aug 14, 2001 at 11:39:12 AM EST

#1: Something I also own and use is the O'Reilly cdrom The UNIX CD Bookshelf, 2nd Edition which, to quote from the site directly

"The second edition of The UNIX CD Bookshelf contains six books from O'Reilly, plus the software from UNIX Power Tools--all on a convenient CD-ROM. You also get a bonus print copy of UNIX in a Nutshell, 3rd Edition. The CD-ROM contains UNIX in a Nutshell, 3rd Edition; UNIX Power Tools, 2nd Edition (with software); Learning the UNIX Operating System, 4th Edition; Learning the vi Editor, 6th Edition; sed & awk, 2nd Edition; and Learning the Korn Shell. "

At $69.95, this is a much better deal than buying all 6 of these books at cost. If you are smart, and have a Barnes & Noble Readers' Advantage card, you'll get 10% off of that price. In addition, you might be able to find it at the Library. So, potentially he's out nothing. As to margin notes, well - keep a notebook. It's not as convieniant, true - I'll grant you that, but it still aids in the learning process.

In addition to this, there are several other CD Bookshelf titles to choose from click here for a listing.
--
LRSE Hosting
[ Parent ]
You can do even better! (none / 0) (#74)
by Mister Smith on Thu Aug 16, 2001 at 02:05:51 AM EST

I don't know if this is a local or national thing, but a few weeks ago, my local B Dalton bookstore had about a dozen copies of the aforementioned "Unix CD Bookshelf" for only $14.99. Of course I promptly snapped one up.

Granted, it's a slightly older edition, so you'll occasionally have to check the online docs/man pages/whatever for a few little details, and jot notes in the margins. But IMO, reference books like this are meant to be scribbled in, and it's hard to beat the price.

If you're really ambitious, you could always copy the books-on-CD to your hard disc and update them there as well. :)

[ Parent ]

An excellent deal! (2.50 / 2) (#76)
by Vladinator on Thu Aug 16, 2001 at 07:36:50 AM EST

And it's just the last edition - there have only been two. In fact, that's the one I own, and several of the books did not change yet! So you got a real deal there!
--
LRSE Hosting
[ Parent ]
Don't forget the logbook (4.50 / 2) (#7)
by wiredog on Mon Aug 13, 2001 at 02:13:11 PM EST

Buy a composition book, or several. Write everything down. What works and what doesn't. Leave 10 pages at the front or back available for the index. When the book is filled, copy everything over to a new book while re-organizing the info sensibly.

You use a handwritten notebook because the one you're keeping on the hard drive doesn't do much good if you've bollixed up the fstab or lilo.conf files. I learned that one the hard way. Learn from the mistakes of your elders, that way you'll have more time to make your own!

If there's a choice between performance and ease of use, Linux will go for performance every time. -- Jerry Pournelle
[ Parent ]

Hardcopy essentials (4.00 / 2) (#72)
by kmself on Wed Aug 15, 2001 at 03:09:34 AM EST

Hardcopy data for your system is essential. It should include partition table, mount table, hardware specs, ISP contact and connection info, vendor data (contacts, warrantee info). And a log of significant system events, so you know more-or-less what the hell's going on.

But those partition tables -- very useful stuff, saved me more than once ;-)

--
Karsten M. Self
SCO -- backgrounder on Caldera/SCO vs IBM
Support the EFF!!
There is no K5 cabal.
[ Parent ]

No problem knowing what to read (3.00 / 2) (#11)
by mami on Mon Aug 13, 2001 at 02:18:02 PM EST

but what I find confusing or hard to deal with is the constant discovery that you need some prerequsisite knowledge of something to be able do the next thing.

The more urgent question I have is how to order this process optimally. My thinking goes along those lines.

1. Starting with shell scripting and configuring, trashing and reconfiguring just the basic OS and all non network dependent tasks on just one box.
2. Learning C
3. Learning TCP/IP and network related topics
4. Configuring network related services
5. Learning Perl
6. Learning web hosting related services
7. Learning more programming skills in Perl
8. Setting up a content management/ecommerce related package and run it live.
9. Picking up something to hack on, learn to debug/test/benchmark a program and learn to tweak for performance.

Is that round about the right order ? Still, that doesn't make me an experienced system administrator, even if I would go through all of that. Another question would be if it is possible to be a good programmer without being a good system administrator and without knowing quite a bit about hardware ?

Which leads to the real interesting question then, why in the world would I start doing all of it in the first place, but that's another story...

Still it might just be the answer to why women don't do this stuff that easily... we ask ourselves too many questions all the time...:-)

[ Parent ]
I would learn other things before C (3.50 / 2) (#12)
by georgeha on Mon Aug 13, 2001 at 02:36:41 PM EST

such as Perl, TCP/IP, heck, everything else on your list first. C is needed to be a programmer, but it's mostly overkill for an SA.

[ Parent ]
system administration without programming ? (3.50 / 2) (#16)
by mami on Mon Aug 13, 2001 at 03:40:37 PM EST

Considering that the 70 percent of the OS files are written in C/C++, I have difficulties to understand this. I actually miss that C is so seldom taught anymore, because it helps so much getting to understand what your OS does and how, I think.

C/C++ seems to be one of those things, which gets lost for people, who are only now trying to get into Unix, because so much is possible to configure now without getting into the source code of the files. At least at first glance. As soon something doesn't work, it becomes obvious that you need C programming skills, at least that was my impression. WROX published two books on Linux Programming, which is mostly shell scripting and C. Several newer books "rediscover" C for Linux. So, there must be a reason. There is even a book coming out next year about "How to not program in C" by Steve Qualline, so it seems to be in demand.

I think the real experienced system administrators are actually the older guys who grew up with it since the eighties. The became the developers of today, I assume. The other group are the younger guys, who are in it since Linux and the Web arrived. Those also know how to hack in C and as soon as they can do that they switch to Perl , Python or PHP, right ? Does that mean a system admin never needs Java ?

And as we are already that far, which system adminstrator doesn't want to become a developer/programmer after a while ? Or did I get the wrong impression ?

So, what NOT to learn without being a lost chicken as soon as you have to dig into the code ?

[ Parent ]
I administer Solaris boxes, and won';t see any C (4.00 / 1) (#21)
by georgeha on Mon Aug 13, 2001 at 04:17:54 PM EST

since Solaris is propietary and all that.

I think if I were to hire an SA for our Solaris boxes, I would be more impressed with Perl skills or networking skills than C skills. I might be even a little afraid of someone too eager to show off their C skills on a production server.

Granted, if you want to move into programming, you need C, but to get your foot into the door, I can think of other, more needed skills.

[ Parent ]

agreed (3.00 / 1) (#28)
by mami on Mon Aug 13, 2001 at 05:37:09 PM EST

I didn't mean to imply that it is a matter of either C or Perl ( Perl goes without saying), more like C and Perl (many people say C is not necessary) and if so, which to learn first.

[ Parent ]
I admin Solaris boxes and see lots of C code. (3.00 / 1) (#49)
by rasilon on Tue Aug 14, 2001 at 06:28:10 AM EST

You may not see any souce code for Solaris unless you have a license, but you still have apache, gcc, bash, perl, postgres, mySQL, ssh ,ssl, cvs, etc.
C was created to write UNIX in. The UNIX way is the C way and vice versa. If you are learning the language of UNIX, then C is the culture. You don't strictly speaking need to learn it, but things become a lot easier if you do.



[ Parent ]
Some clarification, if you please... (5.00 / 1) (#45)
by Dirac Tesseract on Tue Aug 14, 2001 at 01:43:10 AM EST

> which system adminstrator doesn't want to become a developer/programmer after a while ?

Heh, well for instance, _I_ do not. :) I am not entirely certain as to the nature of what you are asking... see, I am sure that there are plenty of people who go into Admin work and then later become programmers or such, and benefit in programming jobs because of their Admin knowledge. But System Administration jobs are not prerequisites to becoming a programmer... nor are they "lower on the chain of command" than programming jobs. A System Administrator is as necessary to any IT department as any programmer - this is because programmers, as well as everyone else in the company, relies upon the Admin to aid, teach, augment and fix when necessary. There are some programmers who have a good foundation in Administration, but as someone said previously, they are the exception to the rule - most programmers I have dealt with, for instance, know all about building programs, but shudder at the concept of configuring a network service or installing an OS. That isn't what they do, nor is it what they know - they know, and focus, upon the work at hand. My favorite example of this occured when I was about three days into my first Admin job... one of the programmers asked me to sync his UIDs between the server and his own machine. When I sat down, the first thing I did was open up his passwd file in vi. He was floored... he apparently thought that vi was archaic and incredibly difficult to use, and had never bothered to even try it out. What is great about this is that this guy was a programming wizard, and excellent at his work. This is the kind of disparity that exists between most programmers and Admins... I hope this clears things up a bit. :)


Sendmail may be safely run set-user-id to root. -- Eric Allman, "Sendmail Installation Guide"
[ Parent ]
on order (3.00 / 1) (#31)
by ninjaz on Mon Aug 13, 2001 at 06:36:49 PM EST

The more urgent question I have is how to order this process optimally. My thinking goes along those lines. ...
I think you're putting too much emphasis on order. Some of these areas can take a long time to really learn well. For instance, you don't just learn C in a couple weeks and reach proficiency. It can also be hard to maintain interest in one of these topics if you're learning it in a vacuum (i.e., w/o something to apply it to). Necessity is a great motivator to learn something.

In other words: Follow your heart. There are large and varied areas of specialty in system admnistration and programming. I worked as a programmer for a couple years. At first, during the learning and "wow, I can do *this* and *this*" stage, it was a lot of fun. But, then when it came to being expected to crank out code day in and day out, being held to deadlines and constant changes to specifications, I really got burned out on it. Of course, Unix administration has its own set of challenges, but I like doing it a lot more.

I'm better off for the programming experience, though. System administrators often have to work fairly closely with programmers. It helps to know the issues involved with the other guy's field, especially to know what kind of things to look for and suggest when making a bug report. And, of course, being able to code up something in 15 minutes that will save me 45 minutes of tedious work is always nice.

Is that round about the right order ? Still, that doesn't make me an experienced system administrator, even if I would go through all of that. Another question would be if it is possible to be a good programmer without being a good system administrator and without knowing quite a bit about hardware ?
Programming and system administration have some overlap. Most programmers I've worked with have been poor system administrators. And, most system administrators have only dabbled in programming. Some people really can do it all, but they're the exception, not the rule.
Still it might just be the answer to why women don't do this stuff that easily... we ask ourselves too many questions all the time...:-)
Actually, I've heard that English majors tend to make good Unix admins because of their language skills (which helps w/ the open-endedness of the command-line) And, women, to make a sweeping generalization, are supposed to be better at language, and even thinking about many things together (i.e., a system) rather than only focusing on one thing.

Of course, talking about occupations such as this in the context of gender misses out on the huge range of differences between individuals. I've worked with good and bad system administrators of both sexes, so I don't think it's very important as influencing factors go.

[ Parent ]

University (4.16 / 6) (#3)
by forgey on Mon Aug 13, 2001 at 01:56:12 PM EST

Well, you can actually get a bonafide University Degree in Computer Science without ever stepping on Campus. The University of Athabasca allows you to do an entire degree via distance education. It is a recognized program and they have been very progressive with their distance education programs.

You likely aren't Canadian so perhaps you aren't interested in taking a degree from a Canadian University, but I believe there are other Universities around that provide the same services and there is likely one in the US.

That said, a University degree will not make you an experienced anything, but having a degree will get you a lot further when you are starting out than you will get without one. Take the time while you are in school to get some low level crappy jobs to work your way up to the experience level you are looking to attain.

forgey

Can't do it. (3.57 / 7) (#5)
by jabber on Mon Aug 13, 2001 at 02:07:23 PM EST

Just as with any other field, you can not become 'experienced' without experience. You can get a great deal of knowledge, learn many obscure facts, try many alternative solutions to contrived problems, but it isn't 'experience'. No more so than writing highly theoretical toy programs in school makes you an experienced programmer.

Just like you can not become an 'experienced' French-speaker without immersion in French culture (note, not just language), you can not become an 'experienced' SA without dealing with hordes of (l)users, managers, heterogenous and incompatible hardware, hackers, tweaks, dinks, crises, vendor support contracts, and the sort of general weirdness that can only happen in an environment that supports more variables than you can reasonably keep track of.

On a philosophical note, 'experienced' is quite a relative thing. You really need to define what that means to you, determine what the next higher level is - and become 'competent' on that level.. Then you will be 'experienced' on the lower one. :)

[TINK5C] |"Is K5 my kapusta intellectual teddy bear?"| "Yes"

Agree (4.66 / 3) (#48)
by rleyton on Tue Aug 14, 2001 at 06:06:35 AM EST

I have to say this comment makes most sense out of all the other replies.

I'm an SA/DBA with about, oh, i suppose 7/8+ years of SA/DBA work with large installations, and about 10 years or so of general UNIX experience/exposure. Despite holding job titles that imply experience, knowledge and all that, I still, and will *always* consider myself to be on the learning curve.

UNIX is *HUGE*, and being a SysAdmin is bigger still. It's all about a frame of mind, and a way of solving problems. Only raw, solid, painful, and embarrasing experience gained on the job, doing it as you feel is right, and absolutely nothing else, will make you more experienced.

Sure, you may know more commands, flags and tape drive specifics than I do, but if you've got that from a course/book or listening to lectures, you're still inexperienced, and no job interview will let you through if they're after experience.

Sorry, but just as the above poster says, if you want to be fluent in the language, you've got to know the surrounding culture too. It's all about painful and embarrasing mistakes, late nights and discussions/arguments with colleagues. Not simply "knowing" it.

Ever heard the phrase "You learn from your mistakes"? It holds true here especially.



--
Ooooooooooooooh! What does this button do!? - DeeDee, Dexters Lab.
My Website
[ Parent ]
Experience... (4.14 / 7) (#9)
by fremen on Mon Aug 13, 2001 at 02:14:41 PM EST

Having done some sysadmin while I was in college, I can tell you that classes and certifications will only get you so far. I hold no certifications and I've never taken a single "sysadmin class." Then again, it was only a job that I held while I was in college and now I'm doing engineering. Still, if I were out of a job, I could definitely make a competent sysadmin. Here are my recommendations:

  • Learn enough to know when and how to learn more. That sounds pretty simple, but it's not that easy. Much of what you'd pick up in these classes is specific to Linux or RedHat. It's better to know the generalities and pick up the specifics with the platform. Also, keep in mind that many systems contain lots of stuff that is completely custom. For example, how would you configure NIS on a Solaris server? Would it be the same as Linux? What if I told you that our Solaris setup uses a set of custom scripts that do several things before pushing the NIS maps? What would you do? Where would you start? What tools would you use?

  • Find a good mentor, I worked with one of the best. Good mentors teach you the specifics of the system you're using while also showing you stuff you might not already know.

  • Know when to walk away and ask for help. I've seen more stuff broken by people who didn't know what they were doing, it's not even funny. If you don't understand it, don't play with it until you do. See the first point above.

  • Read as much as you can, both on and offline. Learning Perl while I was a sysadmin has helped me more than I could ever imagine, even now as an engineer. I also read BugTraq which taught me a lot about security and good sysadmin practices. I recommend that every sysadmin read BugTraq!
This is far from comprehensive, but these things have served me well. Being a good sysadmin is not so much about knowing everything as it is about being able to figure stuff out.

From reading the employment ads (3.50 / 6) (#10)
by Skippy on Mon Aug 13, 2001 at 02:16:04 PM EST

Unix jobs seem to consist of graveyard-shift-tape-swapping-bitch or God with no in between. Reading the list that mami posted I'd consider anyone who actually knew ALL of that to be God. I'm not really into forking out a ton of cash for classes or certs and I've got a pretty good start on that list (but Sendmail, BIND, and LPD frighten me) but it doesn't seem like that's going to help at all. Is there such a thing as an intermediate Unix job? Or do you just turn into God after swapping tapes for a couple of years?

# I am now finished talking out my ass about things that I am not qualified to discuss. #
Working your way up the ladder... (3.00 / 1) (#42)
by Dirac Tesseract on Tue Aug 14, 2001 at 12:54:15 AM EST

Hey man, I know that the graveyard shift tape swapping jobs aren't exactly the most fun or interesting, but that is the only way you will gain experience, unless you are unusually lucky. I know all but three of the things on that list, I use them everyday, and compiled and configured many, and I am currently interviewing for a job as a tapemonkey SysOp. But it is a job as a tapemonkey SysOp in a company which is well known for promoting intelligent monkeys to higher level jobs, and if that is what I have to do to make it, then by God, that's what I'm gonna do! You have to be pragmatic... know that for all your talents, there is always someone else who is more intelligent than you, and they probably have the job you want. Be willing to do what it takes to build a career is what is important, as luck will only get you so far. As for your question of Intermediate UNIX jobs, there are many - Sysadmins typically are sorted into three levels of experience - Jr. Admin (Pimply-Faced-Youth), System Administrator, and Sr. System Administrator (Bastard Operator from Hell). The duties involved differ depending on the job, because Administration is somewhat like a trade. Honestly, just try to get work, and don't turn down an entry level job unless it won't pay for your basic needs.


Sendmail may be safely run set-user-id to root. -- Eric Allman, "Sendmail Installation Guide"
[ Parent ]
Practice in real-life (4.25 / 4) (#14)
by Nickus on Mon Aug 13, 2001 at 03:05:12 PM EST

The only way of becoming an experienced sysadmin is to do it. Ofcourse you have to do a lot of reading but in the end the only way to really learn is to do it. Personally I was only a helper in the beginning running around doing all kind of odd jobs. Then after a while I got more responsibility and then I suddenly was responsible for 130+ Linux machines. Today I am the main sysadmin for a pretty big institute.
As someone said in an earlier comment, you should learn general stuff. As many unix-like systems as possible so you learn to think in broader terms and not just use the specific solution some vendor gives you.


Due to budget cuts, light at end of tunnel will be out. --Unknown
not one comment about PEOPLE or MONEY (4.25 / 12) (#17)
by anonymous cowerd on Mon Aug 13, 2001 at 03:45:09 PM EST

Listeth now the hoarse burned-out voice of experience...

You wanna be a system administrator? Damn, I used to be a system administrator for a small civil engineering company. All the replies I've read thus far focus on "system" and ignore "administration." Let me tell you far and away the hardest thing about administering a network in a company: it's getting the fucking management to shell out the money you need to spend. And the second hardest part is getting the users to properly use the stuff you bust ass in order to put it in front of them. All that technical stuff, by comparison, is going to be a piece of cake for people at technically gifted as the average K5 reader seems to be; Hell, all you fuckers are smarter than me with regard to computers-n-stuff, yet even I managed to do it...

And in terms of burn out, believe me, what's going to grind you down to a nub sure ain't the technicalities. They're a challenge, they're fun. Hell, half the readers here do this kind of stuff, unpaid, for amusement! It's that wading through waist-deep molasses middle management stuff that will drive you to drink, I promise you that.

Yours WDK - WKiernan@concentric.net

The one thing that really disturbs me about America is that people don't like to read. - Keith Richards

People / Money (none / 0) (#24)
by ninjaz on Mon Aug 13, 2001 at 04:41:08 PM EST

Ok, I'll bite.

Let me tell you far and away the hardest thing about administering a network in a company: it's getting the fucking management to shell out the money you need to spend.
This really varies by company. I've worked in some places where the hardest thing was to get management to use Free Software instead of expensive proprietary things that didn't work as well.

Of course, I've worked in other places where "we just put RAM in the system 6 months ago" was the answer to for a system whose standard mode of operation was thrashing.

Part of many admin jobs is working with management and developing communication skills to put things in manager-digestible terms, instead of how you'd communicate with another system administrator.

System tuning, and using less resource-hungry daemons is often a good solution, too. Some tools to this effect are mod_perl, qmail and thttpd.

And the second hardest part is getting the users to properly use the stuff you bust ass in order to put it in front of them.
This varies by company and environment. My current position involves only running production systems that users don't access from the shell level. The audience for shell access is only other Unix admins and DBA's.
And in terms of burn out, believe me, what's going to grind you down to a nub sure ain't the technicalities. They're a challenge, they're fun. Hell, half the readers here do this kind of stuff, unpaid, for amusement! It's that wading through waist-deep molasses middle management stuff that will drive you to drink, I promise you that.
There are good managers and bad managers (well, mostly bad, but..). And, different companies structure things differently. For instance, if you're on a Unix team with 5 other admins, evil middle management stuff is more likely to be deflected by team leads and Unix team managers. If you're in a bad environment, I think the best response is to just not sweat it, and start looking for a better job.

[ Parent ]
School != The World (none / 0) (#36)
by swr on Mon Aug 13, 2001 at 08:11:15 PM EST

All the replies I've read thus far focus on "system" and ignore "administration." Let me tell you far and away the hardest thing about administering a network in a company: it's getting the fucking management to shell out the money you need to spend. And the second hardest part is getting the users to properly use the stuff you bust ass in order to put it in front of them.

Agree! Totally! But I think that is just another example of what you learn about in school and what you face in the real world being totally different.

It does help to know the technical stuff listed in the submission, so that you don't have to struggle with that too. That can be had by setting up an internet server at home as a hobby. Set up an internet server for the purposes of learning and you'll probably miss the point... set up an internet server and attempt to have the coolest possible server on the net and you'll learn tons of technical stuff in the process.

Once you have the knowledge and attempt to apply it in a production environment, the actual challenges are in figuring out how to keep your boss and the other people depending on your work happy, rather than the technical details. And I think that is probably true in any profession.

[ Parent ]

Hear hear! (none / 0) (#66)
by EriKZ on Tue Aug 14, 2001 at 08:31:12 PM EST

I tried sitting in on my manager as she went over a outsourcing contract with the company lawyer. 30 seconds, my eyes strained to stay open. 2 mintues I had to get up and go.

Whole new repect to people who can wade though the paperwork.

[ Parent ]
My thoughts.. (4.16 / 6) (#18)
by ninjaz on Mon Aug 13, 2001 at 03:47:38 PM EST

I assume the road to system administration's enlightenment goes somewhere through either the Computer Science department of a college, a technical trade school's certification program or hands-on exposure to the technology within some military based educational programs.
Really, the path to enlightenment starts with the desire to become enlightened. I'm am the senior Unix admin for the systems hosting the apps & databases our customers use. I've only recently (in the past 10 months) had any sort of training. And, I hold no certificates other than the certificates of completion for those courses - iPlanet Directory Server and Veritas Foundation Suite / Cluster Server.
My question is different. What does it take to become an "Experienced" Unix System Administrator through self study ? The RedHat training department is expecting you to be one, before engaging in taking their RHCE certification exams. Is it possible to achieve such level of experience based on self study on a home based network?
While your "Experienced" appears to mean experienced with only the software side of things, there are other things you can do to gain more 'real' experience. For instance, hanging out in Unix help channels on IRC (and mailing lists, for that matter), and trying to figure out the answers to questions people come in with. This gives you a sort of simulated work environment, where you solve real problems and get exposed more conditions than you would see on your own. Also, once you've done that for a while, perhaps you can find a small business or non-profit organization that would be interested in having you work part-time to maintain a Unix environment.

Regarding the RHCE requirements, all of those things you listed are possible on your own in a home network environment. Certification is not the gatekeeper of employment, though (I say this not only based on the fact that I haven't needed one for employment, but as someone who interviews and chooses which Unix admin candidates to hire)

Since the time I started thinking about the possibility to achieve hands-on experience within the realm of self-study at home, I always wondered about the order in which best to aquire those skills.
I think generally it goes: set out to do something you want, and whenever you come up against an obstacle that blocks your way, learn whatever is necessary to get to the next step. Often, the manuals / FAQs, and good books on the subject (like Unix System Administration Handbook - http://www.admin.com/ ) can help bridge the gap. And, never underestimate the power of google.

Once you've done that a few times, and have helped other people with their problems, you will (hopefully) start to get a general competency with the system, and using a new daemon/service for the first time becomes a more trivial matter.

If you want a more structured/curriculum-based approach, I suggest looking into MandrakeCampus at http://www.mandrakecampus.com/ It has a series of 4 free on-line courses. Most of the material applies beyond Linux Mandrake, so even if you aren't particuarly interested in focusing on Mandrake, there is lots of good info to be gained.

As for Perl/shell script, those are both very useful for System Administration. I learned Perl with the O'Reilly "Learning Perl 5" book (llama), then got a couple others, but soon started using only the manpages and on-line reference material. I picked shell script up along the way, but there are books on the topic.

C programming is not really as expected per se in the field, but there are things you need to know about working with C code and the system in general. For instance, knowing how to compile programs (and how to troubleshoot compile issues, like missing headers/libraries), and to watch system call traces (eg., w/ strace on Linux, truss on FreeBSD/Solaris) to pinpoint the source of a problem with a program that's failing without really telling you why. The manpages for all those system calls are available (in section 2), and you can pick up most of what you need to know from the DESCRIPTION/RETURN VALUE/ERRORS sections.

re: My thoughts (4.00 / 3) (#23)
by danceswithcrows on Mon Aug 13, 2001 at 04:26:31 PM EST

there are other things you can do to gain more 'real' experience. For instance, hanging out in Unix help channels on IRC (and mailing lists, for that matter), and trying to figure out the answers to questions people come in with. This gives you a sort of simulated work environment, where you solve real problems and get exposed more conditions than you would see on your own.

AOL on that. If you see a question that you don't know the answer to, break out the man pages and/or HOWTOs and see if you can figure something out. 9 times out of 10, the answers are in there. If you can find the answer there within 15 minutes and impart it to the other participants without shouting, "RTFM! RTFM!" then you're on your way. Plus, they say the best way to learn $THING is to try to teach others about $THING....

Another poster said "don't worry about using strict with Perl" and I agree with that for the most part... but always, always use -w. That makes learning easier thanks to all the warnings the Perl interpreter will spew out. If you have little to no programming experience, starting with the Camel book is not the best bet. Start with the Llama if you don't know much. The Camel is more useful as a reference for the more complex stuff until you've had a few months to play with the language.

Network administration is a bit tough to learn at home as a small network has fewer complexities than the larger networks you'll find in most work environments. It can be difficult to have a hodgepodge of Linux, 2K, NT, Solaris, MacOS 9, maybe a Novell box, and OS X machines in your home, but you'll find this sort of setup and all its attendant headaches in many sysadmin jobs.

I got a great deal of experience by putting Linux on a system with a flaky motherboard, then trying to solve these hardware problems with software. (Upgrading and recompiling the kernel every chance I got, tweaking settings in /proc , banging on parts of the kernel code, fooling with the X configuration... this is not a good idea in general.)


Matt G (aka Dances With Crows) There is no Darkness in Eternity/But only Light too dim for us to see
[ Parent ]

Very well advised (4.00 / 1) (#27)
by mami on Mon Aug 13, 2001 at 05:21:51 PM EST

For instance, hanging out in Unix help channels on IRC (and mailing lists, for that matter), and trying to figure out the answers to questions people come in with. This gives you a sort of simulated work environment, where you solve real problems and get exposed more conditions than you would see on your own.

Trying to figure them out is ok, posting my answers as long as I am learning, I think is quite questionable. When something is really hard to deal with than, IMHO, the many poorly formulated (technical oriented) questions and the many (consequently) half-baked answers. Just because it's so distracting and time consuming for the learner to distinguish the right from the wrong and to even just understand a badly formulated question at all.

I read them and once in a while post an OT or kid around a bit, but I don't feel comfortable to answer questions and know by now that most of the time I can figure out my own questions, if I search long enough. That belief and confidence in finding stuff has greatly increased in the last two years. I didn't believe I could do the same thing in 1997/8. Well, I guess I was a coward then.

[ Parent ]

How to be a sysadmin... (4.93 / 30) (#19)
by BigZaphod on Mon Aug 13, 2001 at 03:55:13 PM EST

Step 1: Become a sysadmin.
Step 2: See step 1.

That's about it, really. UNIX is not really something you can master by reading up on it or by doing preparation in advance. It is a bit like english (or any spoken language), really. You just have to start using it.

By some standards, I'm a pretty advanced sysadmin. I've played with/configured about 75-80% of the items in the above list. According to other benchmarks, however, I have not even scratched the surface. It all depends on what sort of sysadmining you do. Sort of like how in spoken language you might be really good with, say, sporting words but know nothing of cooking terminology.

As far as I'm concerned, the best way to get good at being a sysadmin is to dive right in blind. Unfortunately that can be a really hard position to get into if you don't have a job related to sysadmining already. So, get yourself a nice box you can dedicate to a *nix and start hacking. I would suggest, however, that you not start with a crappy old 486. Even though there are lots of them around and they can be had for a dollar or two, the headaches of waiting for stuff to load and run might just drive you crazy. If you can, a high-end pentium would be best (and still very cheap). A PII would be better, of course. :-)

Now that you have a box (with lots of disk space and its own monitor) that you can dedicate to the task of sysadmin training, you can begin the process of becoming an expert. Here's a list of things I would suggest trying out (in a sort-of order, but not strictly):

- Install Slackware cold. What I mean is, don't read all the docs on Slackware before you try to make it work. Instead, just read enough to know how to get the install started. Then when you run into problems, try to figure them out yourself. After a couple of failed tries, launch Google on your main machine and start searching.

- Learn how to read and edit files. Learn about more, less, cat, grep, vi, vim, pico, nano, lpe, etc. No, you don't need to know them all right away. But find out what ways you like best to read raw text files and config files. Don't have any text files? Poke around in /etc! This is part of the UNIX experience that is different for nearly everyone. In the same way that you have your own style of spoken speech, this is where you develop your own style of UNIX. Try running everything. Try changing config files that look interesting. Hey, if it kills your box you'll just have to reinstall. And you should know all about that by now! Oh, and remember "man". It is your friend.

- Configure from scratch. Setup your network in Slackware (maybe using those reserved IPs if you don't have a real one). Get the box configured so it can ping your main box and vice versa. This might require a lot more quality time with Google if you're new at it and don't know where to start. But once you have a general idea, start searching man pages first since that can lead to other man pages which might ultimately lead to the solution (rememeber to check those "see also" sections!). Reading man pages is where tons and tons of general UNIX knowledge comes from and is very important. Oh, and you shoulnd't have to reboot for any of this (in theory).

- Setup a cron job that automatically syncs your computer's clock with an atomic clock. Don't know where to start? Google! But remember to break the problem down into its components. One component is to sync your computer with an atomic clock. The other part is making it do it automatically every so often. Usually, a UNIX tool will do just one part of the total solution. Keep this is mind.

- Setup Apache (since that's always fun to see working). But for maximum learning, compile Apache from source first. Google might be handy here, although explore the INSTALL or README files and such first.

- Setup SMB (samba) and make a network drive on your Linux box that can be mounted from Windows. Always a good time to be had here. :-P Of course Google is always around when you run into trouble. If you don't have Windows, you could probably skip this step, although there's something fun about storing Windows stuff on a UNIX box over a network. Or maybe its just me...

- Setup MySQL or Postgre or whatever one you think is better. Learn how to make some tables and some simple SQL (if you don't know this stuff already). But focus your time on the sysadmin-side. Learn how to properly back up the database (good chance for scripting here). Learn how to optimize a database. Setup mod_php for Apache and try to build a simple database-driven page (maybe pulls a list of names from a database table and displays them). Don't know where to start? Remember, UNIX is a collection of parts. It is the job of a sysadmin to put them together (in the form of scripts). Google? Is that you?

- Don't install X Windows. At least not right off. Focus on the sysadmin-ing bits of things. You can do nearly everything in UNIX without a GUI. You must learn these methods first or you will always be dependant on GUIs. In the UNIX world, being dependant on a GUI is the same thing as not being a sysadmin.

- By now you should know all about telnet and ftp. What about ssh? Did you know telnet is clear text and your password can be pulled right off the network? Don't like that idea? You shouldn't! Get paranoid. Secure your box from script kiddies and DOS attacks. <insert Google>

- You must have a reason to sysadmin. You can't just do it for the sake of doing it. If you don't have any reasons, make some up and stick to them. Give yourself deadlines to figure something out. Pretend that there's an office full of angry non-sysadmins just outside the door.

- Try setting up a mail list using majordomo. Once you get totaly frustered with that mess, set one up using mailman.

- Start playing with Perl. Don't worry about making it clean or pretty. Just get the job done. Perl isn't too picky. Don't use strict mode. Just make it work. Worry about getting your code clean and proper later. Perl won't care. Do things like build Perl or shell scripts that "automate" a backup process or perhaps reads some of your Apache log files and generates some stats. Yeah, there are stats programs, but you need the practise with Perl. Do it yourself once. Google is always there when you need it.

- Make some other user accounts on your box. Login with them and try to break the system (messing up configs, reading logs you shouldn't, reading other user's mail, etc). If you can, there's a problem. Learn how to fix it. Then fix it. Google knows these things.

- Buy some X10 stuff. Hook it up to the UNIX box. Build some Perl scripts that turn lights on and off with some event (such as a web hit--mod_php, anyone? Or hey, mod_perl if you're really into Perl) or at certain times of the day. Add in silly things like playing a sound on certain events (say, when you send an e-mail to the machine at a certain address it executes a command which plays sound). Or, make it so that if you telnet to a certain port (you do know about ports, right?), you can issue some special commands which affect the lights in the room and the music currently playing. Build a web interface for your room/house. If you can do this stuff, you'll know you're getting close to being a sysadmin. It might even involve Perl if you wanted it to. Or C. Or Python. Or whatever you want to learn right then. You see, you can do just about anything in just about any language in UNIX. I'm sure you think different than the person down the street. In UNIX, writting code in different languages is similar to how people think different. The end result might be the same (such as saying the same thing as someone else, but knowing that you likely arrived at that word with totaly unique thinking methods). In UNIX, language is not nearly as important as the result.

- When you think you've become a master, try to automate. Find yourself doing some things nearly the same all the time (say, when you build backups)? Build a script. Whatever language you want. Doesn't matter. Don't like the way the scripting languages work with your particular problem? Write your own meta-language and have another scripting language "execute" it.

- Now you're probably getting cocky. Format the drive on your linux box and install FreeBSD. Start over.

If you get this far, and are very comfortable in both Linux and *BSD, then you're probably about ready for an intro job in sysadmining. And by this point, you will no longer care about getting a certification (unless it might mean a higher wage :-). You'll know that being a true UNIX master has little to do with book learning and everything to do with knowing how to search on Google. And that's when you'll know you are true sysadmin material. How do you know when you are a master? When your website or newsgroup postings or maillist messages become answers instead of questions and there's lots of Google referers in the logs. :-)

"We're all patients, there are no doctors, our meds ran out a long time ago and nobody loves us." - skyknight
Wow.. (4.40 / 5) (#20)
by BigZaphod on Mon Aug 13, 2001 at 04:04:17 PM EST

That got long. Sorry. :-P

A couple more comments.. When you're all done becoming a master, trash everything and install Debian. Of course if you do that first, you won't get a good feel for just how it all works. Which is why I suggested Slackware.

After this, get a job somewhere doing sysadmin stuff for big UNIX boxes (like Sun, IBM, etc). They're different than *BSD or Linux, but usually not totaly. Often it comes down to having a slightly different directory structures and a "broken" compiler or something like that. :-)

When you can't reboot for anything and a down webserver or database is costing more money per minute than you make in a year, you'll learn what being a real sysadmin is all about.

"We're all patients, there are no doctors, our meds ran out a long time ago and nobody loves us." - skyknight
[ Parent ]
Oh Lordy... (4.33 / 3) (#22)
by mami on Mon Aug 13, 2001 at 04:24:02 PM EST

I guess I am on the right track then. .. :-) anywhere on the first couple of paragraphs of your first comment... just not with slackware... may be I should try it ...

Of course I already mastered the very last paragraph of your second comment... (I am always reading the end of a book before I read the middle - I guess that's why)... and of course I just lost my own data, as I am a cautious woman, but it cost me dearly my own money, so I guess I have some potential then to become a system admin.

:-)

Thanks a bundle for your comment.

[ Parent ]
Good luck! (3.50 / 2) (#25)
by BigZaphod on Mon Aug 13, 2001 at 04:41:43 PM EST

I'm prone to reading the ends of manpages first myself, and that usually leads to more problems than solutions in the short term. However, the end result is that I find out more about the inner workings of the system as a whole. And that might help me figure something out later which wasn't even mentioned in the docs! The real secret is that there are no secrets. Just keep working at it and keep learning. Everything you need to know is out there somewhere. And there's a good chance Google knows how to get to it. :-)

Have fun!

"We're all patients, there are no doctors, our meds ran out a long time ago and nobody loves us." - skyknight
[ Parent ]
Rereading your comment (4.25 / 4) (#26)
by mami on Mon Aug 13, 2001 at 05:05:54 PM EST

In the UNIX world, being dependant on a GUI is the same thing as not being a sysadmin.

That really hits THE point.

[ Parent ]

Or screw slackware . . . (4.00 / 1) (#60)
by hardburn on Tue Aug 14, 2001 at 04:50:25 PM EST

. . . and just make your own system from source. Yeah, it's tedious. Yeah, to some extent it's just running "make" a whole lot of times. However, it'll give you a good idea about how things work together, you'll get some time with obscure commands, and you'll see how to write and maintain good boot scripts (provided you don't just cut and paste them. Really, type them in yourself).

linuxfromscratch.com is your freind.

After you've created a system from scratch, and it's in a reasonably stable state, get rid of it. In the long run, you're better off using package management tools, as this will keep your systems up-to-date better then you can do with source code. It's one of those things you should learn how to do, but don't do it in practice.


----
while($story = K5::Story->new()) { $story->vote(-1) if($story->section() == $POLITICS); }


[ Parent ]
X10 (4.83 / 6) (#33)
by dboyles on Mon Aug 13, 2001 at 07:04:04 PM EST

Buy some X10 stuff.

I was trying to heed this advice, but I simply cannot find how to order X10 equipment. I've been all over the internet trying to find a place. I've been to every conceivable page. If only there was some convenient window that would just pop up at me and tell me where to buy this hardware!

--
"Complacency is a far more dangerous attitude than outrage." -Naomi Littlebear
[ Parent ]
LOL!! (3.00 / 1) (#35)
by BigZaphod on Mon Aug 13, 2001 at 07:54:21 PM EST

Ha ha!! Yeah yeah.. X10 ads sucks, but still, the point holds. :-)

"We're all patients, there are no doctors, our meds ran out a long time ago and nobody loves us." - skyknight
[ Parent ]
Hmm... (4.95 / 23) (#30)
by trhurler on Mon Aug 13, 2001 at 06:25:42 PM EST

I voted against your story, because I vote against all "ask k5" type submissions, but I'll respond anyway, since it got posted, there's nothing I can do about that, and I have some advice for you.

Frankly, there are four kinds of Unix users. There are the hopeless. These people don't even understand that Unix is an OS, that it is in this respect kind of like the Windows they have on their desktops. Frequently, all they know how to do is click some icon that goes to the Unix machine, starts some X app, and lets them use it without ever seeing any actual Unix stuff.

There are programmers. Not programmers in my sense, which is the "if its a good enough title for Dennis Ritchie, its good enough for me" sort, but rather in the "I'm a wage weenie who barely knows how to write code" sense. They don't know the OS worth a damn, but they usually don't even understand that there is all this stuff they don't know, much less try to learn it.

There are system administrators. Not system administrators in the "deity" sense, but rather in the "I know how to change tapes out on our backup system" sense. They don't know shit about shit, and when they learn some little new thing, they're amazed there was something else still to learn, but that's not sensible, because in saner moments, they all know they don't know shit.

Then, there's what you want to be. A programmer/system administrator combo with a healthy theoretical background and solid experience. You'll have to know how to program to be a top flight system admin, and vice versa. Anyone who tells you otherwise isn't as good as he thinks he is.

In light of this fact, study many things. All at once. Immerse yourself in it, and when the going gets tough, keep fighting it as long as you can - then find something else to work on for awhile, and come back to what was hard later.

At first, don't waste time on specific applications, like configuring printers, unless you actually need to do this for some ulterior goal. Learn the basics. If you don't know how to use vi, learn, because that's the only reasonable editor you're going to always know is available. If you prefer emacs, fine, but LEARN vi. Learn the shell - not just use, but scripting. Shell script is weird stuff, and has weird idioms you need to know to really use it well; in particular, learn to use all the redirection and piping facilities - there are more than you think, and they are more flexible than you think. Learn ksh or posix sh first, then others as needed. Learn sed, awk, and perl. In particular, do not gloss over sed and awk for perl, because contrary to popular belief, you cannot count on perl scripts to go from one place to another without effort(usually effort installing perl modules, but that's still effort,) whereas well written sed and awk are quite portable.

Learn C. I don't give a flying fuck what anyone else tells you. Learn it. You don't have to become a C god, and you don't have to like it, but if you can't read and write simple C programs, you will suffer for your sins, because Unix is written in C. Users don't have to care, but a good admin does.

If you like C, learn a bit of assembler and machine architecture and then pick up the daemon book on 4.4BSD. It'll be hard reading, but you can learn more about Unix that way than in ten years of laying out filesystems and configuring print services. However, if you don't feel comfortable with C, don't waste your time.

Look through your bin directories, and make a habit of reading one or two man pages for some new program(s) every time you are logged in, until you've seen them all. You won't remember them all, but that's ok - you'll remember the ones you find to be useful, and if you need something later, you'll be less likely to reinvent the wheel.

At a minimum, run a BSD system, a Linux system, and a Solaris (x86 if necessary) system. Get used to the fact that they're different; you'll never get past occasionally treating one like another by mistake, but you'll get better with time.

Early on, learn and love man. GNU may tell you man is obsolete. This is because GNU is comprised of a bunch of flaming morons whose "competing" documentation system, info, is used by precisely zero non-GNU entities worth mentioning. Even man has differences from system to system, but it is generally quite similar. You will find BSD man pages to be superior in quality, but they may not always apply to other systems.

If you can do all that, then when someone says to you "do you know how to configure a printer on X system," you can just smile and nod, because even if you don't know, you'll be able to figure it out and do it as quickly as most certification-bearing vidiots can do it by rote. If you can't do all that, then you're never going to be really good, and you might want to consider a career that will be less stressful; low end tech jobs suck.

--
'God dammit, your posts make me hard.' --LilDebbie

Listen to this man, (4.20 / 5) (#32)
by beergut on Mon Aug 13, 2001 at 06:46:14 PM EST

for he speaks the words of the True Enlightenment.

But seriously, I have to agree with every point he makes, especially about my favorite tool, sed.

Learn regular expressions, in general, because they are useful in more places than you can realize (for instance, vi.) They are extremely powerful, and will warp your mind until you think it just grand to smoke a bit of weed to get normal again.

BSD man pages are good, but OpenBSD's pages are the best by a good margin. They spend a lot of time making sure their documentation is up to snuff. Linux' man page effort is ... well ... kind of pointless.

For a bit of added flavor, get hold of an old Alpha and run Tru64. Its log-structured filesystem, AdvFS (the Advanced File System,) is kinda funky, but very very very flexible. If you're into any of the "theoretical workings" stuff, it's a good thing to at least play with.

Program, program, program. Learn the libraries, and learn why things act the way they act. For instance, learn what overcommitting virtual memory is, why it is useful (or not,) why it can be good and bad, and how to turn it on and off (if the flavor you run allows switching.)

Think with a security mindset when configuring, especially with regard to network services. It will pay off in the end.

i don't see any nanorobots or jet engines or laser holography or orbiting death satellites.
i just see some orangutan throwing code-feces at a computer screen.

-- indubitable
[ Parent ]

yes, but now honestly (3.00 / 2) (#39)
by mami on Mon Aug 13, 2001 at 10:05:51 PM EST

- Learn the libraries, and learn why things act the way they act
- Get hold of an old Alpha and run Tru64. Its log-structured filesystem, AdvFS (the Advanced File System,) is kinda funky, but very very very flexible
- Program, program, program. Learn the libraries, and learn why things act the way they act.

I understand, but honestly, did you really, really, really learned that all by yourself (outside a job/working environment) ? My original question was: Is it possible for a female hermit to do with her kitchen-closet-basement-based network, without Gods around ? I have met people, who I respect, telling me that they think it's not possible.

I think one minute, sure it is, even may be the only way to learn it, and next minute I say, no way, whatever network I build, it's never to be anything close to anything what one would encounter in the real world. And being a hermit means no outside pressure to perform.

Now, who of you would have learned many of the things you know, if you hadn't to learn it. So far, any stories about how Perl, Linux and other projects really started out seem to indicate that people wanted desperately to make some tasks, they HAD to do, simpler, more effective, more flexible etc. So, with all due respect, what would have happened to most of you, if noone and nothing would ever have FORCED you to find a neat solution for, FAST ?

But then, it's not that big of a deal either, as long as I can go and dig into things without being bothered.

[ Parent ]

Learning (3.33 / 3) (#47)
by rasilon on Tue Aug 14, 2001 at 06:03:57 AM EST

It is not possible to become a top sysadmin with a closet network. It is possible to learn enough to get a job that can (eventually) allow you to become a top sysadmin.
No one ever knows it all, the best skill you can develop is learning fast and you need to do it because you love learning, not because you have to.

trhurler has about the size of it, but I would add that learning about your system internals is well worth it, knowing how fork() works and the sideffects has saved production systems for me. Kernel knowledge answers many of the "why" questions -- and knowing C and assembler answers many of the "why" questions that it raises.
Also, learn other systems, not just UNIX. I dislike NT, but I would reccomend that you learn it (I did), the more ways you know of to solve a problem the better. Look at VMS, AS/400, OS/390, Tandem, VOS etc.

So, how much of what I know would I have learned anyway? Eventually, I suspect most of it. I don't believe that work has forced me to learn anything, rather that it gave me the oppertunity to learn things and a focus to apply what I have learnt.
I could go all Zen master about atttitude and problem solving, but I think I'll save it for another post. Just remember, never stop learning.



[ Parent ]
Not wholly pragmatic. (4.50 / 4) (#54)
by beergut on Tue Aug 14, 2001 at 11:08:07 AM EST

I understand, but honestly, did you really, really, really learned that all by yourself (outside a job/working environment)?

Except for AdvFS, yes. I learned AdvFS while working as a programmer on a Digital Unix (before it became Tru64) system. I was sufficiently impressed. But, I knew how it fit together with the rest of the system because I learned the other stuff beforehand.

My original question was: Is it possible for a female hermit to do with her kitchen-closet-basement-based network, without Gods around?

Yes. If you can read, you can learn. In fact, trhurler and I learned these things in much the same way, and at around the same time. Amusing that you mentioned a basement network. When I learned something about TCP/IP at first, it was because a couple of friends and I decided to by-God-learn-what-this-stuff-is, and we set up a cheapernet network between a couple linux boxes in the basement of his campus dorm/fellowship house.

We were not "Gods."

I have met people, who I respect, telling me that they think it's not possible.

Well, I'll say that it is easier when you can apply a couple of minds to the task, but it's most decidedly not impossible to learn on your own. There is a wealth of information there, and most admin-types you ask would be happy to provide you with information you lack, as long as you don't become a nuisance. :-)

I think one minute, sure it is, even may be the only way to learn it,

Correct. It's a journey that you'll take by yourself, anyway. You, personally, have to absorb and assimilate the knowledge. Start small, with Linsux and cheapernet, and learn the concepts. Program and learn the tools of the trade.

and next minute I say, no way, whatever network I build, it's never to be anything close to anything what one would encounter in the real world.

TCP/IP works the same way on a coax-based ethernet (cheapernet) and with a big redundant Cisco switch. The network model is the same. The concepts are all the same. If your goal is to learn how to make computers talk to each other, the knowledge is cheap and simple to obtain. The task then becomes applying that knowledge broadly, and in a scaleable fashion. That's where higher-level, more specific learning comes into play. If you're looking to hook up a couple of computers, you don't need to know how to configure ACLs on a big Cisco switch. If you're looking to become a network admin capable of configuring Cisco routers in your sleep, you'll still need to know the basic things you'll learn by hooking together two computers with a cheapernet.

And being a hermit means no outside pressure to perform.

So, learning for the love of learning and for the joy of discovery and broadening of your personal horizons. Sounds fun. Could be lucrative in the future. I say, "Go for it."

Now, who of you would have learned many of the things you know, if you hadn't to learn it.

I didn't have to puzzle out the things I puzzled out to graduate with a BS in Computer Science. I spent my time learning the things that I learned, and haven't yet gotten my degree. :-) But, I learned the things I wanted to learn, and have been able to apply them successfully. And, I have an understanding of the basic concepts, so I can now learn other things without a whole lot of trouble. I'll have to review a bit when I go back to finish my degree, but I won't be starting fresh, and I will have the advantage of seeing the things I have learned in real operation.

So far, any stories about how Perl, Linux and other projects really started out seem to indicate that people wanted desperately to make some tasks, they HAD to do, simpler, more effective, more flexible etc.

Not so with me. I downloaded Borland C++ 3.1 from a pirate BBS back in the day and taught myself C and C++. Because I wanted to learn it, because it fascinated me. A friend and I made a pact to run and learn Linux (and, by extension, Unix,) because we wanted the knowledge for its own sake. We wanted to learn.

So, with all due respect, what would have happened to most of you, if noone and nothing would ever have FORCED you to find a neat solution for, FAST ?

Had it not been my intention to learn for the sake of learning, I could probably be turning a wrench somewhere, or pouring concrete, or teaching history, or still stuffing coats in a box for shipment at the factory where I worked for a while between stints at school.

Knowledge has been, and still is, my driving goal. Understanding is my Mecca. Maybe my Waterloo, too.

But then, it's not that big of a deal either, as long as I can go and dig into things without being bothered.

As long as you know how to find the information you need, and where to find it, you'll do alright when time comes to find it. If you do the legwork early, and understand what it is that you're seeing, you'll be better off when you do need to learn something new, as you'll already have insight into the problem, possibly from a different angle.

i don't see any nanorobots or jet engines or laser holography or orbiting death satellites.
i just see some orangutan throwing code-feces at a computer screen.

-- indubitable
[ Parent ]

Yahoo... didn't think that would be possible (3.25 / 4) (#38)
by mami on Mon Aug 13, 2001 at 09:39:28 PM EST

Hallo, Mr. TrHurler, I really didn't expect ever to get a comment from you I could hundred percent agree with and actually really enjoy... :-) Thank you.

A programmer/system administrator combo with a healthy theoretical background and solid experience. You'll have to know how to program to be a top flight system admin, and vice versa. Anyone who tells you otherwise isn't as good as he thinks he is.

Yeah !

Finally someone who actually says what I felt must be true (about vi, shells, awk and sed and also C). I wished some profs would consider this and start any beginner out on those.

...pick up the daemon book on 4.4BSD

need to figure out which one that is... thanks for pointing to it.

However, if you don't feel comfortable with C, don't waste your time.

Comfortable... ? Geesh, I want to understand what a program does, not feeling comfortable... I have better ideas how to do that.

Early on, learn and love man

Promised... should come naturally... :-) I really appreciated for the first time your straight talk. Thanks.

[ Parent ]

Daemon book (5.00 / 2) (#57)
by trhurler on Tue Aug 14, 2001 at 11:52:03 AM EST

This is the book I was referring to.

--
'God dammit, your posts make me hard.' --LilDebbie

[ Parent ]
You're right, but.. (none / 0) (#51)
by MicroBerto on Tue Aug 14, 2001 at 08:32:10 AM EST

I know you're 100% right, but... is it possible have fun and have a social life with all this going on as well, plus whatever job is being worked currently?

Me personally, I guess I'm just not that interested in IT. It's fun, but seems to lack satisfaction. I'm just here until I get more engineering options opened up, and that's where I'll start heading!

I guess what I'm trying to say is that learning this on one's own would probably pay off if you want to stick in IT, but jumping into the job and easing in during that might yield more free time, albeit get you higher up more slowly.

Berto
- GAIM: MicroBerto
Bertoline - My comic strip
[ Parent ]

Let's answer the questions... (4.00 / 4) (#34)
by Maniac on Mon Aug 13, 2001 at 07:36:48 PM EST

Q: what is the miminum equipment you would need ?
A: Something that runs :-). Seriously. You can learn what you need with a cast off PC from just about any company out there. Sun used to sell 1 Mip, 1 Megabyte, and 1 Megapixel black and white workstations for $10k or more. Most of what I learned on that system still works today.

Q: What is the optimal order of learning those topics to master the requested tasks ?
A: I would start with understanding an existing system. Then getting systems installed & updated. Then diagnosing problems. Then pick something to dig into & learn more on it.

Q: Is it realistically possible to become an "Experienced" system administrator on a home-based network ?
A: Yes and no. You can learn the technical stuff, but none of the "administration" (or management) stuff. Things like - what do I spend my time to automate & which should I do manually? When I use tapes to backup my system... why I throw the tape away if I get more than "X" recoverable errors on it? And so on. Its unfortunate, but you may need to donate your time to a group to learn the ropes.

Minimum equipment: quantity over quality (4.33 / 3) (#65)
by kmself on Tue Aug 14, 2001 at 08:11:53 PM EST

More units of less capability is better than fewer, more powerful, boxes. You learn more working under constraints (limited CPU, memory, disk) then without. Most of what you'll miss is experience with modern sound and video -- not really a sysadmin's forte anyway. Set yourself up a small network -- 2-3 nodes is sufficent, though more doesn't hurt. Can be any cast-off hardware, though I'd shoot for Pentium and better, 32MB and better, 2GB and better as a soft minimum (you can go below this, but it starts to crimp).

Set up a firewall (IPF, NAT). Set up a DNS server. Start serving some files. Find a printer (here I'd go with an older HP laserjet, say a 4, the III's draw too much juice) and find out how print queues work. Maybe a fax server. Try a few distros (Debian, Red Hat, and your pick), and try to get a *BSD in there as well (OpenBSD is an excellent firewall system, FreeBSD is a nice desktop/server).

Docs and resources -- see other suggestions. Books, HOWTOs, Google, Usenet, mailing lists, are all invaluable.

...and just take it from there. The world's your oyster.

--
Karsten M. Self
SCO -- backgrounder on Caldera/SCO vs IBM
Support the EFF!!
There is no K5 cabal.
[ Parent ]

The RedHat certification really isn't that hard... (4.33 / 3) (#37)
by Trepalium on Mon Aug 13, 2001 at 08:19:18 PM EST

I recently took it, and the one thing I must emphasize is don't spend the time reading for it, spend the time working with and breaking RedHat Linux if you want to pass. The hardest part of the exams for nearly everyone is the troubleshooting and install phases. In the session of the exam I took, the people who failed, failed the first part -- troubleshooting, nearly everyone passed the multiple choice part, and a few people failed the install phase. And if you intend to take the exam, you MUST keep your cool. Be confident in your abilities above all else, don't allow doubt to sneak in. And when troubleshooting a system, check the simple things first. Won't boot? Check LILO. X won't start? Check the /etc/X11/XF86Config file. The install section, is similar. Always take the short way out, because the long way is probably wrong.

Just as an aside, there were people there that had years of UNIX administration in their experience and failed, and people who had virtually none and passed. It all comes down to being comfortable with the platform at hand. The test is not guru level, but it does require a skill even sysadmins with lots of years behind them may not have -- troubleshooting broken systems. Unfortunately, troubleshooting is something one only learns by experience, not by books.

If you'll be doing Solaris, do the Sun courses. (4.00 / 2) (#40)
by David Gerard on Tue Aug 14, 2001 at 12:42:31 AM EST

I started in tech support (dial-up Internet tech support, Win32 software support), went on to become PFY in charge of mucking out the Windows boxes, and am now responsible for a pile of Sun workstations and some Sun servers. I've been a Unix user since 1988, but there's only so much of the admin side of things you can pick up as you go along ...

If you are responsible for Solaris, make your employer pay for the Solaris admin courses, part I and II. These courses are worth every penny, and will SAVE YOUR ARSE.

(There are those who can pick up everything they need to know about the Solaris way of doing things by RTFM. But the courses are still better.)

The courses are:

Most of what I'm running is actually Solaris 2.6, but do the Solaris 8 courses because they will be current for longer, and during the course they do say "this is new in 8, not in 2.6" or whatever.

Your company may try to cheaparse you into trying to make do with the CD course. Don't let them. (Although I also worked through the Solaris 7 course on CD.)

I heartily endorse this service and/or product. The course manuals are on my shelf and I am so glad they are there for me to refer to them.

The only minus point: they tell you far too much about the graphical admin tools, the ones that try to turn Solaris into NT. (The tools even tell you to reboot when you don't actually need to :-) They do give you all the command-line equivalents, and jeering from the class is acceptable ;-)



Re: If you'll be doing Solaris, do the Sun course (none / 0) (#41)
by David Gerard on Tue Aug 14, 2001 at 12:54:11 AM EST

I should add that, although the courses are fantastic, Sun Education messed us around appallingly with the course registrations. I think we ended up paying twice at the last second to get me on the course - because my original registration payment was apparently credited by Sun to someone else within our Very Big Company. We are extremely pissed off about this.

But the courses are still worth it!



[ Parent ]
It all comes down to trust. (3.50 / 2) (#43)
by Dirac Tesseract on Tue Aug 14, 2001 at 01:12:02 AM EST

Hey, I too am an aspiring UNIX System Administrator, and trust me, I am going through the same stuff as you are. I have held previous jobs as an Admin though, and from what I have gathered, there are defined experience levels (not too well defined, but defined nonetheless). For instance, certification is nice for getting in the door, but there are better ways of learning than plonking down money... for instance, you could try for a job as a System Operator, or Network Ops Center Operator if you wanted. These jobs are often considered entry-level, and the sort of work involved - though often tedious - is nonetheless often pertinant to Admin work, and often have a defined path of promotion to System Administrator. A lot of people are of the opinion that because they have personal experience, they are qualified for full-on Admin work, and trust me, a lot of them are. I myself know all but three of the concepts on that list (as I am currently learning Perl and do not have much experience with awk or sed). However, I do not have the job experience to back up my claims, and I do not have the money to fork over for certification courses. So I am interviewing for a second shift NOC job... it might potentially be boring, but the company promotes from that job, if you are qualified, and I need to prove that I am. Similarly, you need to prove that you are qualified for the work, and moreso, you need to prove that you can be trusted with the job. Remember, these guys are going to be giving you root access, often to their entire network. If you think about it in terms of trust, you will likely see, like I did, that they would rather know you as a current employee to be trustworthy and competent, than to read it on your resume.


Sendmail may be safely run set-user-id to root. -- Eric Allman, "Sendmail Installation Guide"
Don't aspire to be a SysAdmin (none / 0) (#53)
by duffbeer703 on Tue Aug 14, 2001 at 09:34:30 AM EST

System Administration tends to be a dead end. Personally, I would use a sysadmin job as an opportunity to learn more about various os's and databases and then move on to development. You'll find the hands on, "in the trenches" experience of being an SA/DBA invaluable later on.

As cool as it is to play with new hardware, you will find that answering pages at 3am gets mighty annoying. (esp. when the girlfriend is over)

[ Parent ]
Dead end? (none / 0) (#63)
by mindstrm on Tue Aug 14, 2001 at 05:28:30 PM EST

Not sure I get you there...

Many sysadmins, if they are good, end up moving naturally into other fields as they gain experience; perhaps it's into some kind of development, or management.



[ Parent ]
Well... (none / 0) (#69)
by Dirac Tesseract on Wed Aug 15, 2001 at 01:49:01 AM EST

Heh, well though I do understand your point of view, and it is certainly valid, I am afraid that I must disagree. Granted, I am not entirely certain of your claim of System Administration to be a dead end... Do you mean that you do not see how one might flourish or support a family with the work? Is it an aspect of compensation, such as the relative pay involved? I have seen many a Sysadmin who makes a great deal for what they do... in the six figures, in a few cases.

I also must object to the concept being bandied about that a Sysadmin is somehow "lower" or inferior to a developer... or that the job is seen as such. Granted, it isn't the most attractive sort of work available for some, but honestly, I believe that if you really like the work and are qualified, you can live quite happily and prosper. Plus, you can afford nifty and overly expensive toys. ;)

In the end, my point of view really comes down to a single observation - a developer "produces" - an Administrator "maintains." Not ever site needs someone to produce code - but everybody needs someone to maintain systems.


Sendmail may be safely run set-user-id to root. -- Eric Allman, "Sendmail Installation Guide"
[ Parent ]
diff'rent strokes (none / 0) (#78)
by Hakamadare on Thu Aug 16, 2001 at 01:25:27 PM EST

not to reanimate an old, hackneyed flamewar, but...

system administration and development require different skillsets and mindsets. in my experience, they also tend to have different (though not necessarily opposed) cultures.

--- begin broad generalization ---
in my experience, developers tend to be more project-oriented, willing (and able) to focus very deeply on a single problem for hours or days at a time. this same tendency is a weakness in sysadmins; sysadmins who approach their work this way will get bogged down in making a solution perfect (the "Scotty" syndrome), while other problems pile up outside their doors.

sysadmins have to be able to multitask on a minute-to-minute basis; unless they have the luxury of a front-line help desk to insulate them from direct contact with users, they must be comfortable with being interrupted at all times, and learn how to deal with (and sometimes fend off) users who are sure that their problems should have priority over all else. on the other hand, a sysadmin who does nothing but spend time chasing down user requests will burn out before long, as the overall health of the network declines.
--- end broad generalization ---

sysadmins and developers also have different constraints on their work schedules. case in point: i'm a contract sysadmin, and my ex-roommate is a full-time developer. i work 9 to 5, she generally works 10/11 to 6/8. once or twice a year i'll be stuck at work until the wee hours because a critical system has shit the bed; far more frequently, i'll have to come in a few hours early to bring down a production system that must be up during office hours, but downtimes like that are scheduled by me, generally for my own convenience. :) on the other hand, my developer friend will have periods of two to three weeks during which she's working from 9 am to 11 pm or midnight every night of the week, as her team scrambles to get things finished in time for a release, and this seems to happen like clockwork, every four months or so.

i'm not claiming that either schedule is intrinsically "better" than the other (though i certainly know which i prefer!). but i do strongly believe that some people are more suited to do sysadmin work than others, and your characterization of sysadmin work as a sort of way-station on the way to a "better" job as a developer does not portray the two fields accurately.

-steve

p.s. and then there's the issue of the criteria for a good job. who's to say that a high-powered development job that pays six figures but takes over your entire life is "better" than a mid-level admin job that pays the rent but leaves you your weekends and evenings... but that's grist for a different rant.
---
Schopenhauer is not featuring heavily on the "Review Hidden Comments" page at the moment. - Herring
[ Parent ]

Regarding 'ability to do it'. (none / 0) (#62)
by mindstrm on Tue Aug 14, 2001 at 05:25:46 PM EST

Perhaps it's just my definition of 'full-on admin work'... but just because you know the technical details of unix inside and out, and can configure and run whatever, it STILL doesn't qualify you for full-on admin work if you have no experience.
I'd say, 75% of the battle is not one of technical skill, but of planning and execution, of working with a live system involving real people and real money. Of knowing what is appropriate and what is not.
I'm sure you can pull out many a 16 year old who knows about as much as I do about unix & networking.... but it doesn't mean he'd be able to handle the job.

I used to think this too; that experience was just a way of showing that you know what you are doing, and that you wish there was a shortcut, because you already know all the techy details, even better than lots of older admins. But the 'experience' employers are looking for is not 'I know how to configure apache' but 'I have maintained apache for real live web-providers for the last 2 years, and I understand not just the technical details but how it relates to the business.'

As for a resume... a resume that demonstrates that the candidate has had high-level access to systems of equivalent size makes you feel quite easy; you know they are professionals, and take their work seriously. You aren't going to hand over root access to millions of dollars in gear to someone who 'ran linux at home'. Sorry....


[ Parent ]
Good point, but... (none / 0) (#68)
by Dirac Tesseract on Wed Aug 15, 2001 at 01:38:36 AM EST

You make a very valid point, and in fact it is a point which I argued earlier today. The most difficult part of an Admin job is dealing with the people, at least IMHO. And you won't learn that by sitting hunched over at your Linux terminal, certainly.

Perhaps though, I might clarify my point - see, as I mentioned, I am looking to get into the profession of System Administration. However, I already have three years of experience as an admin, on site, and often I was the only admin for the places I worked at. However, I am still willing to work up to become an Admin (something which I have already been), because in the current job market, one must be pragmatic and do what is necessary to survive and prosper. It is not easy right now to find a job, given the market and such... and that situation is not made better by having only three years under your belt.

So, in finality, although I did expound on the virtue of technical knowledge, I did not by any means claim that experience was "just a way of showing that you know what you are doing."


Sendmail may be safely run set-user-id to root. -- Eric Allman, "Sendmail Installation Guide"
[ Parent ]
Entry Level? (none / 0) (#64)
by EriKZ on Tue Aug 14, 2001 at 05:55:53 PM EST

"For instance, you could try for a job as a System Operator, or Network Ops Center Operator if you wanted. These jobs are often considered entry-level"

Wow! I'd love to find one of these jobs! I've graduated from college and have years of computer experience. But when I look for any UNIX related job, even the ones listed "Entry Level" you need at least 2-4 years of work experience!

Maybe back in the 90's you could get a job like this, and the only qualification you needed was that you didn't drool on yourself. Now things are different.

Missed the boat,
Erik Zolan
eazolan@davesworld.net

[ Parent ]
Maybe I was a tad flexible... (none / 0) (#71)
by Dirac Tesseract on Wed Aug 15, 2001 at 02:09:44 AM EST

Hey, I didn't mean to suggest that getting a UNIX Admin job would be easy or that there would be no qualifications necessary. Maybe I am looking at things from a relative viewpoint - I only have an associate's degree, but I have three years of experience as an Admin. What do you mean by "years of computer experience?" Did you do any work in college that relates to administration work? Do you refer to personal experience as "computer expeience" - and that's all right, for I do that as well. Anyways, I am saying what I have seen - with my resume on seven job boards and a month of sending many applications every night, I speak from experience as well. There _are_ UNIX jobs out there that only require knowledge, not experience. They are few, far between, and are not glamorous, but they are there. Good luck to you.


Sendmail may be safely run set-user-id to root. -- Eric Allman, "Sendmail Installation Guide"
[ Parent ]
don't forget politics (3.50 / 2) (#52)
by AgentGray on Tue Aug 14, 2001 at 09:10:33 AM EST

It's about 75% of the job.

:)

I'm headed there, too (3.33 / 3) (#55)
by hardburn on Tue Aug 14, 2001 at 11:21:47 AM EST

I think I'm in the same boat as the author. I've been able to pick up a lot of the stuff mentioned as prerequsites for the RHCE, but there is a lot I haven't, too. It seems like the top half of the list tends to be more complex (though not too much), while the bottom half is something you learn the first time you install a GNU/Linux system (like "copying files to a floppy").

My suggestion is to find a place where you can get old, cheep hardware. In my case, there is a place in my town where the local university and government send their old equiptment. I have often found old Pentiums for $10-$25 (US), and 486s for around $5. Provided you're not going to be running a site with as much traffic as slashdot, these will work perfectly. I've been collecting these systems for about a year now, and I have about a dozen computers in a working state.

Once you have the computers, get some networking cards and a switch or hub. Perhaps even some routers and multiple switches/hubs, if your budget can handle it. You may be able to find some older 10 Mb/s cards. These can be used on systems that don't need a whole lot of bandwidth (like DHCP, DNS, and mail servers). Save the good 10/100 cards for desktop machines and file servers.

Now that you have all this equiptment, start installing the operating systems. I like Debian for it's nice package manager and Free Software purity. Some day I will probably put some systems on NetBSD, but I'd miss APT.

My current setup is three servers. The first is a P100 file server running SMB, NFS, Apache, and FTP servers (it also has a Roger Wilco server, which is a voice-chat system for games). The second is a P75 running Bind and a DHCP server. This makes things really nice for LAN parties; just plug in my freind's computer and set it to automatic IP address assignment. The last one is a 486/DX4 100 as a firewall (using IPTables).

In the future, I want to move the web and FTP server over to a seperate system. This system would also provide a local mirror for the Debian archives, so I can dist-upgrade all my systems from a local machine. If I can ever get DSL, I might set up a mail server and host my own domain (I'm running a psedo-domain behind the firewall right now).

It's really not necessary to do any of this if you're just setting up a home network. A DHCP server and a firewall is nice in any case, but the rest is really unnecessary, except that I want to do hands-on system administration. I'm going to a techincal college starting in a few weeks, but they won't even let you touch a Unix box until the thrid semester (the first semester is using Win2000, the second uses Novell). Hopefuly I'll have a big head start on the rest of the class by then. I could probably even test out of it, though I doubt I will; you tend to miss a few things when you're teaching yourself, and I hope the class will fill those parts in.


----
while($story = K5::Story->new()) { $story->vote(-1) if($story->section() == $POLITICS); }


Volunteer! (4.00 / 3) (#58)
by dagoski on Tue Aug 14, 2001 at 03:30:34 PM EST

One good way to get experience and at least some mentoring is to volunteer as tech help for a non-profit org. If you have a free net provider or some other worthy .org nearby, drop 'em a line and see what they need.



Work on it everyday... (4.25 / 4) (#59)
by seer on Tue Aug 14, 2001 at 03:55:15 PM EST

This is my ideas:

- Read Bugtraq. Subscribe in digest form and cruz thru it every day. Works wonders for keeping up to date.

- Learn Perl. Learn bash. Play with it. Invent things for you to do. Say, Why not replace every space and "%20" with an underscore for every mp3 file you have on your drive? Of course, write yourself a script!

- Build yourself a Linux 2.4 NAT / Firewall box. Install Snort, tripwire, and whatever else you think might make for a good box to hawk over. :-)

- Enjoy doing it!

'Experience' (3.75 / 4) (#61)
by mindstrm on Tue Aug 14, 2001 at 05:17:32 PM EST

From my own experience (Which is all I know), the way to get experience is to... experience things.

That means work.

Yes, you can play around at home; yes, you can learn a great deal about unix sysadmin at home. RedHat saying you need to be an 'experienced' sysadmin to take their course simply means it's not for newbies.

Real 'experience' though, to get you a job, comes from.... surprise surprise, working. Although it can happen, you generally shouldn't expect to get that nice cushy top-level unix sysadmin job just because you've worked on systems in your basement before. Sysadmin is about more than just technical details of unix. It's about planning, maintaining a system, uptime, office politics, and real management, not just being able to perform technical tasks on the computer.

For that matter... and this is just my personal, biased advice... confining yourself to being a 'unix sysadmin' is just that... confining yourself. Yes, unix is more pleasant than windows, or (insert other aging OS here), but that doesn't mean you shouldn't learn the others.

Systems admin is just that; it's about being responsible for ensuring that systems do what they need to do when they need to do it; figuring out how to do what the organization you work for needs to do.




Apprenticeship (4.00 / 4) (#67)
by phliar on Wed Aug 15, 2001 at 01:09:38 AM EST

The only way (IMHO, but you knew that) to become a good sysadmin, and get started on the road to being an experienced and good sysadmin, is to apprentice yourself to the gods.

Unfortunately it looks like the only way to do that is at school. That's how I learned: worked in the department (CS) as the lowest guy on the sysadmin totem pole, cleaning Linotype machines, doing filesystem backups, taking backup tapes to and bringing them back from off-site storage etc. Gradually they gave me more and cooler things to do, and after a year or so I realised that I was a real sysadmin. No books, no classes; everything came from manpages, the other sysadmins, and most importantly, from doing. Being involved in running a heterogenous network with a few hundred machines - we probably had machines from every Unix vendor in the universe. (This was in the late 80s, so there were quite a few.)

But then I decided to stay in school for the PhD, which put the kibosh on my sysadmin career...


Faster, faster, until the thrill of...

And on a lighter side... (3.80 / 5) (#70)
by TaoJones on Wed Aug 15, 2001 at 02:05:00 AM EST

Read enery single posting in the Bastard Operator from Hell Official Archive. A little dose of humor to keep you sane is a definite must ;)

If we took the bones out it wouldn't be crunchy, would it? Monty Python

Finding information (4.33 / 3) (#73)
by Keepiru on Wed Aug 15, 2001 at 05:11:23 AM EST

The single most important skill I have learned in becoming a successful sysadmin was simply how to find information I need.

If you're brave, I suggest following the path I did. Perhaps 8 years ago, I'd had it with DOS and windows. I needed to multitask in a bad way - I ran a BBS, but wanted the machine to be able to do other things at the same time. Windows just couldn't do it. Desqview was barely cutting it. OS/2 was better, but just couldn't take the beating I gave it on that old 486.

So I downloaded some early version of slackware, and installed it. My only previous experience with unix was on my dial-up shell account. I knew the basics of how to move around and basic file manipulation, but that was it.

My goal was simple - Learn to live under Linux and do everything I'd ever needed to do in Windows. I considered it a failure if I ever had to reboot the machine into one of the other OSes.

X didn't work for a long time. I lived without it, until I knew enough to make it work. That might sound painful, but that's how I learned to fend for myself.

Networking, printing, email, all took a while to learn. I spent a lot of time scrounging around the web, reading man pages, reading source code when man pages failed.

The end result: They call me a "Unix and Network Administrator" now, and pay me some ridiculous amount of money for the service. I don't have any certifications or formal training. I've simply gotten good with unix by living and breathing unix for some time. I'm probably in the 98th percentile of unix knowledge, judging by others I've seen in the business - I know a fair bit, simply from experience, but I hardly know everything there is to know. My friends sort of regard me with this godlike awe as I answer obscure questions they have. There's nothing godlike about it - I've simply gotten really good at reading man pages, hitting Google to find others with similar problems, and scrounging bits of information from source code when all else fails.

Anyway, sorry to be a bit rambley, but that's my recommendation. If you want to learn how to administer a system, taking some basic classes might help you learn some basic syntax, but what you really need to know is how to find information when you need it. That comes with practice. Install Linux on your home PC (and I recommend starting with Debian or Slackware, which won't gloss over basic stuff with a stupid GUI), and teach yourself to cope with problems as they come up. It WILL be tough.

When you feel you're up to it, get a job doing it. You'll quickly find that the biggest hurdle is NOT how much you already know about every parameter in a sendmail.cf, but rather how to have a problem thrown in your lap, and having to quickly find the information you need to fix it.

Do that a few years, and you'll be able to do all the things listed on your certification list. It worked for me, anyway.

--Keepiru
--slashsuckATvegaDOTfurDOTcom


More tips. (4.75 / 4) (#75)
by Count Zero on Thu Aug 16, 2001 at 02:19:58 AM EST

Here's the things that helped me go from "Why does this "Sun" computer give me an error when I type 'dir'", to a well paid Solaris admin for an enterprise-class network. (note: it took about 5 years, but it sounds like you are much further along than not knowing about 'ls'):

  • Practice makes perfect. Get some cheap hardware (even old 486's and Pentiums are fine. I used to run my home web/mail/DNS server on a 200 MHz box with 32 MB RAM) and try things out. Don't be afraid to reinstall the OS is you think you've screwed things up. Set up things like BIND, Apache, Sendmail.
  • Read: Man pages on your system (BSD man pages tend to be very well written.) Books (just about any O'Reilly book is good) Websites (I still use google as one of my first problem solving resources.
  • Learn to research: You will never know everything. But, if you know how to find answers quickly, it won't matter. Newsgroups, message boards, websites, and mailling lists are your friends.
  • Learn multiple Unixen: They are all a bit different. If you only know RH Linux, the moment a Solaris job comes along, you'll feel lost. If you know a couple Linuxen and a BSD, you'll pick up new Unixen much faster.
  • Programming: Being able to automate repetitive tasks is a big help. When you have a real admin job, you'll often be approached with "The system needs to be able to do X." Perl is my choice to do this. C is also important. While you don't need to be a C god, you should be able to look at C code and know what is going on. Knowing how makefiles work will make troubleshooting software installs much easier as well. (C is the one part of all this I actually have formal training in)
  • Job in the meantime: One of the biggest things that helped my career was working for two local ISPs as regular phone tech support. (A job anyone who can handle Windows DUN, modems, IE, and OLX can get) This will expose you to production Unix systems, and put you in contact with real Unix admins. In both the small ISPs I have worked for, the admins were always very helpful with any question I asked. When I got hopelessly stuck with X, asking one of them always got a good responce. Then there's the added side benefit that if said small ISP offers ISDN/DSL service, you can often get that service with static IPs *very* cheap as an employee. This gives you whole new issues to deal with on your home LAN, like now your network is attached to a hostile environment, so learning good security practices becomes very important.

I'm sure there are things I am leaving out. It's not an easy road, but if you enjoy it, it can be a fun and rewarding one. (Which leads to what should be my last point: If you don't enjoy it, don't bother. Admins who don't enjoy this stuff tend to be poor admins)



This is how I did it anyway... (4.00 / 1) (#77)
by DrWiggy on Thu Aug 16, 2001 at 12:43:45 PM EST

If all you want to do is maintain a single Redhat system, your approach will be fine. Unfortunately, you'll be virtually unemployable. When I started out working, I had no 'nix under my belt at all. All of my experience to date has been hands-on with real systems that customers were paying for access to, and I learnt it all outside of any certification program. I have a B.Eng in Software Engineering, but that's bordering on useless in my current job.

Not only does the commercial experience approach sharpen your focus a little, it gains you more exposure to more configurations. If you are sat at home and you mess something up, it's your system, nobody is going to shout. However, you start to think about consequences of configuration changes a great deal more when you realise that if you mess up 'x, Y and Z' one Friday afternoon, you could end up loosing the company millions an hour. As a result, you tend to think through the whole process, every possible thing that can go wrong and make sure you're covered, before you do it. As a consequence of *that* you end up being able to understand the OS a whole a great deal more, and a lot more quickly.

When it comes to equipment and platform exposure, working within an ISP with carrier-grade telco kit, hosting dozens of different platforms and only having a small team of admins means you end up being able to see a little bit more of the world. It's how I got started, and although I hated my management and the ISP in question is now going down the pan, it was good experience. If you can get work in an ISP, the pay will be crap, but the experience will be valuable. You must understand this now, before you go any further if you want to be an admin:

Sys-admin'ing is not Unix
Unix is not Linux
Linux is not Redhat

Therefore if you want to be a sysadmin not only are you going to have to see more than just Redhat (which is crap anyway), not even go further than Linux, but you're going to have to take in obscure modem racks, hubs, switches, routers, network design, high-level protocols, low-level protocols, understanding of file systems for every OS you run on-site and a whole load more. I won't even get into the software you're going to have to learn. However I will give you a hand now, a rule that few ISP admins will share:

http://www.freshmeat.net/ is homework cheats for admins

I hope this hasn't scared you off. In fact, I hope you want this bad - admin'ing is a great job. I'm only 23 and am a tech. director because I was exposed to the right (or rather wrong - it was chaos) environment when I was only 18. As a result I learnt to learn quickly, and that's the one skill you will need if you want to work close to the top of the tree. If you can demonstrate that, even without a single bit of Unix experience to your name, you're employable by half the companies in the world.

Computer Science is not the way to go (3.66 / 3) (#79)
by BinaryBoy on Thu Aug 16, 2001 at 03:02:16 PM EST

I admit I haven't got much knowledge of serious system administration (although I manage to keep my RedHat box at home up and running). I also studied computer science. That should tell you something: Computer science has nothing to do with system administration! Be sure you know what exactly you're getting into with CS before you go and spend a load of money on it.

CS is really about math and algorithms. It hasn't got anything to do with day-to-day administration of computer systems.

Just my $0.02 to help you out.

Woohoo! (none / 0) (#80)
by Dirac Tesseract on Thu Aug 16, 2001 at 09:01:15 PM EST

Thank you sir! You'd be surprised at how many people blanch in outrage when I try to explain to them why knowing how to write an OS or code in COBOL has absolutely nothing to do with dealing with the quirks of AIX.


Sendmail may be safely run set-user-id to root. -- Eric Allman, "Sendmail Installation Guide"
[ Parent ]
becoming a sys admin (4.85 / 7) (#81)
by lherbert on Sat Aug 18, 2001 at 11:20:23 AM EST

Wow,

It is interesting to see my life in parallel (sort of.)

Two years ago I was swinging a hammer for a living trying to put food on my family's table (a temporary, thankless existence in a series of thankless, dead end opportunities.) I would come home, cook dinner for my wife and stepson, and after they went to bed, spend about 3 hours each night trying to figure out how to make Red Hat 6.0 sing on my home computer. When I got laid off, it was gut check time.

Here I was, a former GM of a small company in Denver who moved his new family cross country to a remote redneck outpost along the coast of Georgia (don't ask) and finding it all but impossible to find meaningful, gainful employment.

After a short period of contemplation I decided to shell out some cash and pursue Red Hat's RHCE program. At the time, Red Hat's exclusive training partner was Global Knowledge.

There were not that many areas that Global Knowledge actually offered the RHCE classes, but luckily one of them was in the DC area - where my brother lives. Cool - a place to crash for free while I took about 5 weeks of classes (I also took 2 networking classes and a TCP/IP class.)

So I took the classes and postponed taking the RHCE exam, updated my resume, and answered some ads on Monster and Hotjobs. I was looking for an internship to gain experience, and narrowed down postings for jobs where I had relatives and close friends who could put up with me for about 6 weeks.

Keep in mind that this was the summer of 2000 and the .com 'boom' was going strong. I have also held some fairly responsible positions and I am older than the average 'tech' intern. I emphasised my maturity, adaptability, and intelligence in my cover letters.

I answered about 15 ads on the 1st day I started looking and then started to do some chores around the house. About an hour or so later, my wife popped her head out of the front door and told me I had a phone call.

It was a startup in Alexandria whose ad I had answered. They wanted to know if I would be interested in doing a phone interview that afternoon with one of the founders (like I was going to say 'no'.)

The next thing I knew, I had a plane ticket for an interview that weekend. I had a job offer from them 2 days after I got home from the interview.

The offer was for a 6 month internship, after which time if they still liked me and I still wanted to stay, a full time offer would be made. I took the offer after talking it over with my brother and wife. I'd stay with my bro, and drive to Georgia to see my family whenever I could.

After less than six weeks, the company made me an offer to for me be a full time (non-intern) employee. I took it, and I am still here.

It has been over a year now and I have survived a few rounds of layoffs. (They got me a little on the cheaper side since I had no experience, and I work my ass off almost every moment I am here.) My wife and stepson are still in Georgia but we hope to be together as a family again by Christmas.

Anyway, here is my advice based on my story.

1. You are in a catch 22 situation. The job market is much tighter today than it was a year ago and you will be competing against applicants who have both knowlege and probably at least a year or so of experience. There is no substitute for experience, but it would be even harder for someone with no experience and formal training to catch the attention of a prospective employer. You will need to market yourself on your strengths - regardless of whether those strengths exist at this point in time.

2. Assess your market. Call IT shops in your area, network consultants, etc and find out what types of opportunities are available. If your hell bent on being a Linux Sysadmin, and there are only companies running - say Solaris - in your area, you will be shit out of luck unless you get out of Dodge. I would look hard at other certifications if they might get you a job in your market or wherever it is you want to live.

3. Is there a LUG in your area? If so join it. Go talk to these people and find out what they do. There will be people with connections to Linux jobs at Linux User Groups.

4. Network with IT people. Find out who the CTO's and NOC Directors are for companies in your area. Call them up, offer to buy them lunch, and interview them about what types of skills and experiences they look for in employees. Have a resume with you and ask them to evaluate what types of skills you would need to gain in order to work in this field. Do not sound like you want a job with them. You want a job in this field, not with that company. If you sound too much like a job seeker you will get the " We don't have any openings at this time..." The idea is to make an impression (hopefully favorable) as a sincere, mature, eager to learn kinda guy. They might unexpectedly offer a part time position that will get you experience. Also do this with people at Linux User groups. Let this be your mental mantra: "Make impressions on those with connection!"

5. Be mature when you talk to people. Let your enthusiasm about Linux and Unix come from the benefits of the OS and don't come off as a typical Microsoft basher. Linux is a great OS on it's own merits, not because you don't happen to like Bill Gates or you hate Microsoft. It's always better to be 'for' something. Trashing the most successful business in the history of business to a businessman will get you little. Save that kind of talk for when you are having a beer with your buddies!

6. Learn TCP/IP networking like the back of your hand first. An OS in a vacuum is a rather useless thing unless you like playing electronic card games. Understanding the complexity and beauty of networking is what will get you employed.

7. Start also learning about Java and Oracle once you start to get the big Unix/Linux picture. There are never enough competent Oracle DBA's and Developers or Java Developers.

8. Be a good person. This will sound corny and will conjure up images of the Stuart Smalley types. But the fact is, if you are a jerk, you're toast. Hours in this field can be long and hard, no one will want to wok with you if you are not personable or easy to be around. If you are wound too tight, make regular visits to the local comedy club and listen to a symphony on occasion.

I hope this helps you, or in some way answers your questions.

I still have not taken the RHCE exam. I don't feel like I have the experience to pass it yet, and I will be the one shelling out the $750, so I want to take it only once. I hope to take it soon, though. :-)

Let's break it down (4.50 / 2) (#82)
by plastic on Tue Aug 21, 2001 at 12:05:00 AM EST

Perhaps this won't work for everyone, but it is a rough sketch of what I have gone through in my (continuing) journey as a unix sysadmin, or at least what I *would* go through if I could do it all over again. If nothing else, hopefully it will put you in the right state of mind about what you are getting yourself into and where you really want to go with this thing...


1. Get a little knowledge. This is the 'set up your own firewall and read all the man pages' part. First thing, join SAGE, because you a) you need to fill up that blank peice of paper called a resume and b) if you're in it for the long haul, it is well worth the price. Get your hands on some used PCs and start plugging away. www.linuxdoc.org is so totally your friend. There are entire free books there. If the info you need is not there, hit google. If you do not have much experience with Linux, ignore what everyone else here is saying and go with Red Hat, because the point here is not to drive yourself insane but to get the machine up and running quickly and start having some fun. Not to mention the fact that since it is the most popular distro it is statistically in your favor to have that distro listed on your resume. *Buy a domain name* (really, don't get cheap here. Just do it, trust me). Get apache, BIND and sendmail up and running for your new domain name. Read the logs and understand what they say. If you are feeling hardcore, then back up all your stuff and put Linux on your main box for a few weeks and tame that mother. Then put Windows back on, and get Samba working. The overall point here is to be familiar with both Windows and Linux. You should consider A+ Certification at this point.


2. Get a little experience. This is the tough part. You gotta get that first job, and now is not a good time to be looking for tech jobs. If you're in college, get a job at a computer lab. If you're not, try to get a job at a small computer store. Don't be afraid to suck it up and do phone tech support. The point here is to a) get a job involving computers, b) suck up as much information as possible, and c) become *that guy* that people who don't know what the hell they're doing go to when they need computer help. Don't get too attached, this is a stepping stone job. You help them out, they give you a paycheck and a bullet point on the resume. Stay focused.


3. Get experience by volunteering. This is where you cringe slightly and say "That's nice, but it's not for me. I'm strange around people I don't know, I've never volunteered before and I'll just skip this part." Ok. I understand. But you need to NOT BE A WUSS about this. Look in the paper, check local websites, look at the board at the local coffee shop, you get the idea. The point here is that all the other sysadmin-wannabes out there are content just sitting in their cubicles and plotting world domination. But not you. You will get out there, meet new people, have interesting things things to put on your resume, and have neat stories to tell at your interviews. Also, don't shy away from stuff that involves more A/V (like manning a sound board at a small jazz fest) than computers, it is still very good experience.


4. Get more knowledge. So you've got the job, and you've done a volunteer gig or three. Good for you, you are well on your way. Now you need to get hardcore, and focus your studies into three areas: (1) Unix. Try one other ditribution of Linux and a BSD. See what you can do to get an old Sun box. If that fails, go find Solaris for x86, install it, and understand it. Your friends here are www.sunfreeware.com and www.sun.com/bigadmin/. It is *so* important that you have more than just Linux on your resume! Read Essential System Administration (The armadillo book) and Unix System Administration (the purple book). These are daunting volumes, try to consume them in nightly bite-sized portions. This is where you go get your RHCE. (2) Networking. Purchase TCP/IP Illustrated, Volume 1. I know, I know, the book is so expensive but just go buy the damned book, ok? Install tcpdump on your Linux box, and start sniffing like you've never sniffed before. Become familiar with the protocols. Maybe, just maybe, you will get lucky and run across some used Cisco gear. This is where you go get your CCNA. (3) Scripting. Start with bash, poke through the rc scripts and get familiar with them. Write a few small bash scripts and just generally play around with it. Next, move on to either Perl or Python. Although I personally favor Python, the fact of the matter is that Perl is significantly more marketable and recognizable. Plus, you can always convert to Python later and enjoy it that much more. Now, don't be an idiot and, thinking you are a studly geek, purchase Programming Perl (the camel book) and then let it sit there and gather dust because it is just so huge and, well, huge. Go buy Learning Perl (the llamma book) and work your way through the book. *Now* go buy the camel book and start writing your own scripts.


5. Get more experience. In a perfect world, you will have made so many friends at your current job and met so many people volunteering that you just stumble across a place that needs a junior admin, and they hire you, because Bob works there, and he remembers you from the Three Stooges Film Fest, and you were able to get that one cranky projector to work, and vouches for you. These things really do happen. But not for everyone. So maybe you pound the pavement for a while. Maybe you even want to consider moving to a town that has a better tech scene? Who knows. All I can say is keep your eyes open, and *get out there*. Don't just check out monster.com once every few days, check out the *ads* (not jobs ads) in local papers and see who seems to be doing well and could maybe use a sysadmin. As you drive around town, take a closer look at those boring, grey business parks. There is gold in them there business parks! Keep a notebook and pen handy. You get the idea.


6. Even more knowledge. You are kicking ass. This is where you make some real heavy choices. You can be the Unix guru you've always wanted to be. But, you can also be the all-knowing Network God (CCIE perhaps?). Maybe you will move from Perl into Java or C++ and follow the way of the Programmer. Good DBAs are rare and great ones are rarer still. Don't forget about the White Hat, saving the planet from evil hackers through the judicious application of security. Who knows, maybe management is more your thing? Nah...





Thanks (none / 0) (#83)
by mami on Tue Aug 21, 2001 at 06:17:51 AM EST

that's basically it . :-)

[ Parent ]
System administration 101 (4.00 / 1) (#84)
by sith on Tue Sep 04, 2001 at 08:04:50 AM EST

Hi, I started with Linux at the age of 16 (that was kernel 1.2.x series). I started with a Slackware distribution. I'm still using Slackware because it's more "UNIX-like" compared to RedHat and Suse.

Then I started buying the famous O'Reilly books. The most important are :
- Essential system administration
- TCP/IP network administration
- DNS and Bind
- UUCP and Usenet

Now, abandon RPM's for a while, and start building from source. (a good exercise : build a Apache from source with OpenSSL and PHP. Compile PHP with mySQL and libXML support). This may sound stupid, but I learned more about UNIX by compiling everything from source. It helped me to understand how the different components work together.

Then it's time to build your own Linux from scratch. It also helps to understand how the different components of a UNIX system work together.

Last words : experiment, experiment and read man-pages :-)

...this sig will self-destruct in 5 seconds.
How To Become An Experienced System Administrator | 84 comments (78 topical, 6 editorial, 0 hidden)
Display: Sort:

kuro5hin.org

[XML]
All trademarks and copyrights on this page are owned by their respective companies. The Rest © 2000 - Present Kuro5hin.org Inc.
See our legalese page for copyright policies. Please also read our Privacy Policy.
Kuro5hin.org is powered by Free Software, including Apache, Perl, and Linux, The Scoop Engine that runs this site is freely available, under the terms of the GPL.
Need some help? Email help@kuro5hin.org.
My heart's the long stairs.

Powered by Scoop create account | help/FAQ | mission | links | search | IRC | YOU choose the stories!