What a beginner should know/learn for sysadmin job?

There is a lot of overlap with existing questions, I am creating a wiki here with links. Please feel free to update.

  • How to make (and restore) backups!
  • Customer service skills
  • Troubleshooting
    • Your troubleshooting rules, approach to troubleshooting?
    • Etiquette of Troubleshooting Problems In The Workspaces Of Others
  • How to respond when there is a crisis
    • What’s your checklist for when everything blows up?
  • The OSI Model, and IP networking.
    • What is the OSI model and how does it apply to todays networks?
    • Practical implications of OSI vs TCP/IP networking.
    • How does Subnetting Work?
    • What is the difference between a port and a socket?
    • What are routers, hubs, and switches?
    • What is the difference between UDP and TCP?
  • How to document their network
    • How are you documenting your work, processes and environment?
  • How to ask for help in a way that will get you useful results.
    • How To Ask Questions The Smart Way
    • How to ask a question
  • Security
    • How to respond to a compromised system
  • How to use the CLI
    • Useful Commandline Commands on Windows
    • Useful Commandline Commands on Linux
    • Useful Commandline Commands on Mac OS
  • How to monitor the systems you will be responsible for
  • Also see
    • What makes a “Good” or “Great” Administrator?
    • Cheat Sheets for System Administrators?
    • What tools should you absolutely know as a Windows/Linux Sysadmin?
    • What should every sysadmin know before administrating a public server?
    • What sysadmin things should every programmer know?
    • What is the single most influential book every sysadmin should read?

On the personal level:

A really good skill that I hope you acquire on your way towards becoming a sysadmin is the ability to quickly recover from your mistakes... this should become second nature (an automatic reaction).


**While browsing once, I found this strictly unofficial, highly-debatable, yet potentially useful list:

SysAdmin Ten Commandments

: I. Thou shalt respect thy user
It is paramount that you respect the user and their data. Don't steal their MP3s, don't look at their porn. When working with email, look without reading. Respect them and they will respect you.

II. Thou shalt empower the user
The user is the customer. The system is not yours, it is theirs. Provide users the tools they need to be successful and they will be happy. Give them space to experiment, learn and create. Do not hold users back.

III. Thou shalt keep it simple
Keep It Simple, Stupid. The KISS principle will keep you from building barrels to keep a bottle's worth of wine. Do not mistake over-engineering for quality. Quality work is concise and scalable.

IV. Thou shalt expect catastrophe
Expect the worst surprises. Make your resources redundant, backup your data, test your backups, and then backup the backups. The shit will hit the fan someday. Be prepared.

V. Thou shalt plan
Great work follows great plans. Stay on target by first identifying it. Plan your work carefully and surprises will be easier to handle.

VI. Thou shalt stay informed
Gather all the news, information, logs and statistics you can. Without the raw data to analyze, you cannot be secure, you cannot debug problems and you cannot forecast. Without new information, you cannot learn.

VII. Thou shalt share
No one is alone in this world. Pass your knowledge on to others. Give to others, contribute to the community and you will reap many rewards. It is not wise to horde knowledge. Don't be an asshole.

VIII. Thou shalt automate
Do more, faster by automating tasks. You are the puppet master, do not waste your time with menial work. Work smarter, not harder.

IX. Thou shalt document
Always document your work, your code and your plans. Then document their execution and maintenance. Document for others and document for yourself. Documentation should be an extension of your mind and a resource for others.

X. Thou shalt respect thy organization
Without organization, there is no system, there is no user and there is no job. Understand the organization and it's business. Respect it and help it thrive.


Create projects for yourself

The best way to learn about how to fix desktops is to build your home computer, and then improve/break it until you're comfortable doing that.

Interested in web servers? Install/enable a web service on your home PC (apache or IIS in XP) and you'll be amazed at how much you pick up about DNS, networking, etc. And how useful that knowledge will be to you down the line.

I could keep listing examples, but you get the idea. The more fun you have with it, the more you learn. The more you know, the more fun your job is. This makes you a more enjoyable coworker, and a better job candidate.


No one has said much about security, but it's always going to be the elephant in the room on the front burner, to mix metaphors. With respect to security specifically, you should know something about the following areas as well as be familiar with at least one or two tools that help you manage each:

  • patch/vulnerability management
  • encryption methods for data in transit and at data at rest
  • firewalling/filtering principles
  • packet/traffic analysis
  • basic penetration testing methods and attack vectors
  • compliance and regulatory issues in your industry and locale

Really depends on your environment. Are you maintaining servers, networks or simply rebooting the Windows Exchange server when it runs out of memory?

In general, these skillset will come in handy.

  • Windows knowledge: workstations, servers, active directory
  • Printers. We all hate them, but they are here to stay.
  • Linux knowledge: experience helps, but generally not to be afraid of the terminal.
  • Network knowledge: Know your network, manage switches, routers, firewalls, site-to-site VPNs.
  • Scripting. This can be .bat files or shell scripts. It will make your life easier.
  • Backups. A requirement for a sysadmin and could get you fired if you screw it up.
  • Programming. Not required but it helps.

Most importantly: You must be able to learn new things. Nobody knows every system, so being able to Google, order books, take courses to improve yourself is very important.