File Move Not Instant Despite Shared Mounts on TrueNAS SCALE

Hi all,

I’m running into an issue with my TrueNAS SCALE setup involving SABnzbd and Radarr, both installed from the official TrueNAS app catalog. My goal is to have Radarr and SABnzbd work together such that file moves are instant (i.e., done via rename() on the same filesystem), avoiding the slow copy+delete process.


:wrench: Current Configuration (Not Working as Expected)

I initially configured the apps with the following mount paths:

Mount Path (Container) Host Path (TrueNAS)
/data/incomplete /mnt/Tank/media/downloads/incomplete
/data/complete /mnt/Tank/media/downloads/complete
/data/movies /mnt/Tank/media/movies

These paths are configured identically in both SABnzbd and Radarr.


:gear: Application Settings

In SABnzbd:

  • Temporary Download Folder: /data/incomplete
  • Completed Download Folder: /data/complete

In Radarr:

  • Root Folder: /data/movies
  • Remote Path Mapping:
    • Host: localhost_ipaddress
    • Remote Path: /data/complete
    • Local Path: /data/complete

:x: Problem

Despite sharing the same host paths and mount points, the move from SABnzbd’s completed downloads to Radarr’s movie folder is not instant. It seems Radarr performs a copy-then-delete instead of a fast rename() operation — which adds unnecessary delay, especially with large media files.

:question:My Questions

  1. Is this unified /data mount structure the only reliable way to achieve instant moves in TrueNAS SCALE with isolated app containers?
  2. Why do seemingly identical mount paths (/data/complete vs /data/movies) not allow instant moves, even when host paths are the same?
  3. Would using TrueCharts versions of SABnzbd and Radarr offer better support for shared volumes or allow using a shared PVC?
  4. Is there a more TrueNAS-native way to enforce volume sharing between two apps?

Thanks in advance for your help and insights. Let me know if any more technical details are needed.

For 3. Truecharts stopped supporting truenas when it switched from kubernetes to docker…

I think this depends somewhat on your setup, but it largely depends on how you have the folder structure set up on your pool. Is Tank/media one dataset with downloads and movies as subfolders, or are these all separate datasets? My understanding is that different datasets are treated as separate filesystems, so moving files WITHIN a dataset is near instant, but moving files BETWEEN datasets involves copying the files into the destination dataset.