Share media content inside a Syncthing folder with MiniDLNA

Problem Description
My music files are in a folder (synced with another computer using Syncthing) and I would like to stream that content using MiniDLNA. How do I set up permissions and groups?

Steps to Reproduce

  1. On my external encrypted SSD (mounted using Cockpit) I have created a folder to use with Syncthing, and I gave Syncthing ownership and permission to access the parent folder;
    sudo mkdir /mnt/ssd/syncthing
    sudo chmod 755 /mnt/ssd/syncthing
    sudo chown syncthing:syncthing /mnt/ssd/syncthing

  2. In that Syncthing folder, I created a ā€˜musicā€™ folder and synced my music files from another computer;
    /mnt/ssd/syncthing/music

  3. I configured MiniDLNA with this ā€œfolder with media filesā€ (using the freedombox web interface) ;
    /mnt/ssd/syncthing/music

  4. And I added the minidlna user to the syncthing group;
    sudo usermod -a -G syncthing minidlna

  5. then I restarted the freedombox and waited for magic to happen :slight_smile:

Expected Results
MiniDLNA server shows the contents of the /mnt/ssd/syncthing/music folder.

Actual results
MiniDLNA shows no content.

Screenshot
(not applicable)

Information

  • FreedomBox version: 23.5
  • Hardware: Olimex SBC Olimex A20-Olinuxino-MICRO
  • How did you install FreedomBox?: downloaded image from https://freedombox.org
1 Like

Hi Bart, the setup sounds fine for me. Some ideas / question that come to mind:

  • You added the minidlna user to the syncthing group. Maybe accessing a mount on an external HD requires some other group (I am guessing), so comparing the groups of both users and the entry in /proc/mounts for the SSD may help.
  • You wrote that you mounted the SSD using Cockpit, so it happened during runtime. Maybe the mount was not yet available when the MiniDLNA service started? Did you set up the mount point to be auto-mounted during system startup?
  • Following your steps you first created /mnt/ssd/syncthing, then set the permissions, then created a music folder inside. Maybe this music folder does not have the correct permissions (group syncthing in your case)?

As I said, I am trying to come up with ideas. Not sure if any of this really applies to your actual setup - but still I hope it helps.

Cheers,
Axel

Hi,

A couple of things to do may actually help resolve your problem (these helped me).

  1. Could you have a look at your firewall configurations (easier to do in Cockpit). Make sure that minidlna ports are open? (If you make any changes make sure to restart firewalld)
  2. try adding minidlna user to freedombox-share group (sudo usermod -aG freedombox-share minidlna) and assign ownership to syncthing:freedombox-user
  3. Try changing mod to 775 and give the group read/write/execute permisions. minidlna server cant index files it doesnt have full ownership.
  4. If all above in order, try reindexing with sudo minidlnad -R and restart minidlna server with sudo systemctl restart minidlna

Hope it helpsā€¦

Hi! Sorry for the necropost, but Iā€™m having the same problem, and @Ged296123 's solution doesnā€™t work for me.

Specifically, when I do this:

minidlna does not get added to the ā€˜freedombox-shareā€™ group. Here is the terminal session:
zinho@freedombox:~$ id minidlna
uid=112(minidlna) gid=10005(minidlna) groups=10005(minidlna)
zinho@freedombox:~$ sudo usermod -aG freedombox-share minidlna
zinho@freedombox:~$ id minidlna
uid=112(minidlna) gid=10005(minidlna) groups=10005(minidlna)
zinho@freedombox:~$ id zinho
uid=10001(zinho) gid=100(users) groups=10000(freedombox-share),10002(bit-torrent),10003(calibre),10004(git-access),10005(minidlna),10006(vpn),100(users)
zinho@freedombox:/$ grep minidlna /etc/passwd
minidlna:x:112:10005:MiniDLNA server,:/var/lib/minidlna:/usr/sbin/nologin
zinho@freedombox:/$ grep freedombox-share /etc/group
zinho@freedombox:/$ grep minidlna /etc/group
zinho@freedombox:/$ grep zinho /etc/passwd
zinho@freedombox:/$ sudo usermod -aG 10000 minidlna
zinho@freedombox:/$ id minidlna
uid=112(minidlna) gid=10005(minidlna) groups=10005(minidlna)

Iā€™m speculating that itā€™s failing because the freedombox-share group is not listed in /etc/group
In fact, neither is the minidlna group, although we can see from the ID command that it exists and has GID 10005. My user is a member of the minidlna group, and of the freedombox-share group (GID 10000) as well, but is also not listed in /etc/passwd

What is going on here? Are some of the freedombox-related users and groups being stored in the OpenLDAP instance, and somehow tied into the OS such that they show up in commands like ID, but not usermod?

There must be an incantation for adding users to the freedombox-share group, because the web interface allows me to do it for users I create via the ā€œUsers and Groupsā€ page.

Please help!

edit
I found this quote in the release notes for Freedombox 21.4.1:
deluge: Fix daemon user not in freedombox-share group after installation
A similar solution for minidlna would solve this problem for everyone.

Hi.
i very recently did a fresh install of version 23.20 and the method i previously shared did not come necessary. it may have become obseleteā€¦ fyi.

Thanks for the info.

I installed two nights ago with the stable image, so Iā€™m currently on 23.18

Iā€™ll turn on the ā€œfrequent updatesā€ feature and see if that fixes the issue; if not, then Iā€™ll rebuild with the testing image and see if I can get better results.

Confirmed, now that Iā€™ve turned on ā€œfrequent updatesā€ minidlna can index files owned by other users with file GID=freedombox_shares. My Freedombox version after update is 23.20

1 Like