$ tail -n +1 learning-log/

Learning log

Short, chronological records between raw notes and finished articles. Entries distinguish goals, predictions, experiments, evidence and conclusions.

LAB
2026-09-07

KVM / libvirt fundamentals

Goal: understand the virtualization layer before building the server VM.

Current state: KVM/libvirt is being investigated; VM networking and isolation are next.

Next: establish a known-good VM lifecycle and then inspect how virtual networking is represented on the host.

FAILURE / FIX
2026-08-24

Host unreachable — client Wi-Fi was off

Observation: hostname resolution failed and an address-based SSH attempt did not respond.

Evidence: the phone was not connected to Wi-Fi. Reconnecting it restored access to the lab host.

Conclusion: “the server is unreachable” is a symptom, not a diagnosis; client network state belongs in the evidence chain.

SIDEQUEST
2026-08-23

ssh.service versus ssh.socket

Question: how can SSH remain reachable while the service unit appears disabled?

Direction: inspect socket activation, the listening process, service state transitions and logs rather than assuming service enablement equals reachability.

Related article →

LESSON
2026-08-21

Linux processes: jobs, ps, kill and process states

Evidence: foreground/background jobs and process state output were compared, including the fact that a line count of ps output also counts the header.

Lesson: know what the output format contains before treating a count as a process count.

LESSON
2026-08-19

Bash pipelines: cut, sort, uniq, tee and wc

Goal: combine small tools so each stage transforms or measures a stream.

Evidence: a pipeline counted user occurrences and used tee to both display and persist the result.

Raw AI transcripts are source material, not learning-log entries. Public entries are rewritten into concise technical records and screened before publication.