CPU, memory, disk, and inode first pass
Separate resource symptoms before choosing a fix.
df -hi
25 min read, 35 min lab
operator
Linux performance triage starts with resource classes: CPU/load, memory pressure, disk bytes, inodes, and I/O. Low `free` memory is not automatically bad because Linux uses cache; `available` memory matters more.
An app says 'No space left on device' but `df -h` looks fine.
Worked command
$ uptime$ free -h$ df -h$ df -hi$ du -sh /var/log/* | sort -h
Do not restart services before proving the resource constraint.
Check bytes and inodes, then directory usage, then process-level clues.
An app reports 'No space left on device' but `df -h` shows plenty of free space. What is the most likely cause and the check that confirms it?
Show the answer
Correct: C. Inodes are exhausted even though bytes are free; confirm with df -hi
A filesystem can run out of inodes (file slots) while bytes remain free — common with many tiny files — and only df -hi exposes that, since df -h reports bytes only. Low available memory is a different symptom and would not produce a per-filesystem 'No space left on device' error.
Practice checklist
- Run read-only capacity checks on a workstation or sample output.
- Explain whether bytes, inodes, or memory look constrained.
- Name the next safe check.
Deliverable evidence
- A resource triage table with command, observation, and conclusion.
shows: The triage path: a symptom sorts into a resource class (CPU, memory, disk bytes, inodes), each with its own first command, then narrows to a named process or constraint before any TERM/KILL or restart.
does not prove: It shows the order of checks, not the verdict: running these commands gathers evidence but does not by itself prove which resource is the true bottleneck — you still have to read the numbers and reason about available vs free, bytes vs inodes.
Commit these to memory, then drill them until recall is automatic.
cue 'No space left on device' but byte usage looks fine — expose inode exhaustion
show recall target
df -hi