Unraid OS is not strictly read-only. However, it operates from a USB flash drive that is loaded into RAM at boot time, and the OS itself runs from RAM. This design has several implications:
-
OS Loaded into RAM: The primary Unraid OS runs from RAM after the system boots. This makes the system very resilient to issues that might affect the USB flash drive during operation since the OS in RAM is not affected by changes to the flash drive once the system is running.
-
USB Flash Drive: The USB flash drive is mainly used for storing the configuration files, plugins, and license information. It is read-write, but writes are minimized to prolong the lifespan of the flash drive.
-
File System Structure:
- The root filesystem (
/
) is mostly read-only after boot. - Certain directories like
/boot
(which maps to the USB flash drive) and/mnt
(which maps to your data drives, cache drives, and user shares) are writable.
- The root filesystem (
-
Config Files: Configuration files are stored on the USB flash drive and are writable. Changes you make via the Unraid web interface are saved to these configuration files.
Writable Areas in Unraid
- Shares and Data: Your shares, array data, cache pools, and any user data stored in
/mnt
are fully writable. - Docker and VMs: Docker containers and virtual machines have writable file systems and are stored on the cache pool or array.
- Plugins: Plugins installed through the Unraid web interface are writable and stored on the USB flash drive.
- Logs and Temporary Files: Logs and temporary files are written to RAM and
/var/log
and/tmp
are writable.
Example Writable Paths
/boot
: This is the USB flash drive, which contains configuration files and plugins./mnt
: This directory contains your array drives, cache drives, and user shares, and is fully writable./var/log
: Contains system logs and is writable.
Example Read-Only Paths
/bin
,/sbin
,/lib
,/usr
: These directories contain the core OS binaries and libraries loaded into RAM and are typically read-only.
Making Changes to Unraid OS
To make persistent changes to the OS, you typically:
- Modify Configuration Files: Changes to configuration files are written to the USB flash drive and applied at boot.
- Install Plugins: Plugins can add functionality and make changes to the OS environment.
- Custom Scripts: You can create custom scripts that run at boot to make any necessary changes or configurations.
Summary
Unraid OS is not entirely read-only, but its core system operates from RAM with certain parts read-only to ensure stability and resilience. Data drives, cache pools, configuration files, and user data are fully writable, allowing for flexibility and customization.