Week 12 · lesson

Lesson 3: Linux Client Tools and System Components

Core path: 42 minutes

Linux support is not memorizing random commands.

Each command or file should answer a defined technician question.

All command work in this lesson uses supplied output or an instructor-approved disposable VM.

File management

Recognize:

ls       list directory contents
pwd      show current working directory
mv       move or rename
cp       copy
rm       remove
grep     search text patterns
find     locate files/directories by criteria
chmod    change permission modes
chown    change ownership

rm, chmod, and chown change state. Do not experiment on important data.

Filesystem management

fsck     filesystem consistency/checking tools
mount    attach a filesystem to the directory tree

Exact use depends on filesystem, system state, and distribution. Running filesystem repair against the wrong mounted/active volume can create risk.

Administrative access

su       switch user context
sudo     execute an authorized command with elevated privileges

Root account

root is the superuser identity with broad system authority.

Using root is not a troubleshooting shortcut. Least privilege still applies.

Package management

Recognize:

apt      common Debian/Ubuntu-family package-management tool
dnf      common Fedora/RHEL-family package-management tool

A package command being unavailable does not mean Linux is broken. First identify the distribution/package ecosystem.

Network tools

ip          interface/address/route information
ping        bounded reachability/response test
curl        retrieve/interact with URL/network resources
 dig         DNS query tool
traceroute  routed-hop path evidence

A network tool tests one boundary. It does not prove the whole network is healthy.

Informational tools

man      manual pages/documentation
cat      display/concatenate file content
top      live process/resource view
ps       process information
du       file/directory disk usage
df       filesystem capacity/free space

Text editor

nano

A terminal text editor can modify configuration files. The important technician skill is knowing which file and why before editing.

Common configuration files

/etc/passwd

User-account information and identifiers. Password hashes are not normally stored here on modern Linux systems.

/etc/shadow

Protected password/hash and aging information. Access should be restricted.

/etc/hosts

Local hostname-to-address mappings.

/etc/fstab

Filesystem mount configuration for defined filesystems/volumes.

/etc/resolv.conf

DNS resolver configuration or generated resolver state depending on distribution/network stack.

Do not assume every distribution manages these files manually in the same way.

OS components

Kernel

Core OS component that manages hardware/resources and provides system services to user-space software.

Bootloader

Loads/starts the operating system kernel and boot process.

systemd

Common Linux init/service-management system used by many distributions.

A service failing under systemd is not the same boundary as the kernel failing to boot.

Permissions recap

Unix-like permission models combine:

  • user/owner;
  • group;
  • others;
  • read (r), write (w), execute (x).

Do not solve every permission problem with chmod 777. Fix the required access boundary.

Guided evidence

$ df -h
Filesystem      Size  Used Avail Use%
/dev/example     40G   39G  1G   98%

An application reporting "no space left" has supporting storage evidence. Changing DNS would not address that boundary.

Another case:

$ cat /etc/hosts
127.0.0.1 localhost
192.0.2.50 filesrv.test

A local host mapping can affect name resolution for that endpoint independently of upstream DNS.

Student action

Build a Linux technician matrix for every named command/file/component in this lesson.

Record:

item:
question it answers:
observational or modifying:
risk:
one symptom where it is useful:

Evidence checkpoint

You are ready when you can choose a Linux command, configuration file, or component based on the failed boundary instead of typing commands because they look advanced.

Ghostty terminal simulation

Read permission evidence before changing it

Inspect a simulated file owner, group, and mode, then make one controlled permission change.

Ghostty Web renders the terminal, but this lesson still uses a controlled Robotnix command engine. No unrestricted operating-system shell is connected.

Commands worth trying
  • whoami
  • id
  • ls -l report.txt
  • chmod 640 report.txt
  • ls -l report.txt
  • chmod 600 report.txt
Read a deterministic terminal transcript

This fallback runs the same bounded Robotnix simulation against the suggested command sequence. It does not connect to an operating-system shell or network.

Robotnix permission simulation
The file and identities are simulated. No real account permissions are changed.

$ whoami
student

$ id
uid=1000(student) gid=1000(student) groups=1000(student),1001(project)

$ ls -l report.txt
-rw-rw-r-- 1 student project 412 report.txt

$ chmod 640 report.txt

$ ls -l report.txt
-rw-r----- 1 student project 412 report.txt

$ chmod 600 report.txt

Read it. Prove it.

Lesson knowledge checks

Answer from the lesson you just completed. Results stay in this browser and are not submitted.
Knowledge check 1

What does `sudo` do on Linux-like systems?

Knowledge check 2

What is the role of a package manager such as `apt` or `dnf`?