Skip to main content
Close Search
Nitrux — #DisruptiveByDesign — Official WebsiteNitrux — #DisruptiveByDesign — Official Website
search
Menu
  • x-twitter bluesky facebook youtube github instagram telegram mastodon threads email
  • search
  • Menu
Nitrux — #DisruptiveByDesign — Official Website
  • Nitrux Core Concepts 9
    • Distribution Philosophy
    • System Architecture
      • Immutable Architecture
      • Rootless App Model
      • Aesthetic FHS
      • Init System
      • Language Stratification
      • Workspace Environment
    • Workspace Architecture
      • Workspace Compartmentalization
      • Nitrux Workspace Session Manager
  • Getting Started 20
    • System Requirements
      • Hardware Compatibility Validation Layer
      • Minimum Requirements
      • Recommended Requirements
    • Installation Guide
      • Download the ISO
        • ISO for AMD and Intel Hardware
        • ISO for NVIDIA Hardware
      • Validate the ISO
        • ISO Integrity Validation
        • ISO Authenticity Validation
      • Flashing the ISO
        • USB Flash Preflight
        • Rufus (Windows)
        • Ventoy (Windows/Linux)
        • dd (*nix)
      • Installing Nitrux
        • Nitrux Installation Process Information
        • Using Secure Boot with Nitrux
        • Automated Partitioning Options
        • Non-automated Partitioning Options
        • Full-disk Encryption in Nitrux
        • Single-booting Nitrux
        • Dual-booting Nitrux with Windows or other Linux distributions
        • Triple-booting Nitrux, Windows, and other Linux distributions
        • Report Installation Bugs
  • Workspace and UX 10
    • Workspace Applications
      • Default Software Selection
      • Workspace Settings
    • Workspace Defaults
      • greetd + QMLGreet
      • Hyprland
      • Valenz
      • Marina
      • Vicinae
      • QMLogout
      • NudgeOSD
      • Workspace Daemons
        • Default Session Daemons
  • Software Management 4
    • Graphical Software Manager (AppFinder)
    • User Application Delivery
      • NX AppHub and AppBoxes
      • Flatpak
    • Development Environments
      • Distrobox
  • Security and Privacy 6
    • Security Features
      • System Security Features
    • Security Policies
      • Identity and Access Management
      • Kernel and Memory Hardening
      • Network Security and Privacy
      • Session Hardening
      • Bluetooth Security
  • System Performance 4
    • Filesystem Optimizations
      • XFS Features in Nitrux
      • F2FS Features in Nitrux
    • System Optimizations
      • Advanced Memory Management
      • Performance and I/O
  • System Management 5
    • System Administration
      • Nitrux Update Tool System
      • NX Overlayroot
      • Nitrux GRUB Modes
    • System Configuration
      • SB Manager
      • Kernel Boot
  • Troubleshooting 21
    • FAQ
      • Is Nitrux right for me?
      • Is Nitrux eating my RAM?
      • NVIDIA Driver Information
      • Virtualizing Nitrux
      • Support for Other Desktop Environments
      • Flatpak Information
      • Energy Saving Information
      • Virtual Consoles (TTY) Information
      • GRUB Menu Information
      • KDE Wallet Information
      • NetworkManager Information
      • Backups Information
      • General Gaming Information
      • AppImage Information
      • MauiKit UI Framework Information
    • Installation Issues
      • ISO doesn’t boot or System installs, but there's no GUI
      • Can't install due to the MBR partition limit
      • Can't install due to mounted Swap partitions
      • Failure to install due to an issue with rsync error code 11
      • Failure to install GRUB on a computer with multiple storage devices or using the MBR partition table
      • Installation is successful, but user data isn't persistent
  • Resources 2
    • Tutorials
    • Get Involved

NX Overlayroot

2 min read

17 views

NX Overlayroot implements Nitrux’s immutable root filesystem using OverlayFS. It presents a unified view by overlaying a writable tmpfs layer over the read-only root. Changes appear to persist during a session but do not alter the underlying filesystem.

How it Works

OverlayFS combines two layers:

┌─────────────────────────────────┐
│      Upper layer (tmpfs)        │  ← Session writes go here
│         Read/Write              │    Discarded on reboot
├─────────────────────────────────┤
│      Lower layer (root)         │  ← Actual root filesystem
│         Read-only               │    Persistent, immutable
└─────────────────────────────────┘

The kernel merges these layers into a single view at the root.

Data writes land in the upper layer, masking the corresponding paths in the lower layer. On reboot, the kernel discards changes in the upper layer, and the system returns to its original state.

Modifying the Immutable Root

When permanent changes to the root are necessary, use overlayroot-chroot. This tool:

  1. Locates the lower (read-only) directory.
  2. Remounts it read/write.
  3. Bind-mounts /proc, /run, and /sys
  4. Chroots into the lower directory.
  5. Logs the session to /var/log/overlayroot-audit.log
  6. Restores read-only state on exit.

Usage

sudo overlayroot-chroot

Mounting Additional Filesystems

NX Overlayroot only mounts /proc, /run, and /sys by default. The user must mount other filesystems manually depending on the task:

# /dev is required for most utilities (e.g., micro text editor)
mount -t devtmpfs dev /dev

# Mount partitions by label
mount -t auto $(findfs LABEL=NX_VAR_LIB) /var/lib
mount -t auto $(findfs LABEL=NX_HOME) /home

# ... make changes ...

sync

# Unmount before exiting
umount /dev /var/lib /home

# Exit to the overlay
exit

When Changes Take Effect

Changes take effect immediately in the lower directory. However, they won’t appear in the running system (the overlay) until you either:

  • Reboot.
  • Reload the kernel using Kernel Boot (where supported).

Disabling Immutability Temporarily

For debugging purposes, you can boot with immutability disabled:

  1. Press E in the GRUB boot menu.
  2. Find the parameter overlayroot=tmpfs:swap=1,recurse=0
  3. Change it to overlayroot=disabled.
  4. Press F10 to continue booting.
  5. Reboot when finished to restore immutability.

The preferred method for modifying the root is overlayroot-chroot. Booting with immutability disabled is intended for debugging.

User Responsibility

Permanent changes to the root are the user’s responsibility. If manual modifications cause conflicts during an update via NUTS, users must resolve them independently.

Updated on 5 October, 2026
Previous - System AdministrationNitrux Update Tool SystemNext - System AdministrationNitrux GRUB Modes
Close Menu
  • Documentation
  • Bug Tracker
  • Blog
    • Tutorial
    • News
    • Other
    • Blog Archive
      • News and Tutorial Archive
      • Maui Archive
      • ZNX Archive
      • VMetal Archive
      • PNX Archive
  • x-twitter
  • bluesky
  • facebook
  • youtube
  • github
  • instagram
  • telegram
  • mastodon
  • threads
  • email

© 2017-2026 Some Rights Reserved. Made with ♥ by Nitrux Latinoamericana S.C.