Posts
lsof: which processes listen on port and hold file
Service won’t start — port 8080 is already bound. You dig into who’s holding it, and discover the same process has your config file open while you’re trying to …
ethtool: network interface diagnostics and tuning
Network issues hide well — interface is up, IP is assigned, iptables is quiet, yet packet loss or micro-freezes only surface under load. ethtool gives direct …
curl: HTTP Debugging in CLI
cURL is the standard tool for debugging HTTP in the terminal. It ships out of the box on Linux and macOS and is present in most Docker images. Need to quickly …
tcpdump and tshark: Packet Capture in CLI
When debugging network issues in Linux infrastructure, ping and curl are not enough. Sometimes you need to see what is actually traveling over the wire. tcpdump …
strace: System Call Tracing for Diagnosing Hangs and Leaks
When a service hangs, standard tools like top, htop, and ps show the state but not the cause. If a process is in state D (uninterruptible sleep), it’s waiting …
SSH Config: Wildcards and Dynamic Variable Substitution
SSH reads ~/.ssh/config line by line, but without variables the file quickly becomes copy-paste hell. Here’s how Host patterns, Match exec, and substitution …
ss: socket statistics instead of deprecated netstat
When netstat hangs on a server with tens of thousands of connections, it’s time to switch to ss. Part of the iproute2 package, ss queries the kernel directly …
What is Self-Hosted and Why It's So Popular
You’re paying for Notion, Dropbox, and Google Drive. Then Notion raises prices, Dropbox caps storage, and Google “improves” the Docs interface. Self-hosted is …
SSH Escape Sequences: Reviving a Frozen Terminal
SSH session froze, Ctrl+C does nothing, Ctrl+D spits out garbage — familiar situation. Before closing the terminal and losing the session, try built-in escape …
socat: Forwarding Unix Sockets Over TCP
Sometimes you need to reach a Unix socket from a host where that socket doesn’t physically exist. SSH tunnels won’t help — they only work with TCP ports. socat …
ngrep: grep for Network Packets in Real Time
Ngrep applies grep-style pattern matching to network packets. When you need to see exactly what two services are exchanging over the wire and tcpdump drowns you …
kubectl whoami and Service Account Permission Checks
When deploying an application to Kubernetes, the most common failure is a service account that cannot do what it should. Permission denied when creating a …