anacron Explained: Run Missed Jobs After Downtime on Linux
How anacron runs daily, weekly and monthly jobs that cron missed while a machine was off: anacrontab syntax, cron.daily, delays, testing, and systemd timers.
Blog
Linux server administration: Debian, Ubuntu, AlmaLinux, storage, performance and troubleshooting.
How anacron runs daily, weekly and monthly jobs that cron missed while a machine was off: anacrontab syntax, cron.daily, delays, testing, and systemd timers.
Install and use htop: read CPU and memory meters, sort and filter processes, tree view, kill and renice, and spot common server problems.
Schedule jobs with cron: crontab syntax, editing user and system crontabs, environment and PATH pitfalls, logging output, preventing overlaps and debugging.
Configure GRUB2: /etc/default/grub, update-grub vs grub2-mkconfig, the default kernel, kernel parameters, showing the menu, and reinstalling GRUB.
Grant programs only the privileges they need: CAP_NET_BIND_SERVICE for low ports, getcap and setcap, systemd AmbientCapabilities, and Docker cap_drop.
How Linux runs scripts: the shebang line, #!/bin/bash vs env, making scripts executable, ./script vs bash vs source, and fixing common errors.
Copy files and directories between your computer and a Linux server with scp: syntax, ports, keys, recursive and server-to-server copies.
Shell wildcards on Linux: *, ?, character classes, brace expansion, recursive ** globs, dotglob and nullglob, quoting, and safe patterns for rm, mv and cp.
Use snap on Ubuntu servers: install and manage snaps, channels, refresh schedules, disk usage of old revisions, snap vs apt, and removing snapd completely.
Create and extract zip archives on Linux: zip folders, exclude files, passwords, list and test archives, unzip to a directory, large files.
Use dmesg to read kernel messages with readable timestamps, follow them live, filter by level, and spot OOM kills, disk I/O errors and segfaults.
Add PPAs and third-party apt repositories safely: add-apt-repository, signed-by keyrings instead of apt-key, deb822 .sources files, pinning and removal.
Use dpkg to install .deb files, list installed packages, find which package owns a file, fix "dpkg was interrupted" and broken installs, and hold packages.
Fix a full Linux disk step by step: find what is using space, free it safely, handle deleted-open files and inode exhaustion, then stop it happening again.
How systemd targets replace runlevels: list and switch targets, set the default, boot into rescue or emergency mode, and how services attach.
Bash variables explained: assignment rules, quoting, command substitution, default values, string manipulation, arithmetic, arrays, scope and environment.
Use Bash history: search with Ctrl+R, rerun commands with !!, !n and !$, add timestamps, save across sessions and remove sensitive entries.
AppArmor on Ubuntu and Debian: check status, read DENIED log lines, use complain mode, and allow custom paths for MySQL with local overrides.
Copy files and directories with cp: recursive copies, preserving permissions and timestamps, avoiding overwrites, symlinks, and when to use rsync.
Delete files and directories with rm: -r, -f and -i explained, safe habits, removing odd filenames, find -delete, recovering space held by deleted files.
Fix No space left on device when df shows free space: check inodes with df -i, find directories with millions of small files, clean up, prevent it.
Write Bash for loops over lists, files, ranges and command output, use C-style loops, read lines safely with while read, and avoid quoting mistakes.
Copy-ready cron expressions: every minute, every 5 minutes, hourly, daily at a time, weekdays, monthly, last day of month, plus ranges, steps and gotchas.
Print text and variables with echo: quoting rules, -n and -e, escape sequences, writing to files, colours, and why printf is often better in scripts.