Skills required to be a Linux sysadmin

This came from an eventually anecdotal mailing list thread on what skills are required to be able to work as a Linux Systems Administrator.

  • Perl
  • Shell scripting
  • Sed, awk and grep
  • Process and load management (ps, top, kill)
  • Hardware resource management (df, free, mount, fdisk, fsck, modprobe etc)
  • Samba is a must.
  • Email server. Setup, maintenance
    • MTA (Postfix, Exim)
    • MDA (Procmail)
    • MUA (Courier, Cyrus)
  • Spamassassin, ClamAV
  • Firewalls. Smoothwall or IpCop as a firewall appliance. IP Tables for hand-rolled firewalls.
  • NFS server (host based access rights)
  • SSH server
  • LAMP server – Linux, Apache, MySQL, Perl/Python/PHP
  • Security (firewall, patching, upgrades, locking down)
  • Logging / Fixing stuff that’s broken
  • Network monitoring (Nagios/OpenNMS)
  • Databases (not everyone uses MySQL)
  • Active Directory / LDAP / etc.
  • Installation / configuration of $random_bits_of_software
  • Backups (inc rsync)
  • DNS
  • Web proxy caching (probably Squid)
  • Clusters (for parallel numerical analysis)
  • Network setup, IP addressing, using network diagnostics, routing (ifconfig, netstat, route)
  • Compiling of software and kernels
  • Misc – Understand permissions, run-levels, init scripts and how to stop, start, add and remove system services, using cron jobs, using vi(m).
  • How to find information fast (man pages and Google ;-))
  • Find out about hardware (lspci, lsusb, lshw, lsmod, /proc)
  • Text processing (head, tail, cat, less, more, using redirects and pipes)
  • 0870 60 10 100 – MS UK technical support 🙂

It was agreed, that not all of these were essential, as most roles are not as all-encompassing as this list. However, many of these skills were critical. It was also agreed that it is not necessary to know each of these inside out, but it is necessary to have enough knowledge to know how these things work and even more so to know how to find out information on them quickly (i.e. man pages, documentation, google etc)

And finally,

Courtesy of Ron, who knows everything:
(I deny this! – ron)

Just remember the 3 law of system administration (with apologies to Isaac Asimov):

  1. No Sysadmin may harm a users data or, through inaction, allow a user’s data to come to harm.
  2. A Sysadmin must make the system available to the user except when doing so would conflict with the first law.
  3. A Sysadmin must protect their own existence except when doing so would conflict with the first or second law.