TrueNAS provides a tool to import all data from a disk into a TrueNAS dataset (this currently supports UFS, NTFS, MSDOSFS and EXT2FS). However, if you only want to copy part of the data from a disk instead, follow this guide on how to mount an external disk on a TrueNAS system.

  1. Connect your disk.

  2. Open a Shell (either via the web interface or SSH) and enter the following commands (use sudo if you are not root).

  3. Load the fuse kernel module:

    • TrueNAS 13 or later: kldload fusefs
    • On older versions: kldload fuse
  4. Look for your drive and partition: gpart show

    Drives added thrugh TrueNAS typically start with ada, so in this case you are probably looking for drives starting with da, such as da0. Check for drives that match the expected size, in my case I’m looking for a ~4TB drive.

    Example output:

    =>        34  7814037100  da0  GPT  (3.6T)
              34      262144    1  ms-reserved  (128M)
          262178        2014       - free -  (1.0M)
          264192  7813771264    2  ms-basic-data  (3.6T)
      7814035456        1678       - free -  (839K)
    

    From the output above I can tell that my data is in da0p2 (p2 means partition 2) and the filesystem is NTFS.

  5. Create a mount point: mkdir /mnt/extdrive

  6. Mount disk/partition:

    In my case I use ntfs-3g -o ro /dev/da0p2 /mnt/extdrive because my external drive uses the NTFS filesystem. -o ro makes the drive read-only.

    You may be able to mount other filesystems using the mount command in a similar way.

If everything went right then your should be able to access the drive cd /mnt/extdrive and list its contents ls -lah. You can now copy files or folders into your existing datasets using cp.