A Linux system administrator is responsible for the standard day-to-day administration of Linux servers. This would include, but not be limited to, deployment of a standard LAMP (Linux, Apache, MySQL and PHP) web server configuration, including installing all standard plugins, SSL and configuration. A Linux system administrator should also be familiar with at least two different Linux distributions. Ideally, one of the Linux distributions should be Redhat Enterprise Linux, the most common distribution used in the corporate world. The second distribution should be one of the Debian based distributions (such as Debian and Ubuntu), since most cloud service providers use some form of Debian for their servers. A typical applicant should have at least three years of experience in day-to-day administration of Linux servers.
In addition to standard setup of Linux servers, a Linux system administrator should be well versed in upkeep of the servers after initial setup. This includes patching (via Yum, Yast, or Apt, as appropriate), security remediation, based on scans and logs, and standard maintenance such as firewall configuration, log rotation, and performance tuning.
Ideally, a Linux system administrator candidate also has some knowledge of supporting technologies for their servers. This would include basic networking knowledge (preferably Cisco or Juniper in regards to hardware), VMware or Hyper-V virtualization, and at least one cloud platform (AWS, Openstack or Azure). The Linux system administrator doesn’t need to be an expert in any of these fields, but some basic knowledge of how their Linux server interacts with these supporting technologies helps round out their skillset.
Last, like all IT jobs, a Linux system administrator needs to be very analytical, able to effectively troubleshoot and resolve a variety of problems. They must also be patient and have the ability to work well on a team.
Linux System Administrator Tasks
- Back up, recover, maintain and migrate data and programs.
- Identify and resolve service problems ranging from disaster recovery to login problems.
- Maintain, enhance and create tools for the Linux environment and its users.
- Create and update documentation, including maintenance logs and end user training.