My Studio

This is my studio page where I share all of my projects , experiments , learnings , blogs/articles , and also I share daily or frequent logs of my learnings or what currently I am working on.

Linux Systems LearningSeptember 4, 2026

#linux#nodejs#systems#cli#docker#wsl

What & Why

I built OpenSys, a Linux system monitoring and diagnostics tool, to understand how system information is exposed by Linux and how developer tools interact with it. Instead of relying only on high-level libraries, I explored Linux interfaces such as /proc, systemctl, ip, and Docker, and built a Node.js layer on top of them. The project helped me connect Linux fundamentals, Node.js, CLI development, processes, networking, and system monitoring into one practical project.

Topics Explored

  • Linux filesystem and directory structure
  • Linux /proc virtual filesystem
  • CPU and memory monitoring
  • Process management and process statistics
  • Linux filesystem/disk statistics
  • System uptime
  • systemd and services
  • Network interfaces and routing
  • Docker and container monitoring
  • Node.js fs, child_process, and system APIs
  • CLI tool development
  • REST APIs
  • WebSockets and real-time metrics
  • React dashboard integration
  • WSL2 and Ubuntu development environment
  • Linux permissions and groups
  • Graceful process/server shutdown

Commands I Learned

CommandWhat I Learned
pwdShow current working directory
whoamiShow current Linux user
uname -aInspect kernel and system information
ls /procExplore Linux's virtual /proc filesystem
cat /proc/uptimeRead system uptime
cat /proc/statRead CPU statistics
cat /proc/meminfoRead memory statistics
cat /proc/<PID>/statusInspect process information
cat /proc/<PID>/statRead low-level process statistics
ip addrInspect network interfaces and IP addresses
ip routeInspect routing information
systemctl list-unitsInspect running system services
systemctl is-system-runningCheck systemd state
journalctlRead system logs
docker psInspect running containers
sudoExecute commands with elevated privileges
usermod -aG docker $USERAdd a user to the Docker group
chmod +xMake a file executable

What I Might Explore Next

  • Linux signals and process control
  • /proc deeper: file descriptors, threads, command arguments
  • System calls and how Linux exposes hardware/system resources
  • Bash scripting and Linux automation
  • CPU/process monitoring at a deeper level
  • Linux networking fundamentals
  • systemd units and service management
  • Linux permissions and security
  • Packaging CLI tools for Linux
  • C/C++ or Rust for lower-level Linux tooling
  • Open-source Linux projects and upstream contributions

Key Takeaway

The main learning was not just building a system monitor — it was learning where Linux system information comes from and how software can interact with those interfaces.