In Unraid, the existence of the /root/ directory is completely independent of your storage array.
This is due to Unraid’s unique “embedded” architecture. 

The Root Filesystem (rootfs) vs. The Array

  • The OS runs in RAM: When Unraid boots, it takes the compressed operating system files (bzimage and bzroot) from your USB flash drive and unpacks them into a RAM disk.
  • Automatic Creation: The directory structure you see when you first log in (including /root//etc//bin/, and /var/) is created in memory during this unpacking phase, long before emhttp even starts.
  • Non-Persistent: Because these folders exist only in RAM, any files you save to /root/ will vanish when you reboot. 

Why emhttp can manage an unstarted array

  • Control vs. Data: emhttp is the management software, not the storage itself. It starts up to provide you with the Web GUI so you can click the button to start the array.
  • The Mount Point Difference:
    • System Folders: /root//etc/, etc., are part of the RAM-based OS.
    • Array Folders: The storage array only appears under /mnt/disk# or /mnt/user/ after the array is successfully started.
  • Pre-Array State: If your array is set to not autostart, you can still SSH into the server or use the terminal because the OS (and the /root/ home directory) is already fully functional in RAM. You simply won’t see your data at /mnt/user/ until you start the array via the GUI or command line. 

Summary of the Sequence

  1. Bootloader: Loads OS into RAM.
  2. OS Unpack: /root/ and other system folders are created in RAM.
  3. go script: Runs to apply custom settings to the RAM-based folders.
  4. emhttp starts: The Web GUI becomes available.
  5. User Action: You (or an autostart setting) trigger the array to start, which then mounts the physical disks to /mnt/

Leave a Reply