Sorry if this is the wrong place, it’s a Linux question but it’s come about whilst trying to build my arr-Plex stack.
So, Linux (Debian) user accounts; What is best practice for running applications as their own UID? Why should I do that? and how can I avoid file permission errors.
I see advice such as “create a new system account called radar/sonarr/Plex”. So I do that, and then find all my downloads are owned by qbittorrent user and it doesn’t have permission to move them into my Plex library and Plex can’t view them either.
All seems overcomplicated. Why can’t I just run everything all with username ‘Plex’?
Running everything under a single user is possible, but it also means an issue with a single app could wipe everything. It’s better practice to add each user to a
media
group, and set *arr and qbittorrent to use this group and allow write permissions for users in the same group (e.g. 775 instead of 755). This means all users (plex, qbit, *arr) in the group media can access and modify files owned bymedia
(or use the GID).This is the all-in-one guide and setup for the arr stack, it’s highly advisable to follow it; https://trash-guides.info/
Thanks. I did check Trash guides before posting but it doesn’t cover installation, much less Linux user naming and groups, unless I missed it.
Must admit, I had not checked for other installations other than what I needed it for, which was Unraid. However, it does cover docker - which is what is definitely most recommended for running these apps, as pointed out by other comments here.
Nowadays you run such apps as containers with docker or podman. Did you already look into that?
In my case, selinux and podman (on fedora) take care of the user settings.