<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Daniel Cosenza&apos;s Blog — Linux</title><description>The kernel primitives, init systems, and tooling behind the world&apos;s most-deployed OS.</description><link>https://danielcosenza.com/</link><language>en-us</language><lastBuildDate>Fri, 17 Jul 2026 00:00:00 GMT</lastBuildDate><atom:link href="https://danielcosenza.com/categories/linux/rss.xml" rel="self" type="application/rss+xml"/><item><title>Linux Capabilities: Fine-Grained Privileges Beyond root and setuid</title><link>https://danielcosenza.com/posts/lx-capabilities/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-capabilities/</guid><description>Understand Linux capability sets, exec transitions, file attributes, systemd and container boundaries, with a least-privilege audit workflow.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>capabilities</category><category>security</category><category>kernel</category></item><item><title>Fixing a Corrupted ext4 or XFS Filesystem with fsck</title><link>https://danielcosenza.com/posts/lx-fix-ext4-xfs-fsck/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-fix-ext4-xfs-fsck/</guid><description>The correct order of operations for repairing a corrupted Linux filesystem, and what to do when the repair tool reports it can&apos;t fix something automatically.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>ext4</category><category>xfs</category><category>fsck</category></item><item><title>Fixing High Load Average on Linux When CPU Usage Looks Normal</title><link>https://danielcosenza.com/posts/lx-fix-high-load-io-wait/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-fix-high-load-io-wait/</guid><description>Load average climbs while top shows idle CPU — this usually means processes stuck waiting on I/O, not CPU; here&apos;s how to find which one.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>fix</category><category>performance</category><category>io</category></item><item><title>Diagnosing and Fixing Kernel Oops Messages in dmesg</title><link>https://danielcosenza.com/posts/lx-fix-kernel-oops-dmesg/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-fix-kernel-oops-dmesg/</guid><description>The difference between an oops and a full panic, how to read an oops call trace to identify the responsible driver, and when it&apos;s safe to ignore.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>kernel</category><category>dmesg</category><category>debugging</category></item><item><title>Fixing a Kernel Panic on Boot After a Bad Driver or Module Update</title><link>https://danielcosenza.com/posts/lx-fix-kernel-panic-bad-module/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-fix-kernel-panic-bad-module/</guid><description>Recovering a Linux system that panics or hangs during boot right after a kernel or driver update, using boot menu options that don&apos;t require external rescue media.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>kernel-panic</category><category>boot</category><category>grub</category></item><item><title>Fixing SELinux Denials Blocking a Legitimate Service</title><link>https://danielcosenza.com/posts/lx-fix-selinux-denials/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-fix-selinux-denials/</guid><description>A service failing only with SELinux enforcing needs the actual denial read from audit.log and fixed with a targeted policy module, not disabled protection.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>fix</category><category>selinux</category><category>security</category></item><item><title>Fixing systemd-resolved Conflicts With Manually Configured DNS</title><link>https://danielcosenza.com/posts/lx-fix-systemd-resolved-dns-conflict/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-fix-systemd-resolved-dns-conflict/</guid><description>Editing /etc/resolv.conf directly on a systemd-resolved system silently fails or reverts — the correct way to override DNS settings that persists.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>systemd-resolved</category><category>dns</category><category>networking</category></item><item><title>Fixing &apos;start-limit-hit&apos; Errors in systemd</title><link>https://danielcosenza.com/posts/lx-fix-systemd-start-limit-hit/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-fix-systemd-start-limit-hit/</guid><description>systemctl reports start-limit-hit when systemd&apos;s crash-loop protection trips — clearing the rate limit is a distinct step after fixing the real cause.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>fix</category><category>systemd</category><category>services</category></item><item><title>Fixing Zombie Processes That Won&apos;t Clear from the Process Table</title><link>https://danielcosenza.com/posts/lx-fix-zombie-processes/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-fix-zombie-processes/</guid><description>Why a zombie process is actually harmless dead weight rather than a resource leak, and how to find the parent process that&apos;s actually responsible for clearing it.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>processes</category><category>zombie</category><category>debugging</category></item><item><title>Writing and Enforcing an AppArmor Profile for a Service</title><link>https://danielcosenza.com/posts/lx-howto-apparmor-profile/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-apparmor-profile/</guid><description>Building a working AppArmor profile from scratch with complain mode and the log-based profile generator, rather than guessing at rules upfront.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>apparmor</category><category>mac</category><category>security</category></item><item><title>How to Set Up Security Monitoring on Linux with auditd</title><link>https://danielcosenza.com/posts/lx-howto-auditd-monitoring/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-auditd-monitoring/</guid><description>Configuring the Linux audit daemon to watch specific files, commands, and syscalls, then actually query the resulting logs for something useful.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>howto</category><category>auditd</category><category>security</category><category>monitoring</category></item><item><title>Setting Up Bind Mounts and Overlay Filesystems</title><link>https://danielcosenza.com/posts/lx-howto-bind-mounts-overlayfs/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-bind-mounts-overlayfs/</guid><description>Using bind mounts to expose one directory at multiple paths, and OverlayFS to layer a writable surface on read-only content — the base of containers.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>mount</category><category>overlayfs</category><category>filesystem</category></item><item><title>Tracing System Calls and Kernel Events with bpftrace</title><link>https://danielcosenza.com/posts/lx-howto-bpftrace-tracing/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-bpftrace-tracing/</guid><description>Using bpftrace&apos;s scripting language to observe live kernel behavior — syscalls, function calls, scheduler events — with lower overhead than older tools.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>ebpf</category><category>bpftrace</category><category>tracing</category></item><item><title>Limiting a Service&apos;s CPU and Memory with cgroups v2</title><link>https://danielcosenza.com/posts/lx-howto-cgroups-resource-limits/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-cgroups-resource-limits/</guid><description>Using systemd&apos;s resource-control unit directives to cap CPU, memory, and IO for a service, and confirming the kernel actually enforces them.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>cgroups</category><category>systemd</category><category>resource-limits</category></item><item><title>Building and Loading a Custom Kernel Module with DKMS</title><link>https://danielcosenza.com/posts/lx-howto-dkms-kernel-module/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-dkms-kernel-module/</guid><description>Packaging a kernel module with DKMS so it automatically rebuilds against every new kernel version, instead of breaking silently on the next kernel update.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>dkms</category><category>kernel-modules</category><category>drivers</category></item><item><title>Building an Isolated Network Namespace for Testing</title><link>https://danielcosenza.com/posts/lx-howto-network-namespaces/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-network-namespaces/</guid><description>Creating a separate network stack on the same machine to test firewall rules or networked software without touching the host&apos;s real network.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>namespaces</category><category>networking</category><category>iproute2</category></item><item><title>How to Tune Kernel Parameters on Linux with sysctl</title><link>https://danielcosenza.com/posts/lx-howto-sysctl-tuning/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-sysctl-tuning/</guid><description>A complete walkthrough reading, changing, and persisting kernel runtime parameters — with a few of the most commonly tuned examples explained, not just listed.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>howto</category><category>sysctl</category><category>kernel</category><category>tuning</category></item><item><title>How to Use systemd-nspawn Containers on Linux</title><link>https://danielcosenza.com/posts/lx-howto-systemd-nspawn/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-systemd-nspawn/</guid><description>Creating and running a lightweight systemd-nspawn container — useful for isolated testing environments without a full container runtime&apos;s overhead.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>howto</category><category>systemd-nspawn</category><category>containers</category></item><item><title>io_uring Explained: Linux&apos;s Modern Asynchronous I/O Interface</title><link>https://danielcosenza.com/posts/lx-io-uring/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-io-uring/</guid><description>Understand io_uring queues, submissions, completions, workers, polling, resource registration, cancellation and security before benchmarking.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>io_uring</category><category>kernel</category><category>performance</category></item><item><title>Linux Kernel 2.6.0 Ships, Redefining Scalability and Preemption</title><link>https://danielcosenza.com/posts/lx-news-260-release/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-news-260-release/</guid><description>Linux 2.6.0 arrived on December 17, 2003 with preemption, O(1) scheduling, NPTL support, SELinux, ALSA and a modern device model.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>news</category><category>kernel</category><category>release</category></item><item><title>b4: The Tool That Modernized Kernel Development&apos;s Email Patch Workflow</title><link>https://danielcosenza.com/posts/lx-news-b4-patch-tooling/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-news-b4-patch-tooling/</guid><description>b4 turned lore.kernel.org message IDs into reproducible patch-series workflows while preserving email review, trailers and maintainer control.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>kernel</category><category>git</category><category>workflow</category></item><item><title>How CentOS Became CentOS Stream, and Why Rocky Linux Exists Because of It</title><link>https://danielcosenza.com/posts/lx-news-centos-stream-shift/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-news-centos-stream-shift/</guid><description>The December 2020 CentOS Linux timeline change moved focus to Stream, ended CentOS 8 updates in 2021, and prompted Rocky and AlmaLinux.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>centos</category><category>red-hat</category><category>rocky-linux</category></item><item><title>IBM Completes Its $34 Billion Acquisition of Red Hat</title><link>https://danielcosenza.com/posts/lx-news-ibm-redhat/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-news-ibm-redhat/</guid><description>IBM announced its Red Hat agreement on October 28, 2018 and closed it July 9, 2019 for $190 cash per share and roughly $34 billion equity value.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>news</category><category>red-hat</category><category>ibm</category><category>business</category></item><item><title>The Linux Kernel Replaces Its Code of Conflict With a Code of Conduct</title><link>https://danielcosenza.com/posts/lx-news-kernel-code-of-conduct/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-news-kernel-code-of-conduct/</guid><description>How the kernel community&apos;s often-combative culture led to a September 2018 policy change, and Torvalds&apos; own public acknowledgment his conduct needed to change.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>kernel</category><category>community</category><category>governance</category></item><item><title>PREEMPT_RT Real-Time Patches Merge Into Mainline Linux</title><link>https://danielcosenza.com/posts/lx-news-preempt-rt-merged/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-news-preempt-rt-merged/</guid><description>Announced by Torvalds in September 2024 and landing in kernel 6.12, PREEMPT_RT ended two decades as an out-of-tree patchset needing a custom kernel build.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>news</category><category>kernel</category><category>real-time</category><category>preempt-rt</category></item><item><title>Canonical Extends Ubuntu 14.04 and 16.04 LTS Support to Ten Years</title><link>https://danielcosenza.com/posts/lx-news-ubuntu-decade-support/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-news-ubuntu-decade-support/</guid><description>Canonical&apos;s September 2021 decision to extend Ubuntu 14.04 and 16.04 LTS support to a full decade, and what it signaled about its long-term LTS commitment.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>ubuntu</category><category>canonical</category><category>lts</category></item><item><title>Inside the OOM Killer: How Linux Decides What to Kill When Memory Runs Out</title><link>https://danielcosenza.com/posts/lx-oom-killer/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-oom-killer/</guid><description>Distinguish global, cgroup, cpuset and policy-driven OOM events; interpret victim scoring and build memory controls from forensic evidence.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>oom-killer</category><category>memory</category><category>kernel</category></item><item><title>Understanding the Linux Page Cache and How Writeback Actually Works</title><link>https://danielcosenza.com/posts/lx-page-cache-writeback/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-page-cache-writeback/</guid><description>Understand Linux page-cache reads, buffered writes, dirty throttling and durability boundaries without confusing write completion with stable storage.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>page-cache</category><category>memory</category><category>kernel</category></item><item><title>How udev and the Device Model Actually Discover and Name Hardware</title><link>https://danielcosenza.com/posts/lx-udev-device-model/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-udev-device-model/</guid><description>Trace Linux hardware from kernel device registration through sysfs, uevents, devtmpfs and udev rules to stable, collision-tested user-facing links.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>udev</category><category>devices</category><category>kernel</category></item><item><title>Fixing a Broken GRUB2 Configuration After a Failed Update</title><link>https://danielcosenza.com/posts/lx-fix-grub2-broken-config/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-fix-grub2-broken-config/</guid><description>A kernel update leaves the system unable to boot into any menu entry — how to regenerate a working GRUB2 configuration from a rescue environment.</description><pubDate>Fri, 10 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>fix</category><category>grub</category><category>boot</category></item><item><title>How to Set Up Automatic Security Updates on Linux</title><link>https://danielcosenza.com/posts/lx-howto-automatic-security-updates/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-automatic-security-updates/</guid><description>Configuring unattended-upgrades (Debian/Ubuntu) and dnf-automatic (RHEL/Fedora) to apply security patches automatically, with sane limits on scope.</description><pubDate>Fri, 10 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>howto</category><category>security</category><category>updates</category><category>automation</category></item><item><title>How to Configure Network Bonding on Linux</title><link>https://danielcosenza.com/posts/lx-howto-network-bonding/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-network-bonding/</guid><description>Combining two or more network interfaces into a single bonded interface with NetworkManager — for redundancy, throughput, or both, by mode.</description><pubDate>Fri, 10 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>howto</category><category>networking</category><category>bonding</category></item><item><title>Demystifying the Linux Boot Process: From Firmware to systemd</title><link>https://danielcosenza.com/posts/lx-boot/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-boot/</guid><description>Trace a modern Linux boot across firmware, boot manager, kernel, initramfs, real root, and PID 1 with safe diagnostics for each handoff.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>boot</category><category>grub</category><category>kernel</category><category>linux</category></item><item><title>Control Groups (cgroup v2) Explained: Limiting and Accounting for Resources</title><link>https://danielcosenza.com/posts/lx-cgroups/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-cgroups/</guid><description>Understand cgroup v2 hierarchy, controller delegation, CPU, memory, I/O and PID controls, using safe systemd workflows and kernel evidence.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>cgroups</category><category>containers</category><category>kernel</category><category>linux</category></item><item><title>eBPF Explained: Safe, Programmable Observability in the Linux Kernel</title><link>https://danielcosenza.com/posts/lx-ebpf/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-ebpf/</guid><description>Understand eBPF programs, verifier, maps, hooks, BTF and CO-RE, privileges and operational risks without treating kernel execution as a sandbox.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>ebpf</category><category>observability</category><category>kernel</category><category>linux</category></item><item><title>Fixing &apos;Disk Full&apos; on Linux When df Shows Space Available</title><link>https://danielcosenza.com/posts/lx-fix-disk-full/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-fix-disk-full/</guid><description>df shows free space but writes fail with ENOSPC — three distinct root causes look identical from outside; here&apos;s how to tell them apart.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>fix</category><category>filesystem</category><category>linux</category></item><item><title>Fixing DNS Resolution Failures on Linux</title><link>https://danielcosenza.com/posts/lx-fix-dns-resolution/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-fix-dns-resolution/</guid><description>Ping by IP works but hostnames don&apos;t resolve — a systematic path through resolv.conf, systemd-resolved, and nsswitch.conf finds where it breaks.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>fix</category><category>dns</category><category>networking</category></item><item><title>Fixing a Linux System Stuck at &apos;grub rescue&gt;&apos;</title><link>https://danielcosenza.com/posts/lx-fix-grub-rescue/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-fix-grub-rescue/</guid><description>Your machine boots straight into a minimal grub rescue prompt instead of Linux. Here&apos;s how to get back to a working bootloader without reinstalling the OS.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>fix</category><category>boot</category><category>grub</category><category>linux</category></item><item><title>Diagnosing a Linux Service That Fails Silently from a Permission Denial</title><link>https://danielcosenza.com/posts/lx-fix-service-permission-denied/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-fix-service-permission-denied/</guid><description>A service won&apos;t start, logs are unhelpful, and file ownership looks correct — SELinux or AppArmor&apos;s invisible permission layer is usually why.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>fix</category><category>selinux</category><category>apparmor</category><category>security</category><category>linux</category></item><item><title>Fixing &apos;Too Many Open Files&apos; Errors on Linux</title><link>https://danielcosenza.com/posts/lx-fix-too-many-open-files/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-fix-too-many-open-files/</guid><description>An application errors with EMFILE or ENFILE even though the system isn&apos;t obviously out of resources — find and raise the actual limit.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>fix</category><category>ulimit</category><category>file-descriptors</category></item><item><title>The History of Linux: A Finnish Student&apos;s &apos;Hobby&apos; Operating System</title><link>https://danielcosenza.com/posts/lx-history/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-history/</guid><description>Trace Linux from Torvalds&apos; 1991 announcement and early licensing through distributions, maintainership, Git and today&apos;s release process.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>history</category><category>linux</category></item><item><title>How to Set Up Full-Disk Encryption on Linux with LUKS</title><link>https://danielcosenza.com/posts/lx-howto-luks-encryption/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-luks-encryption/</guid><description>A complete walkthrough encrypting a disk or partition with LUKS, from initial setup through mounting it automatically (with a key file) at boot.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>howto</category><category>luks</category><category>encryption</category><category>security</category></item><item><title>How to Set Up LVM (Logical Volume Management) on Linux</title><link>https://danielcosenza.com/posts/lx-howto-lvm/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-lvm/</guid><description>A complete walkthrough from raw disks to a mounted, resizable logical volume — physical volumes, volume groups, and logical volumes explained as you build them.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>howto</category><category>lvm</category><category>storage</category></item><item><title>How to Monitor System Resources on Linux in Real Time</title><link>https://danielcosenza.com/posts/lx-howto-monitor-resources/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-monitor-resources/</guid><description>A practical toolkit for watching CPU, memory, disk, and network usage live — going beyond top to actually find what&apos;s causing a resource problem.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>howto</category><category>monitoring</category><category>performance</category><category>linux</category></item><item><title>How to Configure a Firewall with nftables</title><link>https://danielcosenza.com/posts/lx-howto-nftables-firewall/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-nftables-firewall/</guid><description>A complete, working nftables ruleset for a typical server — default-deny inbound, stateful connection tracking, and a handful of explicit allowed services.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>howto</category><category>nftables</category><category>firewall</category><category>linux</category></item><item><title>How to Set Up SSH Key-Based Authentication Properly</title><link>https://danielcosenza.com/posts/lx-howto-ssh-keys/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-ssh-keys/</guid><description>A complete walkthrough generating an SSH key pair, deploying it correctly, and disabling password authentication safely — without locking yourself out.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>howto</category><category>ssh</category><category>security</category><category>linux</category></item><item><title>How to Debug a Program on Linux with strace</title><link>https://danielcosenza.com/posts/lx-howto-strace-debugging/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-strace-debugging/</guid><description>Using strace to see exactly which system calls a misbehaving program makes — often the fastest way to diagnose a problem with no useful logs.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>howto</category><category>strace</category><category>debugging</category></item><item><title>How to Replace a Cron Job with a systemd Timer</title><link>https://danielcosenza.com/posts/lx-howto-systemd-timer/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-systemd-timer/</guid><description>A complete, working example converting a nightly backup cron job into a properly supervised systemd timer, with logging and failure visibility cron never gave you.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>howto</category><category>systemd</category><category>automation</category><category>linux</category></item><item><title>Building and Loading Your Own Linux Kernel Module</title><link>https://danielcosenza.com/posts/lx-kernel-modules/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-kernel-modules/</guid><description>Build, inspect, sign, load and remove a minimal out-of-tree Linux module inside a disposable VM with matching kbuild artifacts and safe rollback.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>kernel-modules</category><category>kernel</category><category>development</category><category>linux</category></item><item><title>SELinux vs. AppArmor: Mandatory Access Control on Linux</title><link>https://danielcosenza.com/posts/lx-mac-security/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-mac-security/</guid><description>Compare SELinux label policy and AppArmor profiles through enforcement, logging, safe policy changes, containers and a denial-first audit workflow.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>selinux</category><category>apparmor</category><category>security</category><category>linux</category></item><item><title>Linux Namespaces: The Kernel Primitive Behind Every Container</title><link>https://danielcosenza.com/posts/lx-namespaces/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-namespaces/</guid><description>Understand Linux namespace types, ownership, lifetime and composition, then inspect containers without mistaking an isolated view for security.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>namespaces</category><category>containers</category><category>kernel</category><category>linux</category></item><item><title>Linux Turns 30: The Community Marks Three Decades</title><link>https://danielcosenza.com/posts/lx-news-30th-anniversary/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-news-30th-anniversary/</guid><description>On August 25, 2021 Linux&apos;s community marked 30 years since Torvalds&apos; announcement while distinguishing the post from later source releases.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>news</category><category>anniversary</category><category>linux</category></item><item><title>Linux 5.0 Released — a Version Bump, Not a Milestone</title><link>https://danielcosenza.com/posts/lx-news-50-release/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-news-50-release/</guid><description>Linux 5.0 shipped on March 3, 2019: a normal development release whose major-number change deliberately did not signal a rewrite or ABI break.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>news</category><category>release</category><category>linux</category></item><item><title>The Linux Foundation Forms from a Merger of Two Rival Consortiums</title><link>https://danielcosenza.com/posts/lx-news-foundation-formed/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-news-foundation-formed/</guid><description>On January 22, 2007 OSDL and the Free Standards Group merged as the Linux Foundation, combining development support with standards work.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>news</category><category>linux-foundation</category><category>governance</category></item><item><title>Linus Torvalds Creates Git in 10 Days After a Licensing Dispute</title><link>https://danielcosenza.com/posts/lx-news-git-created/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-news-git-created/</guid><description>After the kernel lost free BitKeeper access in 2005, Torvalds built Git into a usable distributed source manager in roughly ten days.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>news</category><category>git</category><category>tooling</category></item><item><title>Linux Kernel 1.0.0 Ships, Marking It Production-Ready</title><link>https://danielcosenza.com/posts/lx-news-kernel-10/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-news-kernel-10/</guid><description>Linux 1.0 arrived on March 14, 1994 as the first stable-number kernel, targeting 386/486 PCs with TCP/IP and a growing driver/filesystem base.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>news</category><category>kernel</category><category>release</category></item><item><title>Linux 6.1 Merges Initial Rust Support</title><link>https://danielcosenza.com/posts/lx-news-rust-support/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-news-rust-support/</guid><description>Released December 11, 2022, Linux 6.1 became the first kernel version to officially accept Rust as a second language for kernel development, alongside C.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>news</category><category>rust</category><category>kernel</category><category>linux</category></item><item><title>APT, DNF, and Pacman Compared: Package Management Across Linux Distributions</title><link>https://danielcosenza.com/posts/lx-pkg-managers/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-pkg-managers/</guid><description>Compare APT/dpkg, DNF4/DNF5/RPM and Pacman workflows, trust, transactions, upgrades and recovery without mixing incompatible repositories.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>package-management</category><category>apt</category><category>dnf</category><category>linux</category></item><item><title>Reading /proc and /sys: The Kernel&apos;s Window into Userspace</title><link>https://danielcosenza.com/posts/lx-proc-sys/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-proc-sys/</guid><description>Read procfs and sysfs safely across PID, user, mount and network namespaces; inspect volatile kernel state without leaking secrets or changing hardware.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>proc</category><category>sysfs</category><category>kernel</category><category>linux</category></item><item><title>Understanding systemd: Units, Targets, and the Modern Linux Init System</title><link>https://danielcosenza.com/posts/lx-systemd/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-systemd/</guid><description>Understand systemd unit loading, dependency and ordering graphs, service readiness, activation, credentials, sandboxing and forensic debugging.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>systemd</category><category>init</category><category>linux</category></item><item><title>The Linux Virtual File System: One Interface, Many Filesystems</title><link>https://danielcosenza.com/posts/lx-vfs/</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-vfs/</guid><description>Understand Linux VFS path lookup, dentries, inodes, open-file descriptions, mounts, page cache, permissions and safe resolution across filesystems.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>vfs</category><category>filesystem</category><category>kernel</category><category>linux</category></item></channel></rss>