Linux / CLI / DevOps

Linux / CLI / DevOps

Comparing JSON Configurations with jq: Normalizing Key Order to Make Diffs Easier to Read

Learn how to use jq -S to normalize JSON key order before running diff, allowing you to focus on the actual configuration changes.
Linux / CLI / DevOps

What is the difference between symbolic links and hard links? — Understanding through inodes

Create two types of links in a temporary directory and understand their differences based on inodes and behavior after deleting the original file.
Linux / CLI / DevOps

Changing umask on Ubuntu and verifying how new file permissions change

Compare umask 022 and 077 in a temporary directory and observe how new file permissions are determined.
Linux / CLI / DevOps

What is a Unix socket? Creating a temporary .sock file and observing how it differs from TCP ports

Safely create a temporary Unix domain socket in /tmp and observe how the path acts as an endpoint for communication on the same host. This also helps in understanding PHP-FPM .sock files.
Linux / CLI / DevOps

Checking “Who is listening on this port?” in Ubuntu — Linking sockets and processes with ss

Learn how to check TCP listening ports and their associated processes in Ubuntu using ss. We also break down how to read 127.0.0.1, 0.0.0.0, and [::], and how permissions affect process displays.
Linux / CLI / DevOps

What to Check Before Changing Nginx Configuration? — Using nginx -t and nginx -T Properly

This article outlines a safe sequence for testing configurations with nginx -t before reloading Nginx, and using nginx -T to inspect the entire loaded configuration only when necessary.
Linux / CLI / DevOps

Viewing JSON APIs on Ubuntu with curl + jq ― Extract Only the Required Fields in One Go

Combine curl and jq on Ubuntu to extract only the necessary fields from a JSON API response. We will use the GitHub public Repository API as an example.
Linux / CLI / DevOps

What to Check When a Service Fails on Ubuntu — Tracing via systemctl and journalctl

Don't just stop at systemctl status when troubleshooting Ubuntu service failures. Follow a step-by-step investigation procedure through unit definitions, states, processes, and journals, preserving diagnostic info before restarting.
Linux / CLI / DevOps

A Bash script to automatically mask sensitive information into **** before sharing configuration files with AI

Let's build a Bash script that mechanically masks sensitive information into **** before passing configuration files to AI. We will organize the process without modifying the original file, including permission control, automated checks, and visual inspection.
Linux / CLI / DevOps

Understanding GitHub CLI’s Media Addition Feature for Issues, PRs, and Comments via the –attach Flag Based on Official Information

This article is a technical explanation and implementation example created using AI. Although the published code and pro...