Skip to main content
Back to Study
A+ Core 2 · CompTIA 220-1202 V15 · Objective C2-1.9

Identify common features and tools of the Linux client/desktop operating system

Objective 1.9: Identify common features and tools of the Linux client/desktop operating system

Cert: CompTIA A+ Core 2 (220-1202) V15 Domain: 1.0 Operating Systems Weight: Part of the 28% Operating Systems domain Depth: Identify. The candidate must recognize Linux commands, configuration files, package managers, and core components.

What this objective tests

You should know the canonical Linux command-line tools for file management, network diagnostics, system admin, and package management, plus the key configuration files and OS components.

This is identification, not deep proficiency. CompTIA expects you to recognize what each command does and pick the right one for a given task, not to write shell scripts.

Key facts

ls (list):

  • List files and folders in the current directory. ls -la shows hidden files and detailed permissions/owner/size.

pwd (print working directory):

  • Show the current directory path. Equivalent to "where am I in the filesystem."

mv (move):

  • Move or rename files and folders. mv old.txt new.txt renames; mv file.txt /path/to/destination/ moves.

cp (copy):

  • Copy files and folders. cp file.txt backup.txt copies; cp -r folder/ backup/ recursively copies a directory.

rm (remove):

  • Delete files and folders. rm file.txt deletes a file. rm -rf folder/ recursively deletes a folder (destructive, no Trash, no undo).

chmod (change mode):

  • Change file permissions. chmod 755 file = owner read/write/execute, group + others read/execute.
  • Symbolic mode also works: chmod u+x file adds execute for the owner.

chown (change owner):

  • Change file ownership. chown user:group file sets both owner and group.

grep (global regular expression print):

  • Search file contents for a pattern. grep "error" logfile.txt returns matching lines.
  • Common with pipes: cat /var/log/syslog | grep "warning".

find:

  • Search for files by name, type, size, modification time. find /home -name "*.log" finds all .log files under /home.

fsck (filesystem check):

  • Check and repair a Linux filesystem. Equivalent to chkdsk on Windows.
  • Typically run on unmounted filesystems. Used during boot recovery.

mount:

  • Attach a filesystem to the directory tree. mount /dev/sdb1 /mnt/usb mounts a USB drive at /mnt/usb.
  • Filesystems can also be mounted at boot via /etc/fstab.

su (substitute user):

  • Switch to another user (default: root). su - gives you a login shell as root.
  • Requires the target user's password.

sudo (superuser do):

  • Run a single command as another user (default: root) without switching shells. sudo apt update.
  • Requires the user's own password and membership in sudoers configuration.
  • Preferred over su because it limits the elevation window to one command.

apt (Advanced Package Tool):

  • Package manager for Debian-family distributions (Debian, Ubuntu, Mint, etc.).
  • sudo apt update refreshes the package index. sudo apt install nginx installs a package. sudo apt remove nginx removes it. sudo apt upgrade updates installed packages.

dnf (Dandified YUM):

  • Package manager for Red Hat-family distributions (Fedora, RHEL, Rocky Linux, CentOS Stream).
  • sudo dnf install httpd installs Apache. sudo dnf update updates installed packages.

ip:

  • Modern Linux network configuration tool. ip addr shows IP addresses on all interfaces. ip route shows the routing table.
  • Replaces older ifconfig on most modern distros.

ping:

  • Same as on Windows. Test reachability to a host.

curl:

  • Transfer data from or to a URL. Common for testing web services or downloading files.
  • curl -O https://example.com/file.zip downloads to current folder.
  • curl https://api.example.com/health hits a JSON endpoint and prints the response.

dig (DNS lookup):

  • DNS query tool. More verbose and powerful than nslookup. dig example.com A returns the A record(s).

traceroute:

  • Trace the network path to a destination. Same purpose as Windows tracert (note the spelling difference).

man (manual):

  • Show the manual page for a command. man ls shows the ls manual. Use q to exit.
  • Standard place to find flags and examples for any command.

cat (concatenate):

  • Print file contents to stdout. cat /etc/hosts shows the hosts file.
  • Also used to combine files: cat file1.txt file2.txt > combined.txt.

top:

  • Real-time process viewer. Shows CPU, memory, and process list, refreshed continuously.
  • Press q to exit. Newer alternative: htop (prettier, scrollable).

ps (process status):

  • Snapshot of currently running processes. ps aux lists all processes with details.
  • Used to find PIDs to kill or investigate.

du (disk usage):

  • Show disk usage per file/folder. du -sh /home/user summarizes the size of one folder. du -h --max-depth=1 /home lists each subfolder's size.

df (disk free):

  • Show free space per mounted filesystem. df -h is human-readable (MB/GB instead of raw blocks).

nano:

  • Simple terminal text editor. Friendly to beginners (commands shown at the bottom).
  • Open a file with nano filename. Save with Ctrl+O, exit with Ctrl+X.
  • Other editors: vi/vim (steep learning curve, ubiquitous), emacs (also steep, less ubiquitous).

/etc/passwd:

  • User account database. One line per user with username, UID, GID, home directory, login shell.
  • Passwords are NOT here (they used to be, hence the filename); they're in /etc/shadow.

/etc/shadow:

  • Hashed passwords for user accounts. Readable only by root.
  • Hash algorithm, salt, hashed password, password change date, account expiration.

/etc/hosts:

  • Local hostname-to-IP mappings. Checked before DNS for hostname resolution.
  • Used to override DNS for testing or to provide names for hosts not in DNS.

/etc/fstab:

  • Filesystem table. Defines which filesystems mount where at boot, plus options.
  • Edit carefully; broken /etc/fstab can prevent boot.

/etc/resolv.conf:

  • DNS resolver configuration. Lists nameservers and search domains.
  • On systemd-based distros, often managed by systemd-resolved and shouldn't be edited directly.

systemd:

  • Init system and service manager on most modern Linux distributions.
  • systemctl status service-name checks a service. systemctl restart service-name restarts it. systemctl enable service-name starts it on boot.
  • Replaced older SysV init scripts on most distros.

kernel:

  • The core Linux OS component. Mediates between hardware and applications.
  • Kernel version: uname -r. Multiple kernel versions can be installed; the running version is set at boot.

bootloader:

  • Loads the kernel at boot. GRUB (GRand Unified Bootloader) is the dominant Linux bootloader.
  • Configured at /etc/default/grub; rebuild with update-grub (Debian-family) or grub2-mkconfig (Red Hat-family).

Root account:

  • Superuser account with UID 0. Unlimited privileges on the system.
  • Best practice: don't log in directly as root. Use a regular user account and sudo for elevation.
  • Many distros disable root login over SSH by default for security.

Common gotchas

  • rm -rf with wrong path. Especially rm -rf / or rm -rf /* wipes the system. Always double-check the path. No undo.
  • chmod 777 everything. Quick fix for "permission denied" that creates a security mess. Use the minimum permissions needed (often 644 for files, 755 for directories or executables).
  • Editing /etc/fstab incorrectly. A typo can prevent boot. Test with mount -a before reboot to catch errors.
  • sudo with command alias not honored. Aliases in your shell aren't inherited by sudo. Spell out the full path or use sudo -i for an interactive root shell.
  • Wrong package manager on the wrong distro. apt on Fedora doesn't work; dnf on Ubuntu doesn't work. Match the package manager to the distro family.
  • /etc/hosts forgotten override. Developer added a line for testing six months ago, forgot, now production traffic to that hostname routes wrong on their laptop.
  • Mounted USB drive removed without unmounting. Risk of filesystem corruption. Always umount /mnt/usb before unplugging.

Real-world context

Typical Linux helpdesk moves:

  • "What IP am I on?" ip addr (or hostname -I for a quick summary).
  • "Why is the disk full?" df -h to see which partition is full, du -sh /var/* | sort -h to find the big folder.
  • "Service won't start." systemctl status service-name shows the error, journalctl -u service-name shows the log.
  • "Find a config file." find / -name "config.yaml" 2>/dev/null searches the whole tree, hiding permission errors.
  • "Patch the system." sudo apt update && sudo apt upgrade -y (Debian/Ubuntu) or sudo dnf update -y (RHEL/Fedora).
  • "User can't sudo." Verify their group membership: groups username. Usually need to be in sudo (Debian) or wheel (RHEL) group.

Linux fluency at the help-desk level is mostly knowing where to look (which file, which command, which log) more than memorizing every flag.

Sources

  • [CompTIA A+ 220-1202 Exam Objectives Version 4.0, Section 1.9](../../../../../../30-RevyTechJourney/CompTIA%20A%2B%20220-1202%20Exam%20Objectives%20%284.0%29.pdf)
  • [Linux Foundation: Introduction to Linux](https://training.linuxfoundation.org/training/introduction-to-linux/)
  • [Ubuntu Documentation](https://help.ubuntu.com/)
  • [Red Hat Documentation: Managing systems](https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/)
  • [Wikipedia: systemd](https://en.wikipedia.org/wiki/Systemd)
  • [Wikipedia: GRUB](https://en.wikipedia.org/wiki/GNU_GRUB)