An overview of CompTIA’s new Linux+ certification (XK0-004)
In April, CompTIA launched the newest iteration of the Linux+ certification and made some significant changes to what had been there before. The first item of note is that certification now requires passing a single exam (XK0-004) instead of two (LX0-103 and LX0-104) and this reduces the cost from $438 ($219 for each of the two exams) to $319 (the same price as most other CompTIA exams).
The next item of note is that passing the exam and becoming Linux+ certified no longer qualifies certification candidates additionally for the base-level LPIC certification. Previously, the Linux Professional Institute (LPI) would accept passing scores on the two other exams to count toward their entry-level certification.
On exam XK0-004, there are 90 questions to be answered in 90 minutes and the passing score is 720 (on a range from 100 to 900). In addition to multiple-choice questions (both single and multiple responses), there are also performance-based questions and fill-in-the-blanks.
The following table shows the domains, their weighting, and the topics beneath each (a complete list can also be found online):
Twenty-One Topics to Study
One of the reasons for releasing any new version of an exam is always to update the topics being tested to include newer technologies — and this exam is no exception. While not intended to be a complete list, the following are 21 topics that you need to know for the newest Linux+ exam that were not tested on in the previous exams:
1) Acquisition tools are used to acquire applications from elsewhere and two newer ones to know are wget (as in “web get”) and curl. wget is a non-interactive command-line tool that can follow links from web and ftp sites: a list of options available with it can be found online. curl (or, more properly, cURL) is similar to wget but supports more protocols and wildcards: a list of options available with it can be found online.
2) The blkid (block identification) utility can be used to identify locate/print block device attributes. The man page for this utility can be found online.
3) brctl is used to setup, maintain, and inspect the Ethernet bridge configuration. Documentation for this utility can be found online.
4) On almost every exam that CompTIA now offers, cloud concepts (along with virtualization) are now tested and Linux+ now joins those ranks. Know the basic concepts and technologies involved as well as some of the basic terminology and tools. For a comparison of the two technologies, click here.
5) dmidecode (DMI table decoder) is used to dump/display the information from the system BIOS regarding what hardware is in the table. A list of options available for use with it can be found online.
6) ethtool is used to display, and modify, network interface controller parameters and those associated with their device drivers. A plethora of options are available online.
7) One of the more popular version-control systems is git and it is useful for tracking code changes during software development. As of this writing, the most recent version is 2.21.0 and it, along with documentation, can be found online.
8) A kernel panic is a condition that occurs when the kernel recognizes that an error beyond its control (bug in software, bad driver, memory overtaxed, etc.) has occurred. Recognizing the condition as something the kernel will be unable to safely recover from, or not being able to continue to run without risking major data loss, the kernel implements safety measures such as dumping error messages to the screen.
9) The lastb command (see here) shows a list of bad login attempts by displaying entries from the /var/log/btmp file (its counterpart, last, which shows all user logins, displays entries from the /var/log/wtmp file).
10) The lsblk command lists information from the sysfs filesystem about block devices, printing them in a tree-like format (or other display based on options given). A list of possible options can be found online.
11) The lshw tool is useful in its ability to show hardware connected and display them in classes (processor, memory, display, network, storage). For options, see here.
12) The LUKS (Linux Unified Key Setup) system of disk encryption can be used to encrypt storage media volumes and supports most encryption methods (AES, Blowfish, CAST5, CAST6, Twofish, etc.) A decent overview can be found online.
13) The mdadm utility can be used to manage and monitor RAID arrays. There are a number of different modes that the tool can run in and this site provides a description of those
14) mtr (my traceroute) is a network diagnostic tool that adds to what could be done with tracert/traceroute and ping. It prints information about the route packets take to reach a specified destination host and there are a few options that can be used with it (see here).
15) The GNU nano text editor is licensed under the GNU General Public License and works at the command line. It is similar to Pico in functionality and documentation can be found online.
16) nmcli (NetworkManager command line tool) is a great command line utility for use on servers and has the ability to run completely from scripts. Options for it are detailed online.
17) The nmtui (NeworkManager text user interface) provides a simple curses-based text user interface and documentation can be found online.
18) The ss command displays TCP socket statistics and can display more information that you would be able to get with netstat or another similar tool. Options for it are explained online.
19) The systemd umbrella/suite includes an init system used to boot and manage processes and is intended to unify service configuration across the Linux distributions. It replaces service and chkconfig and replaces directories that have been in existence for years (such as /etc/inittab) with new ones (such as /etc/systemd/system). A good overview can be found online.
20) udevadm (the udev administration tool) can be used in a number of different modes including: info (displays device information stored in the udev database), trigger (to request device events from the kernel), control (to modify the internal state of the running udev daemon), and monitor (to listen to the kernel events sent out by a udev rule). See more here.
21) Zypper is a command line tool for package management. It is available with OpenSUSE and SUSE Enterprise Linux platforms as well as Ubuntu and can be used for installing, updating, removing software, and managing repositories. A quick reference can be found online.
This month, we looked at the newest iteration of the CompTIA Linux+ certification and twenty-one of the topics to know as you study for this exam that you did not need to know for previous iterations. Next month, we will follow this up with a self-test of 25 questions based on topics covered by the exam.