Install the app
How to install the app on iOS

Follow along with the video below to see how to install our site as a web app on your home screen.

Note: This feature may not be available in some browsers.

Help with docker sabnzbd install/permissions

As an Amazon Associate, we may earn commissions from qualifying purchases. Learn more...

10
0
NAS
DS920+
Operating system
  1. Windows
Mobile operating system
  1. Android
Hi

Hoping that someone can help with my docker sabnzbd install.
Intention is to move from NZBget, as it seems to be no longer actively supported. NZBget has also been running in docker, without issue, alongside Sonarr/Radarr.

Running DSM 7.1.1-42962.

Part of my docker-compose file :
- TZ=Europe/London
volumes:
  • '/volume2/docker/sabnzbd:/config'
  • '/volume4/ScratchDisk/usenet:/downloads'
  • '/volume4/ScratchDisk/usenet:/incomplete-downloads'

I know the folder structure is not ideal, but it's something I prefer at this moment in time.

Creating the container appears to work, can log into sabnzbd, but seems to be unable to create anything on volume4 (NZBget has no issue with this volume) with a permissions issue. Am using the correct PUID & PGID, which is the same one NZBget uses. Proper scratching my head at this point.

Just checked the log in the container and is displaying " PermissionError: [Errno 13] Permission denied: '/volume4' ". There's a docker user on the NAS and this has permissions to read/write to volume4. Is there another user that sabnzbd uses that I'm not aware of?

Any help is much appreciated.

Thanks
 
Sorry, should have mentioned this at the start.

It's Linuxserver/sabnzbd
 
Is there another user that sabnzbd uses that I'm not aware of?
Well if you have used the correct account via PUID and PGID variables, and that account can really r/w to those locations I see no other reason for this not to work. Especially if this is the same account as NZB was using.

Personally also switched to SAB a few weeks ago for the same reason, but the migration was instant, and had no issues at all with permissions.

Can you just for testing, set "Everyone" group r/w permission on those folders on vol4? Just to see if it will work at all. If it does, then there is def a permission issue of some sort for that particular ID on that volume/folder
 
Thanks for replying.

Do you mean set up a group called everyone that has read/write access to all the vol4 folders, and use that PGID in the environment variable? If so, I just tried that and made no difference.

I know it'll just be something simple to fix, it's just pinpointing actual problem.

Thanks again for help so far
 
Thanks for replying.

Do you mean set up a group called everyone that has read/write access to all the vol4 folders, and use that PGID in the environment variable? If so, I just tried that and made no difference.

I know it'll just be something simple to fix, it's just pinpointing actual problem.

Thanks again for help so far
No just use File Station and set the permissions via the Properties menu, to give the built-in "everyone" group r/w on the "/usenet" folder alone, not the whole volume.
 
One other thought if above doesn't work is that iirc Sabnzbd has the option of changing the permissions on the items that are placed into its /downloads/* folders. It presumably does this by issuing a
chmod
on those folders. Is it this stage that's giving the permission error? Or is it failing before that, ie when it tries to write to those dirs?
 
Last edited:
No, I'm not even at the point of downloading.

It's the folders tab, where I'm trying to change from the default /config folder by putting the full path of the volume4 usenet folder.

The docker log shows "PermissionError: [Errno 13] Permission denied: '/volume4' " when I try to change in the folders tab
[automerge]1678272267[/automerge]
No just use File Station and set the permissions via the Properties menu, to give the built-in "everyone" group r/w on the "/usenet" folder alone, not the whole volume.
Gave 'everyone' group r/w permission to the usenet folder, and also made no difference.
 
Last edited by a moderator:
It's the folders tab, where I'm trying to change from the default /config folder by putting the full path of the volume4 usenet folder.

The docker log shows "PermissionError: [Errno 13] Permission denied: '/volume4' " when I try to change in the folders tab
Just to be clear if you're running this from within Docker, the path you should put here needs to be relative to the Docker mapped volume, not the absolute path. The latter wont be available to Sab as its running within the restricted context of Docker...

This might be obvious, but the way you put it above makes this worth pointing out imo.
[automerge]1678273247[/automerge]
So, from memory, if you have something like

volumes:
- /volume4/somedir/someotherdir:/data:rw

in your docker config, the entry in the 'completed downloads' folder tab in sab should be eg, /downloads/completed (and not '/volume4/somedir/someotherdir/downloads/completed').
 
That kind of made sense, so I left the folder settings as is (see screenshot) and started a download off just to see where the files ended up.

The volume is set as /volume4/blah blah within the docker compose.

The completed downloaded finished up in /volume2/docker/sabnzbd/downloads/complete!


1678274393818.webp
 
The folders in the above don't have preceeding slashes, which would make them relative to the base docker volume.
What happens if you make them '/downloads/incomplete' and '/downloads/complete'...?

Also, post the 'volumes:' section from your docker compose / config.
 
Volumes section of compose file :

volumes:
- '/volume2/docker/sabnzbd:/config'
- '/volume4/ScratchDisk/usenet:/downloads'
- '/volume4/ScratchDisk/usenet:/incomplete-downloads'

If I try and add a leading / then I just get the following error when clicking save.
1678283880075.webp


Thanks
 
Last edited:
Not familiar with sabnzbd but if I understand correctly you are now trying to download to /config/Downloads/complete where /config is mapped to /volume2/docker/sabnzbd.

You can probably set your default base folder and go from there.

Remember to distinguish between the folders inside and outside of the container. Linked by the volume mappings.

Edit:
...or you can set the Temporary Download Folder to /incomplete-downloads and the Completed Download Folder to /downloads.
 
Not familiar with sabnzbd but if I understand correctly you are now trying to download to /config/Downloads/complete where /config is mapped to /volume2/docker/sabnzbd.

You can probably set your default base folder and go from there.

Remember to distinguish between the folders inside and outside of the container. Linked by the volume mappings.
Thanks for the reply

No, am trying to download to /volume4/ScratchDisk/... and am pretty sure that is mapped correctly in the docker compose file (mapped to /downloads)

The config file is mapped to /volume2/docker/sabnzbd. The volumes section of the docker compose file is a couple of posts up
 
Thanks for the reply

No, am trying to download to /volume4/ScratchDisk/... and am pretty sure that is mapped correctly in the docker compose file (mapped to /downloads)

The config file is mapped to /volume2/docker/sabnzbd. The volumes section of the docker compose file is a couple of posts up

With your current sabnzbd settings you do! 😉

Just edited my post ^^^ but here it is again:

Edit:
...or you can set the Temporary Download Folder to /incomplete-downloads and the Completed Download Folder to /downloads.
 
Last edited by a moderator:
Your docker volumes look slightly weird to me.

  • Remove the 3rd entry; the 1st entry specifies the Sab config location; the 2nd entry is all that's required to set a base folder from within Docker.
  • Adjust the 2nd entry to read '- /volume4/ScratchDisk/usenet:/downloads:rw'
  • Recreate the container with the new settings
  • This base folder will be '/volume4/ScratchDisk/usenet' folder on your Syno. I assume this folder exists (including the horrible capitalisation) on the Syno and is r/w accessible by the Syno user whose uid/gid you specified above in your docker compose.
  • In the folders tab of Sab, make your Temp Download Folder '/downloads/incomplete'. Make your Completed Download Folder '/downloads/completed'. Don't capitalise any of these.

Report back...
 
Wow, you sir are a star!

Thank you so much for the help (everyone who replied), I can't believe it was so simple to fix, and at the same time unsure how I'm so thick! First time using sab so putting it down to to that.

Thanks again Fortran, much appreciated
[automerge]1678287719[/automerge]
With your current sabnzbd settings you do! 😉

Just edited my post ^^^ but here it is again:

Edit:
...or you can set the Temporary Download Folder to /incomplete-downloads and the Completed Download Folder to /downloads.
It makes complete sense once its working! Thanks again, its much appreciated.
 
Last edited:
i seem to have be having a similar issue, i've had sabnzbd set up on my NAS before, having removed it i'm now trying to set it back up again.

my volumes are

1684233957211.png


however, when trying to point sabnzbd to where the /downloads mount point is all it can see is the contents of /config

eg, in the temp downloads folder settings i am entering "/usenet/incomplete" (this folder physically exists on /volumes1/data/downloads/usenet/incomplete, but i get "Cannot create directory /usenet/incomplete" when trying to set it.

PUID and PGID are set correctly to a user/group that has fille r/w permissions on the folder

1684234095063.png


as this point i have no idea why it's not working.
i've had it set up before with no issues using what i remember to be the exact same config.

Code:
2023-05-16 11:42:42,289::INFO::[filesystem:710] Creating directories: /usenet/incomplete
2023-05-16 11:42:42,291::INFO::[notifier:123] Sending notification: Error - Failed making (/usenet/incomplete) (type=error, job_cat=None)
2023-05-16 11:42:42,290::ERROR::[filesystem:732] Failed making (/usenet/incomplete)
Traceback (most recent call last):
  File "/app/sabnzbd/sabnzbd/filesystem.py", line 726, in create_all_dirs
    os.mkdir(path_part_combined)
PermissionError: [Errno 13] Permission denied: '/usenet'
2023-05-16 11:42:42,292::INFO::[notifier:123] Sending notification: Error - Cannot create directory /usenet/incomplete (type=error, job_cat=None)
2023-05-16 11:42:42,292::ERROR::[filesystem:395] Cannot create directory /usenet/incomplete
 
eg, in the temp downloads folder settings i am entering "/usenet/incomplete" (this folder physically exists on /volumes1/data/downloads/usenet/incomplete, but i get "Cannot create directory /usenet/incomplete" when trying to set it.


as this point i have no idea why it's not working.
i've had it set up before with no issues using what i remember to be the exact same config.

Code:
2023-05-16 11:42:42,289::INFO::[filesystem:710] Creating directories: /usenet/incomplete
2023-05-16 11:42:42,291::INFO::[notifier:123] Sending notification: Error - Failed making (/usenet/incomplete) (type=error, job_cat=None)
2023-05-16 11:42:42,290::ERROR::[filesystem:732] Failed making (/usenet/incomplete)
Traceback (most recent call last):
  File "/app/sabnzbd/sabnzbd/filesystem.py", line 726, in create_all_dirs
    os.mkdir(path_part_combined)
PermissionError: [Errno 13] Permission denied: '/usenet'
2023-05-16 11:42:42,292::INFO::[notifier:123] Sending notification: Error - Cannot create directory /usenet/incomplete (type=error, job_cat=None)
2023-05-16 11:42:42,292::ERROR::[filesystem:395] Cannot create directory /usenet/incomplete
Per above, the error occurs when the .py script tries to create the /usenet/incomplete directory. If these already exist, this could possibly be causing the error.
Try deleting the existing /usenet/* directories and then specify them again via the Sab 'Folders' tab.
 
Per above, the error occurs when the .py script tries to create the /usenet/incomplete directory. If these already exist, this could possibly be causing the error.

yes they do already exist, have existed for quite some time, as other containers refer to them.
is this a recent change as surely it should be clever enough to check if they exist before trying to create them again.

Try deleting the existing /usenet/* directories and then specify them again via the Sab 'Folders' tab.

won't that then create issues with other containers that need them?
 

Create an account or login to comment

You must be a member in order to leave a comment

Create account

Create an account on our community. It's easy!

Log in

Already have an account? Log in here.

Popular tags from this forum

Thread Tags

Tags Tags
docker

Welcome to SynoForum.com!

SynoForum.com is an unofficial Synology forum for NAS owners and enthusiasts.

Registration is free, easy and fast!

Trending content in this forum

Back
Top