this post was submitted on 03 Jul 2023
69 points (97.3% liked)

Selfhosted

40040 readers
701 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS
 

I was told this community might be able to help me....I’ve spent my entire day setting up sonarr/radarr on my Synology DS423+ NAS within docker. I got most of it figured out on my own but I’m stumped on how sonarr/radarr takes the files from my torrent client downloads folder and moves them to my media folder for plex/jellyfin to view.

I’ve followed this guide for how my folder structure is setup: https://wiki.servarr.com/docker-guide

Could someone point me in the direction of what I need to do so that when a file is finished downloading it automatically moves to my media folder?

top 28 comments
sorted by: hot top controversial new old
[–] [email protected] 22 points 1 year ago (3 children)

Hi,

You need to set up the folder paths within the docker side and the application side in order to do this properly.

Luckily there's a set of guides that describes exactly what you need: https://trash-guides.info/Hardlinks/How-to-setup-for/Synology/

Read this guide and the other pages to get a full idea of the setup required.

[–] [email protected] 7 points 1 year ago

TraSH Guides is the best. Can’t recommend it enough

[–] [email protected] 3 points 1 year ago (1 children)

Great, thank you. I will spend some time and go through this.

[–] [email protected] 3 points 1 year ago (1 children)

Good luck, don't be afraid to ask questions. It's a lot to take in the first time you go through it all, especially if you're not familiar with Docker and the concepts of containerisation but once you crack it, it's seamless.

[–] [email protected] 2 points 1 year ago (1 children)

Since I was already set up with docker I didn't want to start from scratch using compose. I went through the guide and set up my folder structure and set my volumes to the exact same variables he did. I've followed some other peoples suggestions too and I have got it to work but now radarr is copying my files instead of hardlinking even though it is set to hardlink in the settings.

[–] [email protected] 1 points 1 year ago (1 children)

Does RADAR's logs say anything around the file copy about why it couldn't hardlink?

[–] [email protected] 1 points 1 year ago

Nope, I'm not seeing anything in the logs referring to the copying/hardlinking

[–] [email protected] 3 points 1 year ago

Agree just use trash guides, they even have a script for synology to auto setup.

[–] [email protected] 6 points 1 year ago* (last edited 1 year ago) (1 children)

You have to give sonarr access to your top level media folder. Then you set sonarr up to hardlink the downloaded files to your media folder.

E.g. if you have home/media/tvshows and home/media/movies, give sonarr access to home/media. Your download client should probably have a folder like home/media/downloads in your sonarr app map the downloads folder to a sonarr folder in the downloaded client settings. Then set all imports to hardlink, instead of copy.

Your Plex/Jellyfin server should point to home/media for your library where the hardlinking occurs.

[–] [email protected] 1 points 1 year ago (3 children)

I half follow. I have given radarr access to the top level folder (/data, not /data/media) so it should see everything. qbittorrent is linked to /data/torrents for my downloads. Where in radarr might I map the folders so it's hard linking instead of copying?

[–] [email protected] 2 points 1 year ago

I ran into these issues with sonarr. I believe my fix was how the volumes were labelled. My understanding is they communicated the directory but if the other sonarr doesn’t know where to look for it, it won’t be able to find it

Torrent client - data/downloads:/var/data/downloads

Sonarr - data: var/data

This was when the torrent client is passing the location to sonarr is says thesimpsons.mp3 is located in data/download/the Simpson.mp3 and sonarr can then locate it

[–] [email protected] 1 points 1 year ago

In settings --> download clients. Underneath qbittorrent you'll see remote path mappings. Make sure qbittorrent's internal path mapping is mapped to radarr's. So if qbittorrent downloads to /data/torrents, the mapping should be path internally in qbittorrent /data/torrents maps to path internally radarr /data/torrents.

Then in Radarr, whenever you do an import or download a new movie, point it to /data/media/ and choose hardlinking on import, typically bottom left in the import gui.

[–] [email protected] 1 points 1 year ago (1 children)

So for all docker apps use just /data and for jellyfin you can use /data/media

In Radarr: add root folder /data/media/movies add download client with radarr category

In qbittorrent: Eddit your radarr category and set download path as /data/torrent/movies

In jellyfin: Add movie library with path /data/media/movies

So when you add a movie in radarr, it will start downloading it in '/data/torrent/moviesand once its finished it will be renamed and hard linked todata/media/movies`

Hard linking is by default, but you can check in Settings - Media Management - Importing (make sure to enable "advanced" in radarr)

[–] [email protected] 1 points 1 year ago (1 children)

So for all docker apps use just /data and for jellyfin you can use /data/media -I am using /data for all my docker apps

In Radarr: add root folder /data/media/movies add download client with radarr category -how do I change the root folder within radarr? I do have a radarr category setup for qbittorrent

In qbittorrent: Eddit your radarr category and set download path as /data/torrent/movies -I have set this up but qbittorrent still saves them in my /data/torrent folder

In jellyfin: Add movie library with path /data/media/movies -I can get jellyfin/plex to work ok

So when you add a movie in radarr, it will start downloading it in '/data/torrent/moviesand once its finished it will be renamed and hard linked todata/media/movies` -qbittorrent is not downloading to /data/torrent/movies even though I set the category to. Radarr is then copying my files to my media folder instead of hardlinking.

Hard linking is by default, but you can check in Settings - Media Management - Importing (make sure to enable “advanced” in radarr) -I do have the setting turned on to hardlink but it's copying

[–] [email protected] 1 points 1 year ago (2 children)

how do I change the root folder within radar?

Settings->Media management->Scroll down to bottom

I have set this up but qbittorrent still saves them in my /data/torrent folder

That is probably your default qbittorrent download path, but thats fine. There are settings for what happens when you open torrent file or magnet link.

And make sure radarr torrent client saves to same category in qbit.

I can get jellyfin/plex to work ok

Be more specific

Radarr is then copying my files to my media folder instead of hardlinking.

Are you sure about that? Data exists in both folders, but doesnt use double size on disk. If you delete one - the other one remains, if you delete both they are gone. Check your disk usage before/after radar "copy"

[–] [email protected] 1 points 1 year ago

Be more specific

Lol

[–] [email protected] 1 points 1 year ago (1 children)

I am able to get jellyfin/plex to work with the correct folders so they see my media when after it's been copied over by radarr.

I am certain radarr is copying and not hardlinking. Going to the properties of the torrents folder and the properties of my media folder is showing that each folder is using up the same amount of space. Unless this is how it's shown when hardlinking is being used? I don't know how to check my disk space in anything but terabytes so it's hard to say how much space is being used that way when a file I download is only 1GB.

[–] [email protected] 1 points 1 year ago (1 children)

No offense, but Im certain it is hardlinking and not copying 😂 That is exactly how hardlinking works. Both files are 1GB and together also 1GB. If you want to stop seeding - delete in torrent folder, if you want to remove it from jellyfin - delete in media folder, if you want to remove it completely - delete both.

And you can remove them with radarr/qbit, no need to browse the folders

[–] [email protected] 1 points 1 year ago (1 children)

No offense taken, this is all new to me so I’m just trying to understand. If this is how the hardlinking works then I’m all set, thanks!

[–] [email protected] 1 points 1 year ago

Enjoy, its awesome software

[–] [email protected] 5 points 1 year ago

Yes, but also [email protected] has a tonnnnn of activity

[–] [email protected] 4 points 1 year ago (2 children)

This should just be part of configuring Sonarr/Radarr settings correctly. Do you have a red message in the settings that says a download client is missing, or have you filled out the download clients settings section with your torrent client info? If yes, have you checked the “auto import from client” box? and, have you set your root library folder in the media management section?

[–] [email protected] 4 points 1 year ago

This. I remember being amazed that it just handled it.

The only catch I remember running into is that Sonarr must be aware of all storage locations. That is, if I didn’t see the path in Sonarr’s system info, the auto copy and rename didn’t work right.

[–] [email protected] 2 points 1 year ago (1 children)

Yes, I have a message in radarr that states "You are using docker; download client qbittorrent places downloads in /downloads but this directory does not appear to exist inside the container. Review your remote path mappings and container volume settings." I'm confused because I mapped /data to /data in my docker settings so it should be able to see the downloads folder, no?

I do also have the auto import from client box checked and I do have my /data/media/movies folder selected under the media management section.

[–] [email protected] 1 points 1 year ago

That's helpful; this sounds like a docker issue or qBit issue then. The default qBit location for torrents is /downloads, but you'd need to make sure to point it towards the container volume mapping you're setting up in docker.

my relevant qBittorrent compose volume mapping is as follows:

    volumes:
      - /volume1/shared/torrents:/data/torrents

Personally, I don't separate my torrent downloads by type; I use incoming & completed folders. Here's how I set up my qBittorrent config:

Original Value New Value
Session\DefaultSavePath=/downloads/ Session\DefaultSavePath=/data/torrents/1_completed/
Session\TempPath=/downloads/incomplete/ Session\TempPath=/data/torrents/2_incoming/
Downloads\SavePath=/downloads/ Downloads\SavePath=/data/torrents/1_completed/
Downloads\TempPath=/downloads/incomplete/ Downloads\TempPath=/data/torrents/2_incoming/
[–] [email protected] 3 points 1 year ago

Sonarr and Radarr need to have the directories be the same as your torrent client and newsreader.

Sonarr/Radarr read the. Directory that the API reports as the save destination and moves it from there

[–] [email protected] 3 points 1 year ago

When you add a request you can select the target directory where you want the files to end up (Root Folder). If you follow the Linuxserver.io setup, you should have created a bind volume called /media for where you want your media to end up for the use of Jellyfin which you can use.