Permissões para pasta de vídeo para minidlna?

7

Eu tenho um disco rígido secundário que é montado como / media / Media e gostaria de usar uma pasta chamada Vídeos localizada na unidade em que gostaria de compartilhar os vídeos localizados nessa pasta por meio de minidlna . Eu tenho minidlna trabalhando com /home/jonathan/Videos , que está na minha unidade menor e gostaria de mover os vídeos para as unidades maiores.

No entanto, depois de editar meu minidlna.conf para apontar para a pasta / media / Media / Videos e fazer um sudo service minidlna force-reload para recarregar o banco de dados, recebo um erro de permssions.

Alguém pode me indicar as permissões corretas que preciso definir nesta pasta?

    
por jjesse 10.03.2013 / 00:22

9 respostas

11

Eu tentei seguir os exemplos neste segmento, mas ainda não consegui fazê-lo funcionar. Eu acabei tropeçando neste artigo aqui: Executando o minidlna no Ubuntu e seguido passo a passo e agora tenho a mídia na minha segunda unidade sendo servida através de minidnla. Se alguém mais lutar, sugiro que você siga o processo dele.

Eu citei seu texto para o caso de sua página desaparecer.

Ele instalou um serviço chamado minidlna, que deve permitir o streaming de mídia. No entanto, não gostou das permissões na pasta escolhida. O caminho é / 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]

Ele apontou para uma pasta em sua pasta pessoal e gostou muito, mas não da segunda unidade que segura a mídia .

Ele tentou definir o usuário como eu no arquivo conf e no arquivo padrão. Mas, eventualmente, ele descobriu que precisava definir o usuário como "raiz" para que funcionasse.

Ele abriu o terminal e entrou ...

sudo gedit /etc/default/minidlna

... e editou o arquivo ...

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

... depois guardado e de volta ao terminal e introduzido ...

sudo gedit /etc/minidlna.conf

... e editou o arquivo ...

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

Ele reiniciou o serviço usando ...

sudo service minidlna restart

... no terminal e desta vez não houve erro sobre as permissões.

Espero que ajude alguém, uma vez que me ajudou. Se isso te ajudar, por favor, visite a página dele e deixe um comentário como eu fiz para ele saber que a página dele está ajudando!

ATUALIZAÇÃO:

Isso funciona imediatamente, mas se você desligar a máquina e depois reiniciá-la, a segunda unidade não será atendida pelo servidor minidnla até você executar:

sudo service minidlna restart

Fazer com que ele funcione a partir da inicialização é um problema na unidade do modo de usuário e pode ser corrigido por adicionando a unidade ao fstab . A desvantagem é que o sistema não inicializará automaticamente se a unidade não estiver conectada, uma vez que exigirá que você repita ou ignore antes de continuar a inicialização.

    
por Dib 03.04.2015 / 08:34
9

/media/* é montado automaticamente com os udisks. Se for NTFS ou FAT, somente o usuário ativo terá acesso a ele, então o usuário do minidlna não poderá acessá-lo.

É ridículo que os udisks tenham as permissões codificadas, há um relatório de erros sobre isso: link

Se montarmos o disco com sudo mount /dev/sdb1 /mnt ou com /etc/fstab , ele poderá colocar as permissões que desejar para que o minidlna possa lê-lo.

Portanto, para PCs domésticos, uma solução simples é editar /etc/default/minidlna e especificar que o minidlna será executado como raiz ou como o usuário que normalmente monta esses discos.

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

Se você especificou uma conta de usuário em vez de root, execute também sudo chown -R user:user /var/lib/minidlna

Para verificar novamente a biblioteca após as alterações, execute sudo service minidlna force-reload

E uma observação para mim, em vez de adicionar media_dir= entradas em /etc/minidlna.conf, prefiro criar links simbólicos em / var / lib / minidlna, por exemplo:

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

... porque dessa forma eu obtenho um nível extra de hierarquia ao navegar pelas pastas de mídia em clientes DLNA.

    
por alkisg 21.01.2014 / 21:20
4

tipo
    sudo chown -R minidlna: minidlna / media / mídia

para dar ao minidlna a propriedade de todos os arquivos e pastas contidos no Media

, em seguida, reinicie e force-redigitalize o servidor

IMPORTANTE
Inicie o minidlna como root!

sudo minidlna

para verificar novamente a biblioteca depois de adicionar arquivos ao seu uso de unidade de mídia

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

para ver se está em dia

service minidlna status
    
por Daniel W. 18.03.2013 / 18:58
0

Eu percebo que esta é uma pergunta antiga, mas se você fstab a unidade externa com os padrões, o usuário como opções e, em seguida, sudo chown -cR $ USER: minidlna / media / (your_mount point_aqui). Isso deve manter a propriedade e o grupo por meio de reinicializações, além de fornecer ao grupo minidlna padrão que o servidor é executado com acesso de grupo aos arquivos.

    
por dginsd 01.01.2017 / 02:25
0

Encontrei outra solução: o pai da pasta de mídia também deve estar acessível para o minidlna. Eu tentei executar o minidlna como root e ProtectHome = somente leitura no arquivo de serviço systemctl, mas nada disso funcionou.

No meu caso, meus vídeos estavam em media_dir = V, / srv / share / videos / library

Eu tinha feito chmod -R a + xr / srv / share / videos / library, mas ainda estava recebendo a mensagem Permission Denied

Depois que eu fiz o chmod o + xr / srv / share / videos - tudo funcionou, com user = minidlna

Espero que isso ajude alguém.

    
por simonltwick 05.01.2017 / 16:27
0

Eu tive o mesmo problema e tentei corrigi-lo usando este post. Mas eu não queria que root executasse o daemon.

Nota :

  • Também estou conectando um disco removível no espaço do usuário como (sem usar o fstab).
  • Estou executando o Ubuntu 16.04.02 LTS

Então eu editei /etc/default/minidlna para conter

USER=<user>
GROUP=<group>

então /etc/minidlna.conf para conter

user=<user>

Eu também tive que alterar as permissões para permitir que meu usuário

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

Em seguida, reinicie o serviço

sudo service minidlna restart
    
por smido 13.07.2017 / 08:37
0

Eu encontrei o mesmo problema em um NAS que eu tentei criar. Acho que o script /etc/init.d/minidlna não deve:

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

Mas faça um

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

Porque o grupo principal do usuário pode diferir do usuário. Especialmente quando você quer que os usuários compartilhem, você quer que um grupo que eles compartilhem também seja o grupo principal do minidna.

    
por user1566065 20.07.2016 / 20:03
0

Eu estava tentando executar o MiniDLNA como uma área de armazenamento alternativa para o HDHomeRun RECORD (usando a configuração NAS no HDHomeRun SETUP).

Achei que o Samba estava em conflito quando reinicializei e meu servidor DLNA não estava mais funcionando. Acontece que eu nunca defini firewalld para ter uma porta aberta 8200, eu tinha acabado de desativá-la e esqueci de desativar o serviço (provavelmente pensando que eu faria isso corretamente depois e esquecendo).

Estou usando o Fedora 27, BTW.

Por alguma razão, o MiniDLNA relata o diretório de mídia como sendo not accessible se sua porta não estiver aberta. Exemplo -

Antes de desligar o firewalld:

# 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.

Depois de desativar o firewalld:

# 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

Não sei ao certo por que o diretório de mídia estaria inacessível por causa de uma porta bloqueada, o que parece ser um comportamento estranho para mim. Mas desabilitar o firewall foi tudo que fiz para começar a trabalhar novamente.

    
por AveryFreeman 12.04.2018 / 20:13
-1

Para permitir que o miniDLNA reexamine sua biblioteca, podemos emitir os seguintes comandos:

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

Observe que, com as configurações padrão da biblioteca, a segunda linha precisa ser executada sob o usuário minidlna para permitir que o minidlna tenha acesso a essa biblioteca posteriormente.

Dependendo das suas configurações, você pode ter definido um local para a biblioteca diferente do padrão /var/lib/minidlna . Então podemos precisar de permissões diferentes.

    
por Takkat 10.03.2013 / 09:53