Popular HOWTOs
- Kernel HOWTOBuild, install and roll back a Linux kernel, and when your distribution kernel is the better choice.
- Firewall HOWTOA safe firewall with nftables, firewalld or ufw, without locking yourself out over SSH.
- Bash scriptingVariables, quoting, tests, loops and functions, with scripts that work in Bash 5.
- DNS HOWTOResolvers, caching with Unbound, and running a zone with BIND 9.
All rewritten HOWTOs
Each one keeps its old address and title, but describes how things work on current distributions. The HOWTO index also lists every classic HOWTO from 2001–2002, with a link to its original text where it is still kept.
- Kernel HOWTOBuild a kernel.org Linux kernel on Debian, Ubuntu, Fedora or Arch: get and verify the source, configure, compile, install, create the initramfs, boot it and roll back.
- Installation HOWTOInstall Linux today: choose a distribution, verify the ISO, make a USB stick, handle UEFI and Secure Boot, partition and encrypt, dual boot, and what to do next.
- Unix and Internet basicsA plain-language tour of how Linux boots, runs programs, stores files and uses memory, and how IP, DNS, HTTP and TLS deliver a web page, with commands to try.
- Unicode HOWTOUse UTF-8 everywhere on Linux: check and set locales with locale and localectl, fix file names with convmv, convert text with iconv, and type any character.
- Font HOWTOHow fonts work on Linux with fontconfig: install fonts per user or system-wide, check them with fc-list and fc-match, tune rendering, and fix emoji and CJK.
- Hardware HOWTOCheck if a PC or part works with Linux: hardware databases, lspci, lsusb, lshw and inxi, finding the driver, installing firmware, fwupd updates, Wi-Fi and GPUs.
- Bootdisk HOWTOMake a bootable Linux USB stick with dd, Fedora Media Writer or Ventoy, boot SystemRescue, and repair GRUB on a UEFI system from a live system with chroot.
- Firewall HOWTOSet up a Linux firewall today: a safe nftables ruleset, firewalld zones, ufw rules, logging, saving rules across reboots, and how to avoid locking yourself out of SSH.
- IPCHAINS HOWTOipchains is gone from Linux. How old ipchains and iptables rules map to nftables, how to translate them with iptables-translate, and how to migrate a firewall safely.
- IP Masquerade HOWTOTurn a Linux box into a NAT router: enable IP forwarding, masquerade with nftables or firewalld, forward ports, and hand out addresses and DNS to the LAN with dnsmasq.
- Advanced Routing HOWTOAdvanced Linux routing with iproute2: routing tables and ip rule, two Internet uplinks, fwmark routing, multipath, VRF, and fq_codel and cake against bufferbloat.
- Bash scripting introWrite your first Bash scripts: quoting, if and case, loops, functions, exit codes, the real caveats of set -euo pipefail, and checking scripts with ShellCheck.
- Video timings HOWTOSet screen resolution and refresh rate on Linux: desktop settings, xrandr and cvt modelines on Xorg, wlr-randr on Wayland, the video= parameter and EDID fixes.
- Advanced Bash scriptingAdvanced Bash 5 techniques with tested examples: arrays and associative arrays, parameter expansion, process substitution, here-docs, traps, getopts and debugging.
- Framebuffer HOWTOHow the Linux text console works today (simpledrm, KMS, fbdev emulation): set its resolution with video=, change and keep console fonts, rotate it, and use fbset.
- Bash promptChange your Bash prompt with PS1 escapes, add colors without breaking line editing, show the Git branch and the last exit code with PROMPT_COMMAND, or switch to Starship.
- CD-Writing HOWTOBurn data, audio and ISO images to CD, DVD and Blu-ray on Linux with xorriso, cdrskin and growisofs, verify discs, copy them, or write ISO files to USB instead.
- Printing HOWTOSet up printing on Linux with CUPS: driverless IPP Everywhere and AirPrint printers, lpadmin and lpstat, USB printers via ipp-usb, printer apps and troubleshooting.
- DNS HOWTODNS on Linux today: systemd-resolved and resolvectl, a caching Unbound resolver for your LAN, a BIND 9 authoritative zone with checks, DNSSEC, and dig/drill.
- Modem HOWTOModems on Linux in 2026: LTE/5G modules with ModemManager, mmcli and nmcli, USB serial devices and the dialout group, picocom, and a short note on dial-up with pppd.
- DHCP mini-HOWTOGet an address by DHCP with NetworkManager or systemd-networkd, and run a DHCP server with ISC Kea or dnsmasq, including fixed reservations. ISC dhcpd is end of life.
- PPP HOWTOSet up PPP on Linux in 2026: PPPoE for DSL and fiber with NetworkManager or pppd, VLAN tags, MTU 1492 and MSS clamping, PPP over a serial link, and how to debug it.
- NFS HOWTOShare directories over NFSv4: /etc/exports options, exportfs, an NFSv4-only server, firewall ports, client mounts, fstab with systemd automount, and Kerberos security.
- SMB HOWTORun a Samba file server with an smb.conf share and smbpasswd users, mount Windows shares with cifs-utils and fstab credentials, why SMB1 is off, and Samba AD.
- NIS HOWTONIS (YP) is insecure and gone from RHEL 9. How to inventory NIS maps, move users, groups and automount maps to FreeIPA or LDAP with SSSD, and lock down ypserv.
- Ethernet HOWTOGet a wired network card working on Linux: check driver and link with lspci and ethtool, then set addresses with ip, nmcli, systemd-networkd, netplan or ifupdown.
- LDAP HOWTORun an LDAP directory with OpenLDAP (cn=config), 389 Directory Server or FreeIPA, add users with LDIF, query with ldapsearch, and log in on Linux clients via SSSD.
- Bridge and STP HOWTOBuild a Linux network bridge with ip, NetworkManager, systemd-networkd or netplan, use it for VMs and containers, and turn on Spanning Tree (STP) when loops are possible.
- VPN mini-HOWTOBuild a VPN on Linux: a WireGuard server and client with wg-quick, an OpenVPN server with Easy-RSA, strongSwan IPsec site-to-site with swanctl, and NetworkManager.
- Security HOWTOSecure a Linux server or desktop today: automatic updates, sudo, SSH keys and sshd hardening, a firewall, fewer services, AppArmor/SELinux, logs, AIDE and backups.
- SSL/TLS HOWTOGet free Let's Encrypt certificates with certbot on RHEL, Fedora, Debian and Ubuntu, configure mod_ssl or nginx, make test certificates with openssl and check them.
- AX.25 HOWTOAmateur packet radio on Linux in 2026: Dire Wolf soft TNC, KISS and AGW ports, kissattach and ax25-tools, APRS, and the removal of kernel AX.25 in Linux 7.1.
- Parallel ProcessingUse every core on Linux: xargs -P and GNU parallel for many jobs, OpenMP threads, MPI with Open MPI, Slurm batch clusters, and where GPUs (CUDA, ROCm) fit in.
- Sound (ALSA/PipeWire)How Linux sound works today (ALSA drivers, PipeWire and WirePlumber, PulseAudio compatibility), using wpctl, pactl, alsamixer and aplay, and fixing no sound.
- Text terminalsHow Linux terminals work today: ttys and pseudo-terminals, TERM and terminfo, fixing a broken terminal, setting up a serial console with agetty, and using tmux or screen.
- Keyboard and consoleSet keyboard layouts for the Linux console and X11/Wayland desktops with localectl, loadkeys and XKB options; add a Compose key, change console fonts, tame SysRq.
- Secure Programs HOWTOWrite safer programs on Linux: validate input, avoid injection, C memory safety, GCC hardening flags (_FORTIFY_SOURCE=3, PIE, RELRO), sanitizers and dependency scans.
- Software RAID HOWTOBuild and run Linux software RAID with mdadm: create an array, read /proc/mdstat, save mdadm.conf, monitor and scrub, replace a failed disk, plus LVM RAID, ZFS and Btrfs.
- Assembly HOWTOWrite, assemble, link and debug x86-64 assembly on Linux: NASM and GNU as syntax, system call registers, hello world, calling C, gdb, plus an ARM64 example.
- Coffee mini-HOWTOThe classic joke HOWTO retold: switch a coffee maker on from a Linux shell with a smart plug via Home Assistant or MQTT, schedule it with systemd, and stay safe.
- KickStart HOWTOInstall many Linux machines without touching the keyboard: Kickstart for RHEL, Alma, Rocky and Fedora, Debian preseed, Ubuntu autoinstall, and PXE/iPXE boot.
- Software release practiceRelease open-source software today: Semantic Versioning, signed Git tags, a readable changelog, SPDX license tags, signed tarballs and reproducible builds.
- UPS HOWTOConnect a UPS to Linux in 2026: Network UPS Tools (upsd, upsmon, upsc) for any brand and for several servers, apcupsd for APC units, and how to test a safe shutdown.
- CVS/RCS to GitGit for CVS and RCS users: commands side by side, keyword expansion, converting CVS, RCS and Subversion history with cvs-fast-export, cvs2git and git svn.
- RPM HOWTOUse rpm and dnf on Fedora, RHEL, Alma, Rocky and openSUSE: query and verify installed packages, check signatures, write a spec file, build with rpmbuild and sign.
- Diskless HOWTOBoot Linux machines with no local disk: how PXE and iPXE work, a dnsmasq plus NFS root setup for Debian 13 clients, LTSP for labs, Secure Boot and troubleshooting.
- Mutt and GnuPGOpenPGP email in Mutt or NeoMutt with GnuPG and GPGME: create a key, fix pinentry, find keys, a working muttrc, and send and check signed, encrypted mail.
- BootPrompt HOWTOView and change Linux kernel boot parameters: /proc/cmdline, one-time edits in GRUB and systemd-boot, GRUB_CMDLINE_LINUX, update-grub, grubby, common options.
- Emacs for beginnersLearn GNU Emacs on Linux: install it, the keys you need on day one, built-in help, a small init.el, use-package, Org mode notes and Eglot for code.
- Plug-and-Play HOWTOHow Linux finds devices and loads drivers in 2026: udev and modalias, lsmod and modprobe, modprobe.d options and blacklists, your own udev rules, and firmware loading.
- C++ ProgrammingBuild C++ on Linux today: g++ and clang++, C++20/23 flags and defaults, warnings, a CMake project, gdb, AddressSanitizer and UBSan, and vcpkg or Conan for libraries.
- PCMCIA HOWTOFrom PC Card and CardBus to ExpressCard, Thunderbolt and USB4 on Linux: pccardctl, boltctl device authorization, and laptop power with TLP or power-profiles-daemon.
- DocBook and doc toolsSet up a DocBook 5 XML toolchain on Linux (xsltproc, docbook-xsl-ns, jing, FOP, xslTNG), and when to use Asciidoctor, Pandoc, Sphinx or MkDocs instead.
- IP SubnetworkingIP subnetting with worked examples: CIDR prefixes and netmasks, network and broadcast addresses, splitting a /24, IPv6 /64 subnets, and checking with ipcalc.
- Program LibrariesBuild static (.a) and shared (.so) libraries on Linux: sonames and symlinks, ldconfig, LD_LIBRARY_PATH, rpath and $ORIGIN, ldd, pkg-config files and dlopen plugins.
- Font de-uglificationFix blurry, jagged or wrong fonts on Linux desktops: find the font in use, tune antialiasing and hinting, FreeType options, missing fonts, old X11 programs.
- Undeleting filesDeleted a file on Linux? Stop writing to the disk, check open files and snapshots, image the disk, then try extundelete, ext4magic or PhotoRec, and prevent a repeat.
- I/O port programmingDriving hardware from a Linux program in 2026: x86 port I/O with ioperm and /dev/port, GPIO with libgpiod, I2C, SPI with spidev, and UIO, with C examples.
- LILO mini-HOWTOWhat replaced LILO: GRUB 2, systemd-boot, rEFInd and Limine compared, how to tell which one you boot with, how to switch, and how to repair a broken boot from a live USB.
- Partition mini-HOWTOPartition a disk for Linux today: GPT or MBR, the EFI system partition, fdisk, sfdisk, gdisk and parted, swap files and zram, LVM, LUKS2 and table backups.
- Linux + Windows dual bootDual-boot Windows 10/11 and Linux on a UEFI PC: sharing the EFI partition, BitLocker recovery keys, Secure Boot, os-prober in GRUB, efibootmgr boot order and clock fixes.
Guides
Overviews that replace the book-length guides once published here, such as the System Administrator's Guide and Advanced Bash-Scripting.
- Getting startedA first guide to Linux today: picking a distribution, trying it from USB, desktop and terminal basics, installing software, keeping it updated, and where to get help.
- Bash scripting guideA learning path for Bash 5.3 scripting (current as of November 2026): what to learn in which order, a tested script template, what changed since Bash 2, manual pointers.
- System administrator's guideRun a Linux system today: users and sudo, disks and fstab, systemd services, reading logs with journalctl, systemd timers and cron, backups with restic, and updates.
- Network administrator's guideRun Linux networks today: addressing, NetworkManager, networkd and netplan, routing, DNS, DHCP, firewalls, and troubleshooting with ip, ss, tcpdump and mtr.
- Kernel modulesWrite, build and load a Linux kernel module today: hello-world code, a kbuild Makefile, insmod and modprobe, parameters, DKMS, and signing modules for Secure Boot.
- Linux kernel internalsHow the Linux kernel works today: processes and the EEVDF scheduler, virtual memory and page cache, the VFS, the network stack, drivers and eBPF.
- Linux programmingHow Linux programs talk to the kernel: system calls, glibc and musl, file descriptors, fork and exec, signals, pipes and other IPC, threads, and strace, gdb and perf.
- Securing RHEL serversHarden and tune a RHEL 9 or 10 server (or AlmaLinux, Rocky Linux): minimal install, security updates, SELinux, firewalld, SSH, crypto policies, auditd, AIDE and TuneD.
- Author guideWrite Linux documentation people can follow: choose the right kind of page, structure a how-to, test commands, write a man page, license it, send it upstream.
- Linux GazetteWhat Linux Gazette was (a monthly e-zine, July 1995 to June 2011), where its archive lives, and where to follow Linux now: LWN.net, Kernel Newbies, distro news.
Useful tools
- SSL checkerVerify a server's TLS/SSL certificate installation from outside: names, expiry date and the intermediate chain.
- IBAN checkerValidate an IBAN and look up the bank and its BIC/SWIFT code before an international payment.
Independent. linuxdoc.org is an independent site. It is not the Linux Documentation Project, which keeps the classic HOWTOs at tldp.org. Commands on this site are checked against current man pages and the projects' own documentation; each page lists its sources.