Linux guides
175 guides · beginner.
Use Raspberry Pi Imager Like a Pro
Flash microSD cards the right way: set SSH, Wi-Fi, hostname, and users inside Raspberry Pi Imager before first boot — no keyboard or monitor needed.
Use Newsboat — RSS in the Terminal
Set up Newsboat for terminal-based RSS reading: configure the urls file, customise key bindings, download podcasts with podboat, and version-control your dotfiles.
Use just as a Modern Task Runner
Learn to use just as a project task runner: write justfiles, define variables, chain recipe dependencies, and manage tasks across multiple projects.
GNOME Extensions for Power Users
Install and configure Extension Manager, Tactile, Just Perfection, AppIndicator, and Auto Move Windows to build a productive GNOME power-user desktop.
Use foot, the Lean Wayland Terminal
Install and configure foot, the lean Wayland-native terminal. Covers foot.ini essentials, server mode, sub-10 ms launches with footclient, and systemd autostart.
Annotate Screenshots with Flameshot
Install Flameshot, set a Print Screen shortcut, annotate captures with arrows and blur, upload to Imgur or a self-hosted server, and handle Wayland quirks.
Use Ferdium to Wrangle Many Messaging Apps
Ferdium puts Slack, WhatsApp, Discord, and 200+ other services in one sandboxed window. Learn how to set up services, workspaces, and notifications on Linux.
Try Ghostty, the New Native-feeling Terminal
Ghostty is a fast, native-feeling GTK4 terminal written in Zig. Install it on Ubuntu, Fedora, or Arch, configure it, and see how it stacks up against Alacritty and Kitty.
Programming Ligatures and Nerd Fonts on Linux
Install JetBrains Mono and Fira Code Nerd Fonts on Linux, refresh fontconfig, and enable programming ligatures in Kitty, WezTerm, GNOME Terminal, and VS Code.
Linux Terminal Emulator Shootout 2026
Alacritty, Kitty, WezTerm, Ghostty, and Foot compared on speed, features, Wayland support, and config — pick the right terminal for your workflow.
Self-Host Vikunja for To-Do and Projects
Deploy Vikunja, a self-hosted open-source task manager, using Docker Compose with PostgreSQL, set up sharing, connect the mobile app, and compare it to Todoist.
Self-Host Planka (Trello Alternative)
Deploy Planka, a self-hosted Trello alternative, using Docker Compose with PostgreSQL, HTTPS via Caddy, and full support for boards, cards, comments, and attachments.
Self-Host Navidrome (Subsonic-compatible Music)
Install Navidrome on Linux, configure your music library, set up systemd, and connect Android/iOS clients via the Subsonic API in under 30 minutes.
Build a Documentation Site with MkDocs Material
Install MkDocs Material, configure navigation and theme features, preview locally, then deploy to GitHub Pages or serve with Caddy on your own server.
Self-Host Linkding for Bookmarks
Deploy Linkding, the self-hosted bookmark manager, with Docker Compose, configure the browser extension, enable HTML snapshots, and organise bookmarks with tags.
Run Docker on a Raspberry Pi
Install Docker and Docker Compose on a Raspberry Pi, handle arm64 vs armv7 images, protect your SD card, and configure log rotation with journald.
Turn a Raspberry Pi into a Network Print Server
Turn any USB printer into an AirPrint-capable network printer using a Raspberry Pi, CUPS, and Avahi — with SD card-friendly tuning included.
Manage Fonts on Linux Like a Designer
Install, preview, and fine-tune fonts on Linux: user vs system directories, fontconfig aliases, gnome-font-viewer, FontMatrix, and Arch font groups explained.
Manage Dotfiles with yadm
Manage, version, and sync your dotfiles across machines using yadm — covering bare repo setup, OS-specific alternates, classes, GPG encryption, and bootstrap scripts.
Linux for Writers: A Distraction-Free Setup
Set up a distraction-free Linux writing environment with Ghostwriter, Logseq for Zettelkasten notes, and automated Git and restic backups.
Best Linux Distros for the Raspberry Pi
Compare Raspberry Pi OS, Ubuntu, DietPi, Alpine, and Arch Linux ARM: real-world RAM usage, ideal use cases, and how to get each running on your Pi.
A Linux Setup for Kids and Classrooms
Set up a child-safe Linux desktop with Endless OS, GCompris, the Tux suite, restricted accounts, and GNOME parental controls for home or classroom use.
Install yt-dlp for Saving Online Video
Install yt-dlp via pipx on Linux, select video formats, download subtitles, and automate batch downloads with a nightly cron job.
Install Syncthing for Peer-to-Peer File Sync
Install Syncthing on Linux, run it as a systemd service, pair devices by ID, configure shared folders, and control what gets synced with ignore patterns.
Install Spotify on Linux (Cleanly)
Install Spotify on Linux cleanly using Flatpak, Snap, or Arch's spotify-launcher. Includes Wayland flags, URI handler fixes, and audio troubleshooting.
Install OnlyOffice Desktop on Linux
Install OnlyOffice Desktop Editors on Debian, Ubuntu, Fedora, RHEL, or Arch using the official repository, add plugins, and see how it compares to LibreOffice for .docx fidelity.
Install Obsidian on Linux
Install Obsidian on Linux via AppImage or Flatpak, set up your vault, and sync notes for free using Git instead of paid Obsidian Sync.
Use Element and Matrix on Linux
Install Element via Flatpak on any Linux distro, configure encrypted DMs, back up your Matrix encryption keys, and pick the right homeserver for your needs.
Install Logseq for Knowledge Management
Install Logseq on Linux via AppImage, create your first knowledge graph, use daily notes, add plugins, and sync files across devices with Syncthing or Git.
Use Krita for Digital Illustration
Set up Krita on Linux for digital illustration: install it, configure tablet pressure, master brushes and layers, and learn when to use Krita instead of GIMP.
Install KeePassXC for Local Password Management
Install KeePassXC on Linux, create an encrypted database, set up browser autofill, SSH agent, secret service, and YubiKey two-factor unlock.
Install Joplin for Notes
Install Joplin on Linux via AppImage or Flatpak, then connect it to Joplin Cloud, Nextcloud, WebDAV, Dropbox, or S3 for encrypted cross-device sync.
Install Inkscape and Master the Basics
Install Inkscape via Flatpak, AppImage, or distro packages, then learn layers, paths, Boolean operations, shortcuts, and SVG/PNG export for the web.
Use GIMP for Photo Editing
Learn to edit photos in GIMP on Linux: layers, layer masks, RAW handoff via darktable, exporting to JPEG/PNG, and key plugins like G'MIC and Resynthesizer.
Sync Linux Calendars to Android with DAVx⁵
Install DAVx⁵ via F-Droid and sync your Nextcloud, Radicale, or Baikal CalDAV calendars to Android with automatic background sync.
Install BalenaEtcher and Tour BalenaCloud
Install BalenaEtcher via AppImage or native packages on any Linux distro, flash OS images, and tour BalenaCloud fleet management and self-hosting options.
Manage Personal Tasks with Taskwarrior
Manage tasks from your terminal using Taskwarrior. Covers add/done/list, recurring tasks, contexts, sync, and the vit TUI — no GUI needed.
Configure LibreOffice for Daily Use
Configure LibreOffice for daily use: set default save formats for MS Office interop, tune autosave, install fonts, and add productivity extensions.
Configure Kitty (Including Image Protocol)
Set up Kitty terminal from scratch: kitty.conf, fonts, themes, splits, kittens, and the Kitty graphics protocol for inline image display.
Configure Alacritty for Daily Use
Set up Alacritty as a daily-driver terminal: configure alacritty.toml for themes, ligature fonts, key bindings, and an auto-attaching tmux session on launch.
Use direnv for Per-Project Environments
Learn to use direnv to automatically load per-project environment variables, with integration guides for pyenv, nvm, mise, and asdf.
Use mise (or asdf) for Tool Versioning
Install mise (or asdf) to manage Node, Python, Ruby, and more from one .tool-versions file — replacing nvm, pyenv, and rbenv with a single fast tool.
Set Up a Raspberry Pi From Scratch
Flash a Raspberry Pi SD card with Imager, configure headless SSH access before first boot, update the system, and apply basic hardening on Raspberry Pi OS Bookworm.
Use a Raspberry Pi as a Headless Server
Turn a Raspberry Pi into a reliable headless server: configure SSH-only access, set a static IP, mount USB storage persistently, enable the hardware watchdog, and tune swap.
Install Uptime Kuma for Uptime Monitoring
Self-host Uptime Kuma with Docker Compose to monitor websites, TCP ports, and services — then configure alerts and a public status page in under 30 minutes.
Install Typesense on Linux
Install Typesense on Debian, Ubuntu, Fedora, or Arch; configure a secure API key; define a collection schema; index documents; and run filtered search queries.
Install the gcloud SDK on Linux
Install the Google Cloud CLI on Linux via package repository or tarball, then configure authentication, optional components, and kubectl for GKE.
Install the Azure CLI (az) on Linux
Install the Azure CLI on Debian, Ubuntu, Fedora, RHEL, and Arch Linux using package repos, then authenticate, switch subscriptions, and add extensions.
Install and Configure the AWS CLI
Install AWS CLI v2 on Linux, configure IAM credentials, named profiles, SSO login, MFA-backed roles, region defaults, and shell tab completions.
Install Ollama for Local LLMs
Install Ollama on Linux to run LLMs locally, pull models like Llama 3 and Mistral, use the REST API on port 11434, and connect a web UI — no cloud required.
Install OBS Studio on Linux
Install OBS Studio on Linux via native packages or Flatpak, configure NVENC and VA-API hardware encoders, enable Wayland PipeWire capture, and add key plugins.
Install Netdata for Real-Time Monitoring
Install Netdata on Linux with kickstart.sh, connect to Netdata Cloud, configure alarms and plugins, and tune performance impact — step-by-step for all major distros.
Install Meilisearch on Linux
Install Meilisearch on Linux, secure it with a master key, create indexes, tune typo tolerance, and sync data from PostgreSQL using a systemd timer.
Install Grafana on Linux
Install Grafana from the official repo on Debian, Ubuntu, Fedora, RHEL, or Arch, then configure datasources, dashboards, alert rules, and authentication.
Install Blender on Linux for 3D and Game Dev
Install Blender on Linux using the official tarball or Flatpak, configure NVIDIA, AMD, or Intel GPU drivers for Cycles rendering, and verify your setup works.
Install Ansible and Run Your First Playbook
Install Ansible via pip or your distro package manager, build an inventory file, then write and run your first idempotent playbook with privilege escalation.
Set Up a Hetzner Cloud Server from Scratch
Create a Hetzner Cloud server from scratch: project setup, SSH key upload, cloud-init bootstrapping, cloud firewall, IPv6, and snapshots in one structured guide.
Set Up a DigitalOcean Droplet for Production
Create a hardened, production-ready DigitalOcean Droplet: SSH keys, doctl, cloud and host firewalls, monitoring agents, backups, and Reserved IPs explained step by step.
Caddy as a Reverse Proxy
Set up Caddy as a reverse proxy with automatic HTTPS, load balancing, WebSocket passthrough, reusable snippets, and header control — no certbot required.
zsh vs bash: Which Shell Should You Use?
Bash vs zsh compared honestly: POSIX scripting, tab completion, history, Oh My Zsh, Starship prompts, and exactly when each shell is the right choice.
Verify a Linux ISO with Checksums and GPG
Learn to verify a Linux ISO using sha256sum and GPG signatures, fetch signing key fingerprints, and respond safely to any checksum or signature mismatch.
How to Use Snap on Linux
Learn how to install snapd, find and install snaps, choose channels, control automatic refresh schedules, understand classic confinement, and remove snap entirely.
Replace grep and find with ripgrep and fd
Replace grep and find with ripgrep and fd for faster searches, automatic .gitignore support, and safer scripting patterns—with key gotchas explained.
Use pass — the UNIX Password Manager
Set up pass, the UNIX password manager: initialise a GPG-encrypted store, manage credentials, sync across machines with Git, and integrate with your browser.
Use the GNOME Keyring or KWallet
Learn how GNOME Keyring and KWallet store secrets, enable auto-unlock at login via PAM, integrate libsecret apps and Git, and wire up SSH agent support.
Use Git Effectively from the Command Line
Master Git from the terminal: branches, merge vs rebase, interactive rebase to clean history, stash for context switching, and reflog to recover lost commits.
How to Use Flatpak on Linux
Install Flatpak, add Flathub, install and manage sandboxed apps, adjust permissions with Flatseal, and keep your system tidy by removing unused runtimes.
Modern Replacements: bat, eza, zoxide
Replace cat, ls, and cd with bat, eza, and zoxide for syntax highlighting, richer file listings, and instant directory jumping — with safe shell aliases.
How to Run AppImage Files
Download, chmod +x, and run — or go further with AppImageLauncher for menu integration and Firejail for sandboxing. A complete practical guide.
Encrypt Files with age and rage
Learn to encrypt and decrypt files with age and rage: generate keys, encrypt for multiple recipients, use SSH keys, and integrate with the passage password manager.
Test HTTP Endpoints with curl and httpie
Learn to test HTTP APIs from the command line using curl flags and HTTPie syntax, covering GET/POST, JSON bodies, auth headers, and mutual TLS.
Set Up a Printer and Scanner on Linux
Set up printing and scanning on Linux using CUPS, IPP Everywhere driverless printing, and SANE with network/eSCL scanner support across Ubuntu, Fedora, and Arch.
Protect SSH against Brute-force with fail2ban
Install and configure fail2ban to automatically block SSH brute-force attacks using jails, custom ban times, allowlists, and the recidive jail.
Migrating from Windows to Linux: A Detailed Plan
A practical, step-by-step plan for moving from Windows to Linux — covering files, email, bookmarks, license keys, peripherals, and gaming.
Migrating from macOS to Linux
Move from macOS to Linux without losing your workflow: remap ⌘ keys, restore trackpad gestures, find app alternatives, set up Time Machine-style backups, and manage dotfiles.
Manage SSH Keys and the SSH Agent
Generate ed25519 and RSA SSH keys, manage passphrases with ssh-agent and keychain, forward credentials safely, and harden with FIDO2 hardware tokens.
Manage Old Kernels and Clean /boot
Keep /boot from filling up by safely removing old kernel packages on Ubuntu, Fedora, and Arch — with autoremove tips and emergency recovery steps.
Record Your Screen on Linux
Record your Linux screen using GNOME's built-in recorder, Kooha, or OBS Studio — with Wayland portal setup and hardware encoding explained.
Analyse Linux Logs with journalctl, lnav and grep
Learn to investigate Linux logs using journalctl filters, grep pipelines, and lnav's interactive interface — then know when ELK or Loki makes more sense.
New Linux Laptop Setup Checklist
Post-install laptop checklist covering TLP power management, systemd lid actions, S3 suspend, fingerprint enrollment with fprintd, and Wi-Fi tuning for reliability and battery life.
Calendar and Contacts on Linux
Sync Google Calendar, iCloud, and Nextcloud to Linux using CalDAV/CardDAV, GNOME Online Accounts, Evolution, Thunderbird, and vdirsyncer.
How to Install Ubuntu Server
Install Ubuntu Server 24.04 with Subiquity, configure LVM and OpenSSH during setup, understand cloud-init, and harden the system before your first workload.
How to Install Rocky Linux or AlmaLinux
Install Rocky Linux or AlmaLinux using the Anaconda installer: choose between minimal and server profiles, automate with kickstart, and apply first updates.
Install Python with pyenv
Install pyenv on Linux to manage multiple Python versions safely alongside your distro Python, with build deps, version switching, and virtualenv setup.
Install Pi-hole for Network-Wide Ad Blocking
Install Pi-hole on Linux to block ads and trackers network-wide via DNS. Covers install, blocklists, router DNS setup, whitelisting, and keeping it updated.
How to Install openSUSE Leap or Tumbleweed
Install openSUSE Leap or Tumbleweed step by step: ISO verification, YaST partitioning, Btrfs subvolumes, Snapper snapshots, and first-boot updates.
Install Node.js with nvm on Linux
Install nvm on Linux to manage multiple Node.js versions per project, set defaults, pin versions with .nvmrc, and choose the right approach for servers and CI.
How to Install MX Linux
Step-by-step guide to installing MX Linux 23 on bare metal: writing the ISO, partitioning, choosing systemd or SysV init, and setting up MX Tools post-install.
How to Install Manjaro Linux
Install Manjaro Linux step by step: verify the ISO, write bootable media, partition with Calamares, pick a kernel, and configure drivers on first boot.
Install Google Chrome or Chromium
Install Google Chrome, Chromium, or ungoogled-chromium on Debian, Ubuntu, Fedora, and Arch. Covers repos, Wayland flags, and default browser setup.
Install Go and Rust on Linux
Install Go via the official tarball and Rust via rustup on Linux. Covers PATH setup, multiple versions side by side, and keeping both toolchains updated.
Try the Fish Shell
Install Fish shell, configure autosuggestions, abbreviations, and functions, use the web UI, and understand where POSIX incompatibility will bite you.
How to Install elementary OS
Step-by-step guide to downloading, verifying, and installing elementary OS 8, covering the Calamares installer, Pantheon desktop basics, and first app setup.
Install and Configure zsh
Install zsh, set it as your default shell, and configure history, completions, zinit plugins, and a modern prompt like Starship or Powerlevel10k.
Install and Configure Firefox on Linux
Install Firefox on Linux via distro packages, Flatpak, or Mozilla's tarball, then set up profiles, Firefox Sync, and GPU hardware acceleration.
Install and Configure Caddy
Install Caddy on Linux, configure auto-HTTPS, set up reverse proxying and static file serving, and extend Caddy with third-party modules — all via the Caddyfile.
Host Static Sites with nginx
Install nginx on Linux, host multiple static sites with SSL, gzip/brotli compression, long-lived caching headers, and HTTP-to-HTTPS redirects.
Fix Locale, Charset and Timezone Issues
Fix broken locale, charset, and timezone settings on Linux—covering locale-gen, LC_* variables, timedatectl, container images, and cron environment traps.
The Best Email Clients on Linux
Compare Thunderbird, Evolution, Geary, and Claws Mail on Linux — with installation commands and OAuth2 setup for Gmail and Office 365 on each client.
Configure Tailscale on Linux
Install Tailscale on Linux, authenticate devices, enable MagicDNS, configure exit nodes and subnet routes, and set up basic ACLs for access control.
Linux Clipboards Explained (+ Clipboard Managers)
Learn the difference between Linux's PRIMARY and CLIPBOARD selections, use xclip, xsel, and wl-clipboard from the terminal, and manage history with GPaste or Klipper.
How to Use tldr for Quick Command Help
Install tealdeer or the Node.js tldr client, populate the offline cache, and look up practical command examples faster than man pages allow.
How to Use ripgrep (rg) Instead of grep
ripgrep (rg) is a fast, Rust-powered grep replacement with gitignore support built in. Learn installation, regex syntax, and the most useful flags.
How to Use fd Instead of find
Learn to use fd, the modern find alternative: friendlier syntax, smart defaults, .gitignore support, and parallel command execution with --exec.
How to Use bat as a Better cat
Learn how to use bat as a modern replacement for cat, with syntax highlighting, line numbers, paging control, and Git diff integration on Linux.
How to Set Up Tailscale on Linux
Install Tailscale on Linux, authenticate devices, configure ACLs, and enable MagicDNS to build a secure WireGuard mesh VPN in minutes.
How to Scan a Linux System for Malware with ClamAV
Install ClamAV on Linux, update virus signatures with freshclam, run on-demand and scheduled scans, and verify detection works with the EICAR test file.
Linux vs macOS: How They Compare
A practical comparison of Linux and macOS for developers and switchers: terminal tools, package managers, hardware support, and daily workflow differences.
How to Learn Regular Expressions on Linux
Learn regex on Linux from the ground up: character classes, anchors, quantifiers, and hands-on practice with grep, sed, awk, and ripgrep.
How to Install Zsh and Oh My Zsh
Install Zsh and Oh My Zsh on Linux, set Zsh as your default shell, configure Powerlevel10k, and add syntax highlighting and autosuggestion plugins.
How to Install Zorin OS for Windows Switchers
Install Zorin OS on any PC for a Windows-like Linux experience — bootable USB, disk partitioning, layout chooser, pre-installed apps, and first troubleshooting steps.
How to Install and Use the Fish Shell
Install Fish shell on Linux, set it as your default, and learn abbreviations, autosuggestions, and how to migrate your bash habits in one practical guide.
How to Install Pop!_OS
Install Pop!_OS step by step: pick the right NVIDIA or Intel ISO, write a bootable USB, configure disk encryption, and complete day-one setup.
How to Install Manjaro Linux
Install Manjaro Linux the right way: verify the ISO, run the Calamares installer, pick a kernel, configure drivers, and harden your new system in minutes.
How to Install Debian 12 (Bookworm)
Step-by-step walkthrough of the Debian 12 Bookworm installer: disk partitioning, tasksel, GRUB setup, and essential post-install configuration.
How to Install Caddy: The TLS-Automatic Web Server
Install Caddy web server, configure the Caddyfile, get automatic HTTPS from Let's Encrypt, and set up reverse proxying in under 15 minutes.
How to Fix "Could not get lock /var/lib/dpkg/lock"
Fix the /var/lib/dpkg/lock error safely: identify the process holding the lock, handle stale files, and repair the package database without causing corruption.
WSL: Run Linux on Windows
Install WSL2 on Windows 10 or 11, pick a Linux distro, access files across both systems, and enable systemd for full service management.
Windows to Linux: App Alternatives for Everything
A practical mapping of Windows software to Linux equivalents covering office, photo editing, audio production, development tools, and gaming.
Vim for Beginners
Learn Vim's modal editing model from scratch: modes, movement, editing, saving, search, and the essential commands every Linux user needs to know.
How to Use the ip Command
Master the ip command to manage interfaces, addresses, routes, and ARP neighbours — the modern replacement for ifconfig, route, and arp on Linux.
Understanding Linux File Permissions
Master Linux file permissions from scratch: understand rwx bits, owner/group/other classes, chmod numeric and symbolic modes, chown, and the sticky bit.
Ubuntu vs Debian: Which Should You Use?
Debian and Ubuntu share a foundation but differ on release cadence, package freshness, and default tooling. Here's how to pick the right one for your workload.
Try Linux Without Installing: Live USB Guide
Run Linux from a flash drive without touching your hard drive. This guide covers creating a live USB with Ventoy or Etcher, enabling persistence, and testing hardware compatibility.
How to Troubleshoot Network Connectivity
Diagnose Linux network problems layer by layer using ip, ping, traceroute, ss, and dig — from interface state to DNS resolution.
The History of Berkeley Unix (BSD)
From Bell Labs to Berkeley to the courtroom: how BSD Unix was built, fought over, and shaped the open-source software world that Linux users live in today.
TCP/IP Protocols Explained
Understand IP, TCP, UDP, ICMP, ports, and the four-layer model — the core networking concepts every Linux sysadmin must know before touching a firewall or debugg
How to Take Screenshots on Linux
Learn how to take screenshots on Linux using GNOME and KDE built-in tools, Flameshot with annotations, and Wayland-compatible command-line utilities.
How to Switch from Windows to Linux
A practical migration plan covering backups, dual-booting, app replacements, and Linux habits — for Windows users making the switch for the first time.
SSH: The Complete Guide
Master SSH from first login to port forwarding: key-based auth, client config files, the SSH agent, and local/remote tunnels on any Linux distribution.
Shadow Passwords Explained
Learn why /etc/shadow exists, how to read its nine fields, which hashing algorithms are current, and how to manage password aging with chage, pwconv, and pwck.
How to Set Up Bluetooth on Linux
Install BlueZ, pair Bluetooth devices from the command line or GUI, configure audio profiles with PipeWire, and fix the most common Bluetooth issues on Linux.
How to Set Up a Firewall with UFW
Learn to configure UFW on Linux: set secure default policies, open only the ports you need, read existing rules, and verify your firewall is working correctly.
How to Read Logs with journalctl
Learn to filter systemd journal logs by unit, time, and priority with journalctl, follow logs live, and manage disk usage on any modern Linux system.
How to Play Games on Linux with Steam and Proton
Install Steam, enable Proton, use ProtonDB to check compatibility, and set up Lutris to run Windows games on any major Linux distro.
Pipes and Redirection in Bash
Master Bash pipes and redirection: learn stdin, stdout, stderr, |, >, >>, 2>&1, /dev/null, tee, xargs, and how to build reliable command pipelines.
How to Mount and Unmount Drives
Learn how to mount and unmount drives on Linux using mount, umount, and /etc/fstab with UUIDs for reliable, persistent automounting across reboots.
How to Monitor Processes on Linux
Learn to monitor Linux processes with ps, top, htop, and btop. Covers reading process states, killing processes safely, and tuning CPU priority with nice/renice.
Master the grep Command
Learn grep from plain string searches to recursive directory scans, regular expressions, context flags, and practical log-analysis one-liners on Linux.
How to Manage Services with systemctl
Learn to start, stop, enable, disable, and mask Linux services using systemctl, plus how to read failures and diagnose problems with journalctl.
Linux Troubleshooting: A Practical First-Response Guide
A repeatable first-response method for Linux problems: read the error carefully, query journalctl, isolate the triggering change, search precisely, and ask for help effectively.
Linux Networking Fundamentals
Master Linux networking from the ground up: interfaces, IP addressing, gateways, DNS, and the essential tools ip, ping, and ss with distro-specific examples.
Linux Hardware Compatibility: What Works and How to Check
Check GPU, Wi-Fi, and printer compatibility before installing Linux. Learn lspci, lsusb, firmware packages, and the best lookup resources for your hardware.
The Linux File System for Beginners
Learn how Linux organizes files into a single directory tree: what / vs /home means, how mount points work, and where binaries, configs, and logs live.
The Linux Command Line for Absolute Beginners
Learn the Linux command line from scratch: what the shell is, how to navigate with cd/ls/pwd, manage files, and master your first essential commands.
How to Keep Linux Updated
Learn how to safely update Debian, Ubuntu, Fedora, RHEL, and Arch Linux systems using apt, dnf, and pacman — including how to hold or exclude packages.
An Introduction to TCP/IP
Learn how TCP/IP works — IP addressing, routing, TCP vs UDP, ports, DNS, and the layered model — with practical Linux commands to see it all in action.
How to Install Ubuntu 24.04 LTS Desktop
Install Ubuntu 24.04 LTS Desktop step by step: create a bootable USB, partition your disk, set up your user account, and apply first-boot updates.
How to Install Software on Linux
Learn how to install software on Linux using apt, dnf, pacman, Flatpak, Snap, and AppImage — with clear guidance on when to use each method.
How to Install Linux Mint
Step-by-step walkthrough to install Linux Mint alongside or instead of Windows — from downloading the ISO to applying your first updates.
Install Linux in a Virtual Machine
Install Linux in VirtualBox or KVM (GNOME Boxes/virt-manager), configure guest additions for clipboard and display, and take snapshots for safe experimentation.
How to Install Fonts on Linux
Install fonts on Linux for a single user or system-wide, understand fontconfig's directory layout, and refresh the font cache so apps pick them up immediately.
How to Install Fedora Workstation
Step-by-step guide to installing Fedora Workstation 40: create a bootable USB with Fedora Media Writer, partition your disk in Anaconda, and complete first-run setup.
HP Printers and Hardware on Linux
Install HPLIP and CUPS on Linux to print and scan with HP printers. Covers USB and network setup, SANE scanning, and common troubleshooting steps.
How to Download and Install Linux
Choose a Linux distro, download and verify the ISO, write it to USB with dd or Etcher, then boot and run the graphical installer — covered step by step.
How to Host a Website on a Linux Server
From a fresh VPS to a live HTTPS site: configure DNS, install Nginx, set up a virtual host, and issue a free Let's Encrypt TLS certificate with Certbot.
Git from the Command Line
Learn Git from the terminal: install, configure, init or clone a repo, stage and commit changes, create branches, merge, and push to a remote.
How to Free Up Disk Space on Linux
Recover gigabytes on any Linux system by clearing package caches, trimming the systemd journal, removing old kernels, and hunting large files with ncdu.
10 Things to Do After Installing Linux
Ten essential post-install steps for any Linux desktop: updates, drivers, firewall, codecs, backups, SSH hardening, and service cleanup — all with modern commands.
How to Find Files on Linux
Learn to find files on Linux using find, locate, and fd — covering searches by name, size, modification time, and running actions on results.
Esperanto and Multilingual Support on Linux
Add Esperanto locale, keyboard layout, and input methods on Linux. A practical walkthrough covering GNOME, KDE, Wayland, TTY, and Fcitx5 that applies to any language.
How to Customize the GNOME Desktop
Customize GNOME with Tweaks, Extension Manager, GTK and Shell themes, keyboard shortcuts, and fixed workspaces — practical steps for GNOME 44/45.
How to Customize KDE Plasma
Customize KDE Plasma with themes, widgets, activities, and System Settings tweaks. Covers all major distros, Wayland, and config file locations.
Cron Jobs Explained
Master cron job scheduling on Linux: full crontab syntax, environment variables, output logging, and when to use systemd timers instead.
How to Configure a Static IP on Linux
Configure a static IP on Linux using Netplan, NetworkManager (nmcli), or systemd-networkd across Ubuntu, Fedora, Debian, and Arch with verified steps.
Common Linux Network Ports Reference
Learn Linux port ranges, read /etc/services, find what's listening with ss and nmap, and apply solid firewall rules to expose or block the right ports.
How to Choose a Linux Distribution
Match a Linux distro to your real needs — desktop, server, rolling vs LTS, hardware quirks, and package ecosystems — without wading through marketing noise.
How to Check Disk Health with SMART
Learn to use smartctl to read SMART attributes, run drive self-tests, and identify early warning signs of HDD and SSD failure before data loss occurs.
How to Change the Webmin Port
Move Webmin off its default port 10000 by editing miniserv.conf, updating your firewall (ufw, firewalld, or nftables), and restarting the service.
A C Programming Tutorial for Linux
Learn C on Linux from hello-world through gcc flags, header files, multi-file projects, make, and the standard library — with real commands and examples.
The Best Linux Distros for Beginners
The best Linux distros for beginners in 2024: Ubuntu, Linux Mint, Fedora, and Pop!_OS compared with honest pros, cons, and setup tips.
Bash Scripting for Beginners
Learn Bash scripting from scratch: shebang lines, variables, conditionals, loops, and arguments, plus a real backup script to tie it all together.
Bash Loops: for, while and until
Learn all three Bash loop types — for, while, and until — with practical, copy-paste examples covering file iteration, counting, polling, and safe line reading.
How to Back Up Your Linux System
Learn how to back up your Linux system using Timeshift, rsync, Borg, and Restic — then tie it all together with a practical 3-2-1 backup routine.
How to Enable Automatic Security Updates
Enable automatic security updates on Debian, Ubuntu, Fedora, and RHEL using unattended-upgrades and dnf-automatic — configured to patch safely without manual effort.