Jellyfin Forum
SOLVED: jellyfin does not have permission to access the drive my movies are stored on? - Printable Version

+- Jellyfin Forum (https://forum.jellyfin.org)
+-- Forum: Support (https://forum.jellyfin.org/f-support)
+--- Forum: Troubleshooting (https://forum.jellyfin.org/f-troubleshooting)
+--- Thread: SOLVED: jellyfin does not have permission to access the drive my movies are stored on? (/t-solved-jellyfin-does-not-have-permission-to-access-the-drive-my-movies-are-stored-on)

Pages: 1 2 3 4


RE: jellyfin does not have permission to access the drive my movies are stored on? - finalgirlfall - 2025-04-21

(2025-04-20, 10:23 PM)TheDreadPirate Wrote:
(2025-04-20, 03:10 AM)finalgirlfall Wrote:
(2025-04-17, 01:45 PM)TheDreadPirate Wrote: USUALLY, only the top level directory for the drive has an ACL.  Can you check if the directories within pi1 and 2 also have ACL?


ah, what command would i run to check that? ^^;

Code:
ls -l /media/violet/pi1.0/*
ls -l /media/violet/pi2.0/*
output for pi1.0 / output for pi2.0

i suspect that may be at least part of the problem... <<;


RE: jellyfin does not have permission to access the drive my movies are stored on? - TheDreadPirate - 2025-04-21

Whoops. Should have told you to run those commands without the asterisks.


RE: jellyfin does not have permission to access the drive my movies are stored on? - finalgirlfall - 2025-04-22

(2025-04-21, 04:31 PM)TheDreadPirate Wrote: Whoops.  Should have told you to run those commands without the asterisks.

lol!! pi1.0 output / pi2.0 output


RE: jellyfin does not have permission to access the drive my movies are stored on? - TheDreadPirate - 2025-04-22

Is there an ACL on this directory?

/media/violet

ACL's are denoted by a + at the end of the permissions

Code:
rwxrwxrwx+

Usually the ACL is only on the folder for the hard drive itself.

And can you share the output of the mount paramemters?

Code:
cat /proc/mounts | grep violet



RE: jellyfin does not have permission to access the drive my movies are stored on? - finalgirlfall - 2025-04-23

(2025-04-22, 12:38 PM)TheDreadPirate Wrote: Is there an ACL on this directory?

/media/violet

ACL's are denoted by a + at the end of the permissions

Code:
rwxrwxrwx+

Usually the ACL is only on the folder for the hard drive itself.

And can you share the output of the mount paramemters?

Code:
cat /proc/mounts | grep violet

re: media/violet/, the output of ls -l /media/violet/ is below:
Code:
total 36
drwxrwxrwx 1 jellyfin media 6894 Apr 21 21:20 pi1.0/
drwxrwxr-x 1 plex    media  128 Apr  9 18:18 pi2.0/
drwxr-xr-x 2 root    root  4096 Apr  9 18:31 tv/

re, mount parameters, output of cat /proc/mounts ... is below:
Code:
/dev/sda /media/violet/pi1.0 btrfs rw,nosuid,nodev,noexec,relatime,space_cache=v2,subvolid=5,subvol=/ 0 0
/dev/sdb1 /media/violet/pi2.0 btrfs rw,nosuid,nodev,noexec,relatime,space_cache=v2,subvolid=5,subvol=/ 0 0



RE: jellyfin does not have permission to access the drive my movies are stored on? - finalgirlfall - 2025-04-30

is it acceptable to bump the thread at this point? (regardless, that's what i'm doing...)


RE: jellyfin does not have permission to access the drive my movies are stored on? - finalgirlfall - 2025-05-01

once again bumping this thread...


RE: jellyfin does not have permission to access the drive my movies are stored on? - bitmap - 2025-05-01

Are you able to see if you can touch a file in the target directory as the jellyfin user? When I was using NFS I had to squash all UIDs to make it work, but I'm not really familiar with BTRFS. Command to run a touch would be (requires sudo)...

Code:
su - jellyfin -c touch /media/violet/pi1.0/test
su - jellyfin -c touch /media/violet/pi2.0/test

(I think...)


RE: jellyfin does not have permission to access the drive my movies are stored on? - finalgirlfall - 2025-05-01

(2025-05-01, 04:35 PM)bitmap Wrote: Are you able to see if you can touch a file in the target directory as the jellyfin user? When I was using NFS I had to squash all UIDs to make it work, but I'm not really familiar with BTRFS. Command to run a touch would be (requires sudo)...

Code:
su - jellyfin -c touch /media/violet/pi1.0/test
su - jellyfin -c touch /media/violet/pi2.0/test

(I think...)

the results of that command for /media/violet/pi1.0/:
Code:
[18:03:33] [INF] [4] Main: Jellyfin version: 10.10.7
[18:03:33] [INF] [4] Main: Environment Variables: ["[JELLYFIN_LOG_DIR, /root/.local/share/jellyfin/log]"]
[18:03:33] [INF] [4] Main: Arguments: ["/usr/lib/jellyfin/bin/jellyfin.dll", "-c", "touch", "/media/violet/pi1.0/test"]
[18:03:33] [INF] [4] Main: Operating system: Debian GNU/Linux 11 (bullseye)
[18:03:33] [INF] [4] Main: Architecture: Arm64
[18:03:33] [INF] [4] Main: 64-Bit Process: True
[18:03:33] [INF] [4] Main: User Interactive: True
[18:03:33] [INF] [4] Main: Processor count: 4
[18:03:33] [INF] [4] Main: Program data path: /root/.local/share/jellyfin
[18:03:33] [INF] [4] Main: Log directory path: /root/.local/share/jellyfin/log
[18:03:33] [INF] [4] Main: Config directory path: /root/touch
[18:03:33] [INF] [4] Main: Cache path: /root/.cache/jellyfin
[18:03:33] [INF] [4] Main: Temp directory path: /tmp/jellyfin
[18:03:33] [INF] [4] Main: Web resources path: /usr/lib/jellyfin/bin/jellyfin-web
[18:03:33] [INF] [4] Main: Application directory: /usr/lib/jellyfin/bin/
[18:03:33] [ERR] [4] Main: The server is expected to host the web client, but the provided content directory is either invalid or empty: /usr/lib/jellyfin/bin/jellyfin-web. If you do not want to host the web client with the server, you may set the '--nowebclient' command line flag, or set'hostwebclient=false' in your config settings

and for /media/violet/pi2.0/:
Code:
[18:07:06] [INF] [1] Main: Jellyfin version: 10.10.7
[18:07:06] [INF] [1] Main: Environment Variables: ["[JELLYFIN_LOG_DIR, /root/.local/share/jellyfin/log]"]
[18:07:06] [INF] [1] Main: Arguments: ["/usr/lib/jellyfin/bin/jellyfin.dll", "-c", "touch", "/media/violet/pi2.0/test"]
[18:07:06] [INF] [1] Main: Operating system: Debian GNU/Linux 11 (bullseye)
[18:07:06] [INF] [1] Main: Architecture: Arm64
[18:07:06] [INF] [1] Main: 64-Bit Process: True
[18:07:06] [INF] [1] Main: User Interactive: True
[18:07:06] [INF] [1] Main: Processor count: 4
[18:07:06] [INF] [1] Main: Program data path: /root/.local/share/jellyfin
[18:07:06] [INF] [1] Main: Log directory path: /root/.local/share/jellyfin/log
[18:07:06] [INF] [1] Main: Config directory path: /root/touch
[18:07:06] [INF] [1] Main: Cache path: /root/.cache/jellyfin
[18:07:06] [INF] [1] Main: Temp directory path: /tmp/jellyfin
[18:07:06] [INF] [1] Main: Web resources path: /usr/lib/jellyfin/bin/jellyfin-web
[18:07:06] [INF] [1] Main: Application directory: /usr/lib/jellyfin/bin/
[18:07:06] [ERR] [1] Main: The server is expected to host the web client, but the provided content directory is either invalid or empty: /usr/lib/jellyfin/bin/jellyfin-web. If you do not want to host the web client with the server, you may set the '--nowebclient' command line flag, or set'hostwebclient=false' in your config settings



RE: jellyfin does not have permission to access the drive my movies are stored on? - bitmap - 2025-05-01

Oh well that doesn't look right. Is jellyfin a service user that runs Jellyfin on your machine. You can try
Code:
sudo su - jellyfin
and that will allow you to run commands as the jellyfin user. At that point, run the touch commands from earlier. Testing on my machine, touch didn't work with the -c flag on su.