Practical Linux Tutorials and Command-Line Guides
Search hundreds of step-by-step tutorials for Bash, Ubuntu, networking, security, and more.
Featured Articles
Linuxize Weekly Newsletter
A quick weekly roundup of new tutorials, news, and tips.
Latest Articles
SSH Broken Pipe Error: Causes and Fixes
Fix "client_loop: send disconnect: Broken pipe" with SSH keepalives, find what closed the connection, and keep long jobs running in tmux.

Nginx Location Blocks: Match Rules and Priority
How Nginx picks a location block: prefix, exact, and regex matches, the priority order, named locations, and common configuration patterns.

How to Truncate Files in Linux: Empty Files Without Deleting
Empty a file without deleting it using shell redirection or the truncate command. Covers permissions, sudo workarounds, and truncating log files.

Nginx Reverse Proxy: How to Configure proxy_pass and Headers
Configure Nginx as a reverse proxy with proxy_pass and proxy_set_header, including trailing slash rules, load balancing, websockets, TLS, and common errors.

SSH Permission Denied (publickey): Causes and Fixes
Fix SSH "Permission denied (publickey)" on Linux: what the method list means, key permissions and ownership, passphrase issues, server settings, and logs.

SSH Multiplexing: Speed Up SSH with ControlMaster
Configure SSH multiplexing with ControlMaster, ControlPath, and ControlPersist to reuse connections for SSH sessions and file transfers.

Bash Heredoc: Complete Guide with Examples
Bash heredoc lets you pass multi-line text directly to a command inside a shell script. This guide covers syntax, variable expansion, indentation with <<-, SSH usage, and common mistakes.

Bash Functions
How to define and use Bash functions, pass arguments, return values, and apply best practices for writing cleaner and more maintainable scripts.

touch Command in Linux: Create Files and Update Timestamps
The touch command creates empty files and updates file timestamps in Linux. This guide covers access time, modification time, custom timestamps, and reference file usage.

How to Force git pull to Overwrite Local Files
Replace a local Git branch with its remote version safely using fetch and reset, with backup steps for commits, modified files, and untracked files.

Series
Cheatsheets
Claude Code Cheatsheet
Quick reference for Claude Code in the terminal: session flags, print mode for scripts, slash commands, keyboard shortcuts, permission rules, MCP servers, hooks, and config file locations.
Job Control Cheatsheet
Quick reference for Bash job control: background jobs, jobs, fg, bg, wait, and keeping processes alive after logout with disown, nohup, and setsid
nano Cheatsheet
Quick reference for Nano text editor shortcuts
usermod Cheatsheet
Quick reference for modifying Linux user accounts with usermod and managing groups with groupadd, gpasswd, and groupdel




