Guide: How To Use Rclone To Mount Cloud Drives And Play Files


DZMM

Recommended Posts

16 hours ago, axeman said:

 

Just tower/mergerfs. 

 

The only? downside, is that emby also creates the metadata there (I have it configured to save metadata to folders). So all those small files count toward the 400K teamdrive limit.

 

If it gets too much, I can always just create a local metadata folder on the Emby Server - and let it store metadata there. But right now, it's not a huge problem. 

 

 

You can just do as I do. Use exclusion to exclude metadata and subs from being uploaded.

Link to comment
On 4/12/2021 at 1:14 PM, axeman said:

 

Just tower/mergerfs. 

 

The only? downside, is that emby also creates the metadata there (I have it configured to save metadata to folders). So all those small files count toward the 400K teamdrive limit.

 

If it gets too much, I can always just create a local metadata folder on the Emby Server - and let it store metadata there. But right now, it's not a huge problem. 

 

 

How do you mount the tower/mergerfs folder on your non-unraid machine? I use autoFS to get the local unraid drives to mount on my separate machine, but the tower/mergerfs folder just loads in blank. I suspect I need to use some different mounting commands but everything I've tried has failed.

 

Mind describing what you do and sharing your command?

Link to comment
25 minutes ago, privateer said:

How do you mount the tower/mergerfs folder on your non-unraid machine? I use autoFS to get the local unraid drives to mount on my separate machine, but the tower/mergerfs folder just loads in blank. I suspect I need to use some different mounting commands but everything I've tried has failed.

 

Mind describing what you do and sharing your command?

 

My Emby server is on a Windows machine and it access the mergerfs share like any other unraid share. Zero difference.

 

\\tower\mergerfs\Videos etc ... 

Link to comment
26 minutes ago, privateer said:

Ok so you aren't actually mounting anything. Thanks for clarifying.

 

I'll update here if I ever figure out how to mount the mergerfs folder on another linux box. Or if anyone else knows how, let me know!

 

 

I do have it mapped on my windows machine as a drive letter. not sure if that's the same - but again - no issues. 

Link to comment

I have got the problem that sonarr can't import the media because he don't have the rights....
When i use unraid to get them new rights it will be fixed for a couple of minutes, after that time i get the same error again.
Sonarr is the only container with this problem. I use PGID 100 and PUID 99 to run this container.
I have mounted the /mnt/user  as /user in the container

has somebody a solution?

Edited by Stephan296
Link to comment

hello when i followed the guide i got everything working except mount_unionfs folder. there is nothing in the folder. is there a step im missing for mount_unionfs to work???? 

Quote

#!/bin/bash

 

######################

#### Mount Script ####

######################

## Version 0.96.9.2 ##

######################

 

####### EDIT ONLY THESE SETTINGS #######

 

# INSTRUCTIONS

# 1. Change the name of the rclone remote and shares to match your setup

# 2. NOTE: enter RcloneRemoteName WITHOUT ':'

# 3. Optional: include custom command and bind mount settings

# 4. Optional: include extra folders in mergerfs mount

 

# REQUIRED SETTINGS

RcloneRemoteName="PlexUnion" # Name of rclone remote mount WITHOUT ':'. NOTE: Choose your encrypted remote for sensitive data

RcloneMountShare="/mnt/user/mount_rclone" # where your rclone remote will be located without trailing slash  e.g. /mnt/user/mount_rclone

RcloneMountDirCacheTime="720h" # rclone dir cache time

LocalFilesShare="/mnt/user/local" # location of the local files and MountFolders you want to upload without trailing slash to rclone e.g. /mnt/user/local. Enter 'ignore' to disable

RcloneCacheShare="/mnt/user0/mount_rclone" # location of rclone cache files without trailing slash e.g. /mnt/user0/mount_rclone

RcloneCacheMaxSize="400G" # Maximum size of rclone cache

RcloneCacheMaxAge="336h" # Maximum age of cache files

MergerfsMountShare="/mnt/user/mount_mergerfs" # location without trailing slash  e.g. /mnt/user/mount_mergerfs. Enter 'ignore' to disable

DockerStart="Cloudflare NginxProxyManager organizr sabnzbd binhex-nzbhydra2 jackett EmbyServer jellyfin bazarr lidarr deemix tautulli deluge PASTA Plex2 Plex-Media-Server xteve DizqueTV2 overseerr ErsatzTV qbittorrent sonarr binhex-sonarr radarr autoscan amvd amd ama" # list of dockers, separated by space, to start once mergerfs mount verified. Remember to disable AUTOSTART for dockers added in docker settings page

MountFolders=\{"downloads/complete,downloads/intermediate,music,movies,tv"\} # comma separated list of folders to create within the mount

 

# Note: Again - remember to NOT use ':' in your remote name above

 

# OPTIONAL SETTINGS

 

# Add extra paths to mergerfs mount in addition to LocalFilesShare

LocalFilesShare2="ignore" # without trailing slash e.g. /mnt/user/other__remote_mount/or_other_local_folder.  Enter 'ignore' to disable

LocalFilesShare3="ignore"

LocalFilesShare4="ignore"

 

# Add extra commands or filters

Command1="--rc"

Command2=""

Command3=""

Command4=""

Command5=""

Command6=""

Command7=""

Command8=""

 

CreateBindMount="N" # Y/N. Choose whether to bind traffic to a particular network adapter

RCloneMountIP="192.168.1.252" # My unraid IP is 172.30.12.2 so I create another similar IP address

NetworkAdapter="eth0" # choose your network adapter. eth0 recommended

VirtualIPNumber="2" # creates eth0:x e.g. eth0:1.  I create a unique virtual IP addresses for each mount & upload so I can monitor and traffic shape for each of them

 

####### END SETTINGS #######

 

###############################################################################

#####   DO NOT EDIT ANYTHING BELOW UNLESS YOU KNOW WHAT YOU ARE DOING   #######

###############################################################################

 

####### Preparing mount location variables #######

RcloneMountLocation="$RcloneMountShare/$RcloneRemoteName" # Location for rclone mount

LocalFilesLocation="$LocalFilesShare/$RcloneRemoteName" # Location for local files to be merged with rclone mount

MergerFSMountLocation="$MergerfsMountShare/$RcloneRemoteName" # Rclone data folder location

 

####### create directories for rclone mount and mergerfs mounts #######

mkdir -p /mnt/user/appdata/other/rclone/remotes/$RcloneRemoteName # for script files

mkdir -p $RcloneCacheShare/cache/$RcloneRemoteName # for cache files

if [[  $LocalFilesShare == 'ignore' ]]; then

    echo "$(date "+%d.%m.%Y %T") INFO: Not creating local folders as requested."

    LocalFilesLocation="/tmp/$RcloneRemoteName"

    eval mkdir -p $LocalFilesLocation

else

    echo "$(date "+%d.%m.%Y %T") INFO: Creating local folders."

    eval mkdir -p $LocalFilesLocation/"$MountFolders"

fi

mkdir -p $RcloneMountLocation

 

if [[  $MergerfsMountShare == 'ignore' ]]; then

    echo "$(date "+%d.%m.%Y %T") INFO: Not creating MergerFS folders as requested."

else

    echo "$(date "+%d.%m.%Y %T") INFO: Creating MergerFS folders."

    mkdir -p $MergerFSMountLocation

fi


 

#######  Check if script is already running  #######

echo "$(date "+%d.%m.%Y %T") INFO: *** Starting mount of remote ${RcloneRemoteName}"

echo "$(date "+%d.%m.%Y %T") INFO: Checking if this script is already running."

if [[ -f "/mnt/user/appdata/other/rclone/remotes/$RcloneRemoteName/mount_running" ]]; then

    echo "$(date "+%d.%m.%Y %T") INFO: Exiting script as already running."

    exit

else

    echo "$(date "+%d.%m.%Y %T") INFO: Script not running - proceeding."

    touch /mnt/user/appdata/other/rclone/remotes/$RcloneRemoteName/mount_running

fi

 

####### Checking have connectivity #######

 

echo "$(date "+%d.%m.%Y %T") INFO: *** Checking if online"

ping -q -c2 google.com > /dev/null # -q quiet, -c number of pings to perform

if [ $? -eq 0 ]; then # ping returns exit status 0 if successful

    echo "$(date "+%d.%m.%Y %T") PASSED: *** Internet online"

else

    echo "$(date "+%d.%m.%Y %T") FAIL: *** No connectivity.  Will try again on next run"

    rm /mnt/user/appdata/other/rclone/remotes/$RcloneRemoteName/mount_running

    exit

fi

 

#######  Create Rclone Mount  #######

 

# Check If Rclone Mount Already Created

if [[ -f "$RcloneMountLocation/mountcheck" ]]; then

    echo "$(date "+%d.%m.%Y %T") INFO: Success ${RcloneRemoteName} remote is already mounted."

else

    echo "$(date "+%d.%m.%Y %T") INFO: Mount not running. Will now mount ${RcloneRemoteName} remote."

# Creating mountcheck file in case it doesn't already exist

    echo "$(date "+%d.%m.%Y %T") INFO: Recreating mountcheck file for ${RcloneRemoteName} remote."

    touch mountcheck

    rclone copy mountcheck $RcloneRemoteName: -vv --no-traverse

# Check bind option

    if [[  $CreateBindMount == 'Y' ]]; then

        echo "$(date "+%d.%m.%Y %T") INFO: *** Checking if IP address ${RCloneMountIP} already created for remote ${RcloneRemoteName}"

        ping -q -c2 $RCloneMountIP > /dev/null # -q quiet, -c number of pings to perform

        if [ $? -eq 0 ]; then # ping returns exit status 0 if successful

            echo "$(date "+%d.%m.%Y %T") INFO: *** IP address ${RCloneMountIP} already created for remote ${RcloneRemoteName}"

        else

            echo "$(date "+%d.%m.%Y %T") INFO: *** Creating IP address ${RCloneMountIP} for remote ${RcloneRemoteName}"

            ip addr add $RCloneMountIP/24 dev $NetworkAdapter label $NetworkAdapter:$VirtualIPNumber

        fi

        echo "$(date "+%d.%m.%Y %T") INFO: *** Created bind mount ${RCloneMountIP} for remote ${RcloneRemoteName}"

    else

        RCloneMountIP=""

        echo "$(date "+%d.%m.%Y %T") INFO: *** Creating mount for remote ${RcloneRemoteName}"

    fi

# create rclone mount

    rclone mount \

    $Command1 $Command2 $Command3 $Command4 $Command5 $Command6 $Command7 $Command8 \

    --allow-other \

    --dir-cache-time $RcloneMountDirCacheTime \

    --log-level INFO \

    --poll-interval 15s \

    --cache-dir=$RcloneCacheShare/cache/$RcloneRemoteName \

    --vfs-cache-mode full \

    --vfs-cache-max-size $RcloneCacheMaxSize \

    --vfs-cache-max-age $RcloneCacheMaxAge \

    --bind=$RCloneMountIP \

    $RcloneRemoteName: $RcloneMountLocation &

 

# Check if Mount Successful

    echo "$(date "+%d.%m.%Y %T") INFO: sleeping for 5 seconds"

# slight pause to give mount time to finalise

    sleep 5

    echo "$(date "+%d.%m.%Y %T") INFO: continuing..."

    if [[ -f "$RcloneMountLocation/mountcheck" ]]; then

        echo "$(date "+%d.%m.%Y %T") INFO: Successful mount of ${RcloneRemoteName} mount."

    else

        echo "$(date "+%d.%m.%Y %T") CRITICAL: ${RcloneRemoteName} mount failed - please check for problems.  Stopping dockers"

        docker stop $DockerStart

        rm /mnt/user/appdata/other/rclone/remotes/$RcloneRemoteName/mount_running

        exit

    fi

fi

 

####### Start MergerFS Mount #######

 

if [[  $MergerfsMountShare == 'ignore' ]]; then

    echo "$(date "+%d.%m.%Y %T") INFO: Not creating mergerfs mount as requested."

else

    if [[ -f "$MergerFSMountLocation/mountcheck" ]]; then

        echo "$(date "+%d.%m.%Y %T") INFO: Check successful, ${RcloneRemoteName} mergerfs mount in place."

    else

# check if mergerfs already installed

        if [[ -f "/bin/mergerfs" ]]; then

            echo "$(date "+%d.%m.%Y %T") INFO: Mergerfs already installed, proceeding to create mergerfs mount"

        else

# Build mergerfs binary

            echo "$(date "+%d.%m.%Y %T") INFO: Mergerfs not installed - installing now."

            mkdir -p /mnt/user/appdata/other/rclone/mergerfs

            docker run -v /mnt/user/appdata/other/rclone/mergerfs:/build --rm trapexit/mergerfs-static-build

            mv /mnt/user/appdata/other/rclone/mergerfs/mergerfs /bin

# check if mergerfs install successful

            echo "$(date "+%d.%m.%Y %T") INFO: *sleeping for 5 seconds"

            sleep 5

            if [[ -f "/bin/mergerfs" ]]; then

                echo "$(date "+%d.%m.%Y %T") INFO: Mergerfs installed successfully, proceeding to create mergerfs mount."

            else

                echo "$(date "+%d.%m.%Y %T") ERROR: Mergerfs not installed successfully.  Please check for errors.  Exiting."

                rm /mnt/user/appdata/other/rclone/remotes/$RcloneRemoteName/mount_running

                exit

            fi

        fi

# Create mergerfs mount

        echo "$(date "+%d.%m.%Y %T") INFO: Creating ${RcloneRemoteName} mergerfs mount."

# Extra Mergerfs folders

        if [[  $LocalFilesShare2 != 'ignore' ]]; then

            echo "$(date "+%d.%m.%Y %T") INFO: Adding ${LocalFilesShare2} to ${RcloneRemoteName} mergerfs mount."

            LocalFilesShare2=":$LocalFilesShare2"

        else

            LocalFilesShare2=""

        fi

        if [[  $LocalFilesShare3 != 'ignore' ]]; then

            echo "$(date "+%d.%m.%Y %T") INFO: Adding ${LocalFilesShare3} to ${RcloneRemoteName} mergerfs mount."

            LocalFilesShare3=":$LocalFilesShare3"

        else

            LocalFilesShare3=""

        fi

        if [[  $LocalFilesShare4 != 'ignore' ]]; then

            echo "$(date "+%d.%m.%Y %T") INFO: Adding ${LocalFilesShare4} to ${RcloneRemoteName} mergerfs mount."

            LocalFilesShare4=":$LocalFilesShare4"

        else

            LocalFilesShare4=""

        fi

# make sure mergerfs mount point is empty

        mv $MergerFSMountLocation $LocalFilesLocation

        mkdir -p $MergerFSMountLocation

# mergerfs mount command

        mergerfs $LocalFilesLocation:$RcloneMountLocation$LocalFilesShare2$LocalFilesShare3$LocalFilesShare4 $MergerFSMountLocation -o rw,async_read=false,use_ino,allow_other,func.getattr=newest,category.action=all,category.create=ff,cache.files=partial,dropcacheonclose=true

# check if mergerfs mount successful

        echo "$(date "+%d.%m.%Y %T") INFO: Checking if ${RcloneRemoteName} mergerfs mount created."

        if [[ -f "$MergerFSMountLocation/mountcheck" ]]; then

            echo "$(date "+%d.%m.%Y %T") INFO: Check successful, ${RcloneRemoteName} mergerfs mount created."

        else

            echo "$(date "+%d.%m.%Y %T") CRITICAL: ${RcloneRemoteName} mergerfs mount failed.  Stopping dockers."

            docker stop $DockerStart

            rm /mnt/user/appdata/other/rclone/remotes/$RcloneRemoteName/mount_running

            exit

        fi

    fi

fi

 

####### Starting Dockers That Need Mergerfs Mount To Work Properly #######

 

# only start dockers once

if [[ -f "/mnt/user/appdata/other/rclone/remotes/$RcloneRemoteName/dockers_started" ]]; then

    echo "$(date "+%d.%m.%Y %T") INFO: dockers already started."

else

# Check CA Appdata plugin not backing up or restoring

    if [ -f "/tmp/ca.backup2/tempFiles/backupInProgress" ] || [ -f "/tmp/ca.backup2/tempFiles/restoreInProgress" ] ; then

        echo "$(date "+%d.%m.%Y %T") INFO: Appdata Backup plugin running - not starting dockers."

    else

        touch /mnt/user/appdata/other/rclone/remotes/$RcloneRemoteName/dockers_started

        echo "$(date "+%d.%m.%Y %T") INFO: Starting dockers."

        docker start $DockerStart

    fi

fi

 

rm /mnt/user/appdata/other/rclone/remotes/$RcloneRemoteName/mount_running

echo "$(date "+%d.%m.%Y %T") INFO: Script complete"

 

exit

 

Link to comment
10 hours ago, animeking said:

hello when i followed the guide i got everything working except mount_unionfs folder. there is nothing in the folder. is there a step im missing for mount_unionfs to work???? 

 

 

Is there not a folder at /mnt/user/mount_mergerfs?

Link to comment
On 4/15/2021 at 12:19 PM, Stephan296 said:

I have got the problem that sonarr can't import the media because he don't have the rights....
When i use unraid to get them new rights it will be fixed for a couple of minutes, after that time i get the same error again.
Sonarr is the only container with this problem. I use PGID 100 and PUID 99 to run this container.
I have mounted the /mnt/user  as /user in the container

has somebody a solution?

Somebody?

Link to comment

i cannot understand one thing.

I have mount_rclone with all my Movies/TV, should I just map sonarr and radarr directly to that mount or do I have to mount in someowhere else (mount_mergerfs)?

This is part of my mount script (part that I changed)

 

RcloneRemoteName="storage_crypt" # Name of rclone remote mount WITHOUT ':'. NOTE: Choose your encrypted remote for sensitive data
RcloneMountShare="/mnt/user/mount_rclone" # where your rclone remote will be located without trailing slash  e.g. /mnt/user/mount_rclone
RcloneMountDirCacheTime="720h" # rclone dir cache time
LocalFilesShare="/mnt/user/media" # location of the local files and MountFolders you want to upload without trailing slash to rclone e.g. /mnt/user/local. Enter 'ignore' to disable
RcloneCacheShare="/mnt/user0/mount_rclone" # location of rclone cache files without trailing slash e.g. /mnt/user0/mount_rclone
RcloneCacheMaxSize="400G" # Maximum size of rclone cache
RcloneCacheMaxAge="336h" # Maximum age of cache files
MergerfsMountShare="/mnt/user/mount_mergerfs" # location without trailing slash  e.g. /mnt/user/mount_mergerfs. Enter 'ignore' to disable

 

Link to comment
2 hours ago, INTEL said:

I have mount_rclone with all my Movies/TV, should I just map sonarr and radarr directly to that mount or do I have to mount in someowhere else (mount_mergerfs)?

 

You want to map them to the /mnt/user/mount_mergerfs. That is the combination of your local files and rclone cache/mounted folder.

Link to comment
On 4/15/2021 at 6:19 AM, Stephan296 said:

I have got the problem that sonarr can't import the media because he don't have the rights....
When i use unraid to get them new rights it will be fixed for a couple of minutes, after that time i get the same error again.
Sonarr is the only container with this problem. I use PGID 100 and PUID 99 to run this container.
I have mounted the /mnt/user  as /user in the container

has somebody a solution?

 

If you do an "ls -l" in the directory of where the files downloaded, what are the permissions/owner of the files?

Link to comment
50 minutes ago, Roudy said:

 

You want to map them to the /mnt/user/mount_mergerfs. That is the combination of your local files and rclone cache/mounted folder.

Nice, thanks.

And about this part:

LocalFilesShare="/mnt/user/media"

I used to have sonarr and radarr mobve files here /mnt/user/media/TV and /mnt/user/media/Movies

Is this path for that?

Edited by INTEL
Link to comment

To sum it up....

 

I have 2 unraid servers

Server no1: would need to download files with sonarr/radarr/delugeVPN and move it to rclone_mount

Server no2: Only to stream that files from rclone_mount

 

Any idea how to set it up?

Link to comment
6 minutes ago, axeman said:

 

why do this on UnRaid. My windows machine maps to the unraid shares for Emby, Sonarr etc. 

I don't have windows machine there, only unraid with jellyfin. Server 1 is in my main place where I live (this is where I download all the stuff), and server 2 is in my vacation house where I just want to watch TV shows, but I have better download speed If I mount rclone instead of streaming from my place.

 

I presume I would just use mount script, not upload for server 2.

 

Main problem is server 1 where everything is happening. Downloading with deluge, sonarr moving files.

I cannot figure it out. What do I map where? sonarr should map to mergedfs? deluge also?

So jellyfin maps mount_rclone or mount_mergerfs?

Edited by INTEL
Link to comment
2 hours ago, Roudy said:

 

If you do an "ls -l" in the directory of where the files downloaded, what are the permissions/owner of the files?

@Roudydrwxrwxrwx 1 nobody users.

 

Nzbget works great and sonarr can access all the (already downloaded) media but can't import the downloaded files which he has still to do.

Link to comment
3 hours ago, INTEL said:

I used to have sonarr and radarr mobve files here /mnt/user/media/TV and /mnt/user/media/Movies

Is this path for that?

 

That path is for files that you want to upload to rclone. You still point everything to the mergerfs and it handle the rest. Files awating upload will be there until the upload script runs.

Link to comment
4 hours ago, INTEL said:

To sum it up....

 

I have 2 unraid servers

Server no1: would need to download files with sonarr/radarr/delugeVPN and move it to rclone_mount

Server no2: Only to stream that files from rclone_mount

 

Any idea how to set it up?

 

I run a similar setup. Server number 2 wouldn't need the mergerfs since it is not downloading/uploading any content to cloud storage. You would just have to mount the rclone instance as a "Read" and use the same encryption keys. I personally created seperate oauth accounts to avoid API limits. Hope that helps.

Link to comment
3 hours ago, Stephan296 said:

@Roudydrwxrwxrwx 1 nobody users.

 

Nzbget works great and sonarr can access all the (already downloaded) media but can't import the downloaded files which he has still to do.

 

Is there an error in the Sonarr logs at all? Could you post the error or what it says during the import?

Link to comment
47 minutes ago, Roudy said:

 

I run a similar setup. Server number 2 wouldn't need the mergerfs since it is not downloading/uploading any content to cloud storage. You would just have to mount the rclone instance as a "Read" and use the same encryption keys. I personally created seperate oauth accounts to avoid API limits. Hope that helps.

Could you share ur mount script?

Link to comment
2 hours ago, INTEL said:

Could you share ur mount script?

 

My script is for a Windows computer. It's really just an rclone mount without a cache. For another unRAID box, you would just need to modify the mount script and just use the rclone mount section without the use of a cache. I make my mount a read only on the remote box to prevent files from being altered. 

Link to comment
8 hours ago, Roudy said:

 

My script is for a Windows computer. It's really just an rclone mount without a cache. For another unRAID box, you would just need to modify the mount script and just use the rclone mount section without the use of a cache. I make my mount a read only on the remote box to prevent files from being altered. 

I managedbto make things work on main server, radarr adding movies, upload script uploading, but second server doesn't pick up new movies, I can see only data I had uploaded before running mount script. Any idea what could it be?

Also thank's for all ur help

Link to comment
20 hours ago, Roudy said:

 

Is there an error in the Sonarr logs at all? Could you post the error or what it says during the import?

@Roudy

[v3.0.6.1196] System.UnauthorizedAccessException: Access to the path is denied.
  at System.IO.File.Move (System.String sourceFileName, System.String destFileName) [0x00116] in <254335e8c4aa42e3923a8ba0d5ce8650>:0 
  at NzbDrone.Common.Disk.DiskProviderBase.MoveFileInternal (System.String source, System.String destination) [0x00000] in M:\BuildAgent\work\63739567f01dbcc2\src\NzbDrone.Common\Disk\DiskProviderBase.cs:268 
  at NzbDrone.Mono.Disk.DiskProvider.MoveFileInternal (System.String source, System.String destination) [0x000a3] in M:\BuildAgent\work\63739567f01dbcc2\src\NzbDrone.Mono\Disk\DiskProvider.cs:306 
  at NzbDrone.Common.Disk.DiskProviderBase.MoveFile (System.String source, System.String destination, System.Boolean overwrite) [0x000e1] in M:\BuildAgent\work\63739567f01dbcc2\src\NzbDrone.Common\Disk\DiskProviderBase.cs:255 
  at NzbDrone.Common.Disk.DiskTransferService.TryMoveFileVerified (System.String sourcePath, System.String targetPath, System.Int64 originalSize) [0x00047] in M:\BuildAgent\work\63739567f01dbcc2\src\NzbDrone.Common\Disk\DiskTransferService.cs:487 
  at NzbDrone.Common.Disk.DiskTransferService.TransferFile (System.String sourcePath, System.String targetPath, NzbDrone.Common.Disk.TransferMode mode, System.Boolean overwrite) [0x004b9] in M:\BuildAgent\work\63739567f01dbcc2\src\NzbDrone.Common\Disk\DiskTransferService.cs:367 
  at NzbDrone.Core.MediaFiles.EpisodeFileMovingService.TransferFile (NzbDrone.Core.MediaFiles.EpisodeFile episodeFile, NzbDrone.Core.Tv.Series series, System.Collections.Generic.List`1[T] episodes, System.String destinationFilePath, NzbDrone.Common.Disk.TransferMode mode) [0x00129] in M:\BuildAgent\work\63739567f01dbcc2\src\NzbDrone.Core\MediaFiles\EpisodeFileMovingService.cs:116 
  at NzbDrone.Core.MediaFiles.EpisodeFileMovingService.MoveEpisodeFile (NzbDrone.Core.MediaFiles.EpisodeFile episodeFile, NzbDrone.Core.Parser.Model.LocalEpisode localEpisode) [0x00046] in M:\BuildAgent\work\63739567f01dbcc2\src\NzbDrone.Core\MediaFiles\EpisodeFileMovingService.cs:79 
  at NzbDrone.Core.MediaFiles.UpgradeMediaFileService.UpgradeEpisodeFile (NzbDrone.Core.MediaFiles.EpisodeFile episodeFile, NzbDrone.Core.Parser.Model.LocalEpisode localEpisode, System.Boolean copyOnly) [0x001ab] in M:\BuildAgent\work\63739567f01dbcc2\src\NzbDrone.Core\MediaFiles\UpgradeMediaFileService.cs:77 
  at NzbDrone.Core.MediaFiles.EpisodeImport.ImportApprovedEpisodes.Import (System.Collections.Generic.List`1[T] decisions, System.Boolean newDownload, NzbDrone.Core.Download.DownloadClientItem downloadClientItem, NzbDrone.Core.MediaFiles.EpisodeImport.ImportMode importMode) [0x0029b] in M:\BuildAgent\work\63739567f01dbcc2\src\NzbDrone.Core\MediaFiles\EpisodeImport\ImportApprovedEpisodes.cs:109 

 

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.