The Linux Foundation (www.LinuxFoundation.org) offers the Linux Foundation Certified SysAdmin (LFCS) certification. This certification has been picked up by Microsoft. Microsoft offers the “Implementing Microsoft Azure Infrastructure Solutions” exam, number 533. If passed, with the combination of the LFCS exam, being passed, a person receives the MCSA: Linux on Azure Certification. NOTE: At the time of this writing, I found no books available for the LFCS exam on the Internet or at bookstores. The exam requires knowledge of Linux in one of the following: CentOS 7 openSUSE 13.1 Ubuntu 14.04 At time of registration, you will be asked which of the Linux distributions you wish to be tested on for the exam. All test-takers must provide their own system to use for the exam. The system must have a Chrome or Chromium browser, Internet ability, webcam and microphone. The test is performed through a Virtual Machine in the browser, so your specific Linux Distribution test type need not be installed on the system. Your hardware can be tested at https://www.examslocal.com/ScheduleExam/Home/CompatibilityCheck to verify it will work for the exam. The exam is taken on your system wherever you wish. A plug-in will be installed on your system for a proctor to observe everything you do on your system as well as monitor you on the webcam. The test-taker must remain in the webcam's frame during the entire test. No food, drink or other electronic devices are allowed. The proctor will ask the test-taker to scan the room with the webcam to verify you are alone. All test-takers must present a photo ID to prove their identity to the proctor before the test. All video of the test is stored for 30 days in the case that the video needs to be reviewed to check for cheating, etc. To pass the exam, you need to score 74% or better. The time allowed to take the test is two hours. Presently, there is an offer to retake the test once for free if you should fail, as long your purchased exam is not marked as “SINGLE-ATTEMPT”. The exam fees are $300, which should include the re-take for free if you need it. Of course, if you want the MCSA from Microsoft, you also need to take Exam 533. If you pass both you can the contact Microsoft and provide proof of passing both tests and you will receive the MCSA: Linux on Azure Certification. The test is split up into various Domains and Competencies (version 2.16) and is split up as follows: Essential Commands (25%) Operation of Running Systems (20%) User and Group Management (15%) Networking (15%) Service Configuration (10%) Virtualization (5%) Storage Management (10%) Each Domain is defined by competencies as follows: Essential Commands - 25% Identify the component of the Linux distribution that a file belongs to List, set, and change standard file permissions Install Linux Distribution to physical media Read and use system documentation Install Linux Distribution over a network Manipulate file content programmatically Install Linux Distribution into a virtual disk image Transfer files securely via the network Manage access to the root account Log into graphical and text mode consoles Perform disk image management Search for files Use version control tools Evaluate and compare the basic file system features and options Run commands on many systems simultaneously Compare text files Compare binary files Identify different types of files Create and edit text files Use input-output redirection (e.g. >, >>, |, 2>) Analyze text using basic regular expressions Access remote systems securely using CLI Archive, compress, unpack, and uncompress files Create, delete, copy, and move files and directories Create hard and soft link Operation of Running Systems - 20% Boot, reboot, and shut down a system safely Boot systems into different runlevels manually Install, configure and troubleshoot the bootloader Verify the integrity and availability of key processes Change kernel runtime parameters, persistent and non-persistent Use scripting to automate system maintenance tasks Manage shared libraries Manage the startup process and servicesC Change the priority of a process Identify resource utilization by process Locate and analyze system log files Schedule tasks to run at a set date and time Verify completion of scheduled jobs Manipulate Linux system during the boot process Manipulate Linux system during the recovery process List and identify SELinux/AppArmor file and process contexts Produce and deliver reports on system use (processor, memory, disk, and network), outages, and user requests Update packages from the network, a remote repository, or from the local file system Configure and modify SELinux/AppArmor policies Monitor security and conduct audits Support incident management for outages/trouble Script automation tools to make work faster and more accurate Identify and resolve system performance bottlenecks and platform instability Develop and test disaster recovery plans Update hardware to provide required functionality and security Maintain systems via configuration management tools Update operating systems to provide required functionality and security Train team members on new technology or changes to existing systems Update software to provide required functionality and security Develop system disaster recovery tests Install software from source Update the kernel and ensure the system is bootable Verify the integrity and availability of hardware Verify the integrity and availability of resources User and Group Management - 15% Create, delete, and modify local user accounts Create, delete, and modify local groups and group memberships Manage system-wide environment profiles Configure a client to use LDAP for user and group information Configure a system to authenticate using Kerberos Configure set-GID directories for collaboration Manage template user environment Configure user resource limits Manage user processes Configure PAM Networking - 15% Configure networking and hostname resolution statically or dynamically Configure network services to start automatically at boot Implement packet filtering Configure firewall settings Configure a system to perform Network Address Translation Start, stop, and check the status of network services Monitor network performance Statically route IP traffic Dynamically route IP traffic Synchronize time using other network peers Configure network traffic tunneling Service Configuration - 10% Configure a basic DNS server Configure direct-attach and network printers Maintain a DNS zone Configure an HTTP server Configure a caching-only name server Configure HTTP server log files Configure a caching-only name server to forward DNS queries Configure SSL with HTTP server Set up name-based virtual web hosts Configure an FTP server Deploy a basic web application Configure anonymous-only download on FTP servers Restrict access to a web page Provide/configure network shares via NFS Configure time synchronization server Provide/configure network shares via CIFS Synchronize time using other time synchronization peers Configure an SMTP service Restrict access to an SMTP server Configure a mail transfer agent (MTA) to accept inbound email from other systems Configure a system to log to a remote system Configure a PXE Boot server Configure an LDAP server and schema Configure an MTA to forward (relay) email through a smart host Configure a system to accept logging from a remote system Configure email aliases Configure SSH servers and clients Diagnose routine SELinux/AppArmor policy violations Configure SSH-based remote access using public/private key pairs Configure SELinux/AppArmor to support a service Configure a DHCP server Configure a database server Configure the HTTP proxy server Configure SELinux/AppArmor to confine a service Restrict access to the HTTP proxy server Configure an HTTP client to automatically use a proxy server Configure an IMAP and IMAPS service Configure host-based and user-based security for a service Query and modify the behavior of system services at various run levels Virtualization - 5% Configure a hypervisor to host virtual guests Install Linux systems as virtual guests Start, stop and modify the status of virtual machines Access a VM console Migrate a VM between two hosts Configure systems to launch virtual machines at boot Evaluate memory usage of virtual machines Create light-weight virtualized guests via namespaces Resize RAM or storage of VMs Cloning and replicating VMs using images or snapshots Storage Management - 10% List, create, delete, and modify storage partitions Create, migrate, and remove Physical Volumes Assign Physical Volumes to Volume Groups Create, modify and delete Logical Volumes Extend existing Logical Volumes and filesystems Create and configure encrypted partitions Configure systems to mount file systems at or during boot Configure and manage swap space Add new partitions and logical volumes Create, mount and unmount standard Linux file systems Assemble partitions as RAID devices Identify storage devices using block device attributes Configure systems to mount standard, encrypted and network file systems on demand Create and manage filesystem Access Control Lists (ACLs) Diagnose and correct file permission problems Setup user and group disk quotas for filesystems Restore default SELinux file contexts Manage Linux file system features and flags Configure remote block storage devices Design and test backup/recovery strategies Deploy, configure and maintain high availability/clustering/replication The list of competencies may seem overwhelming, but with most certifications it seems you may know more than you realize. If you use a Linux system daily, or least quite often, you may have mastered a lot of these already. Brushing up on others may be all you need to pass the test. Articles will follow in which I will cover these Domains to give an understanding of what is needed for the exam. Like other exams, there is a more advanced exam called the Linux Foundation Certified Engineer (LFCE) which covers more Domains than these and includes more on Networking. For now, I hope you look forward to the LFCS Domain information soon to come.