Autorisations pour le dossier vidéo pour minidlna?

10

J'ai un disque dur secondaire qui est monté en tant que / media / Media et je voudrais utiliser un dossier appelé Vidéos situé sur ce lecteur avec lequel je voudrais partager les vidéos situées sur ce dossier via minidlna. Je minidlnatravaille avec /home/jonathan/Videosce qui se trouve sur mon petit lecteur et je voudrais plutôt déplacer les vidéos vers les plus grands lecteurs.

Cependant, après avoir modifié mon minidlna.confpour pointer vers le dossier / media / Media / Videos et faire un sudo service minidlna force-reloadpour recharger la base de données, j'obtiens une erreur de permssions.

Quelqu'un peut-il m'indiquer les autorisations correctes que je dois définir sur ce dossier?

jjesse
la source
Pour vous aider, nous avons besoin de l'erreur exacte que vous obtenez. Nous devons également savoir comment vous avez formaté, comment vous avez monté votre lecteur multimédia et où pointe votre minidlna.conf. Sinon, c'est juste deviner ici. La manière de minidlna de réanalyser sa bibliothèque est donnée dans ma réponse - pas besoin force-reload.
Takkat
Quand je vais démarrer mindlna après avoir changé mon minidlna.conf en piont vers le dossier vidéo / media / media / Videos, il me dit que l'autorisation a été refusée. Le lecteur est un disque secondaire et est monté par le système lorsque je me connecte /
allume
Ce que je pensais, c'est que indépendamment des autorisations de votre répertoire vidéo minidlna devrait avoir un accès en lecture car il s'exécute en tant que root. Ce n'est pas vrai pour la base de données minidlna qui est stockée dans la /var/lib/minidlnapropriété du groupe minidlna. Par conséquent, nous devons exécuter la nouvelle analyse en -Rtant qu'utilisateur minidlna, ou nous pouvons placer cette bibliothèque à un autre endroit (voir mindlna.conf -> db_dir=). J'ai le mien dans ma MAISON.
Takkat
Donc minidlna fonctionne tant que j'utilise / home / jjesse / Videos / tant que mon répertoire fonctionne correctement, mais si je le pointe vers / media / media / videos, j'obtiens l'erreur permssions, d'où la question des autorisations dont j'ai besoin sur / media / media / videos
jjesse
Sur mes systèmes ici, nous avons bien sûr besoin d'autorisations de lecture pour minidlna. Ceux-ci peuvent dépendre de l'utilisateur / groupe avec lequel vous exécutez minidlna. C'est généralement le cas, rootmais il peut également être exécuté en tant que minidlnaou en tant qu'utilisateur, en fonction entièrement de votre configuration individuelle.
Takkat

Réponses:

14

J'ai essayé de suivre les exemples de ce fil, mais je n'ai toujours pas réussi à le faire fonctionner. J'ai fini par tomber sur cet article ici: Exécuter minidlna sur Ubuntu et l' ai suivi pas à pas et j'ai maintenant les médias sur mon deuxième lecteur servis via minidnla. Si quelqu'un d'autre se débat, je vous suggère de suivre son processus.

J'ai cité son texte au cas où sa page disparaîtrait jamais.


Il a installé un service appelé minidlna qui est censé permettre le streaming de médias. Cependant, il n'aimait pas les autorisations sur son dossier choisi. Le chemin est / media / jw / drive2 / foo.

jw@FooPC:~$ sudo service minidlna restart
* Restarting DLNA/UPnP-AV media server minidlna
[2014/07/23 21:03:30] minidlna.c:594: error: Media directory "/media/jw/drive2/foo" not accessible [Permission denied]

Il l'a pointé vers un dossier dans son dossier d'accueil et il a bien aimé ça, mais pas le 2ème lecteur qui contient le support .

Il a essayé de définir l'utilisateur comme moi dans le fichier conf et dans le fichier par défaut. Mais finalement, il a découvert qu'il devait définir l'utilisateur comme «root» pour que cela fonctionne.

Il a ouvert le terminal et est entré ...

sudo gedit /etc/default/minidlna

... et édité le fichier ...

# User and group the daemon should run as
USER=”root”
#GROUP=”minidlna”

... puis enregistré et de retour au terminal et entré ...

sudo gedit /etc/minidlna.conf

... et édité le fichier ...

# Specify the user name or uid to run as.
user=root

Il a redémarré le service en utilisant ...

sudo service minidlna restart

... dans le terminal et cette fois il n'y a pas eu d'erreur sur les permissions.


J'espère que cela aide quelqu'un comme cela m'a aidé. Si cela vous aide, veuillez visiter sa page et lui laisser un commentaire comme je l'ai fait pour qu'il sache que sa page aide!

MISE À JOUR:

Cela fonctionne immédiatement, mais si vous mettez la machine hors tension, puis la redémarrez, le deuxième lecteur n'est pas desservi par le serveur minidnla jusqu'à ce que vous exécutiez:

sudo service minidlna restart

Le faire fonctionner à partir du démarrage est un problème de lecteur en mode utilisateur et peut être résolu en ajoutant le lecteur à fstab . L'inconvénient est que le système ne démarrera pas automatiquement si le lecteur n'est pas branché, car il demandera de manière agaçante de réessayer ou d'ignorer avant de continuer à démarrer.

Une alternative à l'ajout du lecteur à fstab consiste à redémarrer le service minidlna au redémarrage de cron:

sudo crontab -e

puis ajoutez la ligne suivante à la fin du fichier:

@reboot sleep 60 && sudo service minidlna restart
Dib
la source
9

/media/*est monté automatiquement avec des udisks. Si c'est NTFS ou FAT, seul l'utilisateur actif y a accès, donc l'utilisateur minidlna ne peut pas y accéder.

Il est stupide que udisks ait les autorisations codées en dur, il y a un rapport de bug à ce sujet: https://bugs.launchpad.net/ubuntu/+source/udisks/+bug/682589

Si l'on monte le disque avec sudo mount /dev/sdb1 /mntou avec /etc/fstab, il peut mettre toutes les permissions qu'il veut pour que minidlna puisse le lire.

Ainsi, pour les ordinateurs personnels, une solution de contournement simple consiste à modifier /etc/default/minidlnaet à spécifier que minidlna s'exécutera en tant que root, ou en tant qu'utilisateur qui monte généralement ces disques.

# User and group the daemon should run as
USER="root"
#GROUP="minidlna"

Si vous avez spécifié un compte d'utilisateur au lieu de root, exécutez également sudo chown -R user:user /var/lib/minidlna

Pour analyser à nouveau la bibliothèque après les modifications, exécutez sudo service minidlna force-reload

Et une note pour moi, plutôt que d'ajouter des media_dir=entrées dans /etc/minidlna.conf, je préfère créer des liens symboliques sous / var / lib / minidlna, par exemple:

sudo ln -sf /media/alkisg/mydisk/Photos /var/lib/minidlna/Photos

... car de cette façon, j'obtiens un niveau de hiérarchie supplémentaire lors de la navigation dans les dossiers multimédia des clients DLNA.

alkisg
la source
Merci, j'ai enfin réussi à faire fonctionner ma partition NTFS avec minidlna. J'ai déjà monté ma partition via fstab, mais j'avais les mauvaises options. Étant donné que la partition NTFS n'est pas utilisée par un système Windows ou similaire, j'ai simplement utilisé les options suivantes pour la monter dans fstab: par défaut, umask = 0000. Fonctionne comme un charme!
Bernd
4

type
sudo chown -R minidlna: minidlna / media / Media

afin de donner à minidlna la propriété de tous les fichiers et dossiers contenus dans Media

puis redémarrez et effectuez une nouvelle analyse forcée du serveur

IMPORTANT
Démarrez minidlna en tant que root!

sudo minidlna

pour réanalyser la bibliothèque après avoir ajouté des fichiers à votre lecteur multimédia

sudo service minidlna stop
sudo minidlna -R
sudo service minidlna restart

pour voir si c'est en place

service minidlna status
Daniel W.
la source
Merci beaucoup, j'ai fait les changements et j'obtiens toujours la même erreur [2013/03/20 12:37:50] minidlna.c: 474: erreur: répertoire multimédia "/ media / Media / Videos /" non accessible! [Autorisation refusée]
jjesse
1
c'est très étrange ... Je vais devoir revoir ma propre configuration parce que j'ai minidlna en cours d'exécution, avec mon lecteur externe comme partition multimédia et je pense que c'était le seul changement que j'ai dû faire
Daniel W.
1
une chose que vous pouvez faire juste pour vérifier que la propriété a bien été modifiée est de taper 'ls -lh / media' et de voir si la propriété (3e et 4e élément de la liste) est définie sur 'minidlna', faites-le également pour '/ media / Media 'et' / media / Media / Videos 'pour voir si les changements ont été appliqués de manière récursive
Daniel W.
Merci pour cela, il semble que le changement ne soit pas récursif? Maintenant, le ls -lh montre minidlna en tant que propriétaire et groupe. mais toujours obtenir une autorisation refusée à ce sujet. Je ne sais pas trop ce qui se passe
jjesse
oh mec, je pense que j'ai raté l'évidence ici ... vous semblez avoir besoin de démarrer minidlna en tant que root. Je viens de recevoir les mêmes erreurs que vous avez faites sur ma configuration après le redémarrage pour la première fois en 2 mois. vous devez taper 'sudo minidlna' qui devrait faire l'affaire (à condition que toutes les bonnes autorisations soient toujours définies sur les dossiers)
Daniel W.
0

Je me rends compte que c'est une question plus ancienne mais si vous fstab le disque dur externe avec les valeurs par défaut, l'utilisateur comme options et puis sudo chown -cR $ USER: minidlna / media / (your_mount point_here). Cela devrait conserver la propriété et le groupe lors des redémarrages et donner au groupe minidlna par défaut que le serveur est exécuté avec un accès de groupe aux fichiers.

dginsd
la source
0

J'ai trouvé une autre solution: le parent du dossier multimédia doit également être accessible à minidlna. J'ai essayé d'exécuter minidlna en tant que root et ProtectHome = en lecture seule dans le fichier de service systemctl mais rien de tout cela n'a fonctionné.

Dans mon cas, mes vidéos étaient dans media_dir = V, / srv / share / videos / library

J'avais fait chmod -R a + xr / srv / share / videos / library mais recevais toujours le message Permission Denied

Après avoir fait chmod o + xr / srv / share / videos - tout a fonctionné, avec user = minidlna

J'espère que cela aide quelqu'un.

simonltwick
la source
0

J'ai eu le même problème et j'ai essayé de le résoudre à l'aide de ce message. Mais je ne voulais rootpas exécuter le démon.

Remarque :

  • Je connecte également un disque amovible dans l'espace utilisateur en tant que (sans utiliser fstab).
  • J'utilise Ubuntu 16.04.02 LTS

J'ai donc édité /etc/default/minidlnapour contenir

USER=<user>
GROUP=<group>

puis /etc/minidlna.confcontenir

user=<user>

J'ai également dû modifier les autorisations pour autoriser mon utilisateur

chown <user>:<group> /var/cache/minidlna
chown <user>:<group> /run/minidlna

Redémarrez ensuite le service

sudo service minidlna restart
smido
la source
0

J'ai rencontré le même problème sur un NAS que j'essaie de créer. Je pense que le /etc/init.d/minidlnascript ne devrait pas:

if [ -z $GROUP ]; then
   GROUP=$USER
fi

Mais fais un

if [ -z $GROUP]; then
   GROUP=$(id -gn $USER)
fi

Parce que le groupe principal de l'utilisateur peut différer de l'utilisateur. Surtout lorsque vous voulez que les utilisateurs partagent, vous voulez qu'un groupe qu'ils partagent soit également le groupe principal de minidlna.

user1566065
la source
0

J'essayais d'exécuter MiniDLNA comme une zone de stockage alternative pour HDHomeRun RECORD (en utilisant la configuration NAS dans HDHomeRun SETUP).

Je pensais que Samba était en conflit lorsque j'ai redémarré et mon serveur DLNA ne fonctionnait plus. Il s'avère que je n'ai jamais défini firewalldd'avoir un port ouvert 8200, je venais de l'éteindre et j'avais oublié de désactiver le service (pensant probablement que je le ferais correctement plus tard et oubliant).

J'utilise Fedora 27, BTW.

Pour une raison quelconque, MiniDLNA signale que le répertoire multimédia est not accessiblesi votre port n'est pas ouvert. Exemple --

Avant de désactiver le pare-feu:

# systemctl status minidlna

systemd[1]: Started MiniDLNA is a DLNA/UPnP-AV server software.
minidlna.c:620: error: Media directory "/home/local/Downloads" not accessible [Permission denied]
minidlna.c:620: debug: Using locale dir '/usr/share/locale' and locale langauge en_US.UTF-8/en_US.UTF-8
minidlna.c:1048: warn: Starting MiniDLNA version 1.2.1.

Après avoir désactivé le pare-feu:

# systemctl status minidlna

<root xmlns="urn:schemas-upnp-org:device-1-0"><specVersion><major>1</major><minor>0</minor></specVersion><dev
minidlnad[4401]: MS_MediaReceiverRegistrar</eventSubURL><SCPDURL>/X_MS_MediaReceiverRegistrar.xml</SCPDURL></service></service
minidlna.c:1302: debug: HTTP connection from 192.168.1.190:65260
minidlnad[4401]: clients.c:332: debug: Client found in cache. [Generic UPnP 1.0/entry 1]
minidlnad[4401]: upnphttp.c:889: debug: HTTP REQUEST: GET /icons/sm.png HTTP/1.1
minidlnad[4401]: Connection: Keep-Alive
minidlnad[4401]: User-Agent: User-Agent: Microsoft-DLNA DLNADOC/1.50
minidlnad[4401]: Host: 192.168.1.186:8200
minidlnad[4401]: [1B blob data]
minidlnad[4401]: upnphttp.c:1391: debug: 
Sending small PNG icon

Je ne sais pas pourquoi cela signalerait le répertoire multimédia comme étant inaccessible en raison d'un port bloqué, cela me semble étrange. Mais la désactivation du pare-feu a été tout ce que j'ai fait pour qu'il recommence à fonctionner.

AveryFreeman
la source
-1

Pour permettre à miniDLNA de réanalyser sa bibliothèque, nous pouvons émettre les commandes suivantes:

sudo service minidlna stop    # stop minidlna
sudo -u minidlna minidlna -R  # rescan the library
sudo service minidlna start   # restart minidlna

Notez qu'avec les paramètres de bibliothèque par défaut, la deuxième ligne doit être exécutée sous l'utilisateur minidlnaafin de permettre à minidlna d'avoir accès à cette bibliothèque plus tard.

Selon vos paramètres, vous pouvez avoir défini un emplacement pour la bibliothèque autre que par défaut /var/lib/minidlna. Ensuite, nous pouvons avoir besoin d'autorisations différentes.

Takkat
la source
Merci pour la réponse, mais cela ne répond pas du tout à ma préoccupation. Je recherche les autorisations pour le dossier / lecteur
jjesse