minidlna视频文件夹的权限?


10

我有一个作为/ media / Media挂载的辅助硬盘驱动器,我想使用位于该驱动器上的名为“视频”的文件夹,我希望通过共享该文件夹中的视频minidlna。我minidlna正在使用/home/jonathan/Videos较小的驱动器上的驱动器,而是想将视频移至较大的驱动器上。

但是,在我编辑minidlna.conf指向/ media / Media / Videos文件夹并执行sudo service minidlna force-reload重新加载数据库后,出现了permssions错误。

有人可以指出我需要在此文件夹上设置的正确权限吗?


为了提供帮助,我们需要您得到确切的错误。我们还需要知道如何格式化,如何安装媒体驱动器以及minidlna.conf指向的位置。否则,这里只是猜测。我的回答中给出了重新扫描其库的minidlna方法-无需这样做force-reload
塔卡特2013年

将minidlna.conf更改为视频文件夹/ media / media / Videos后,我开始启动mindlna时,它告诉我权限被拒绝。该驱动器是辅助磁盘,在我登录/打开计算机时由系统安装,因此不确定您的安装方式是什么意思
jjesse 2013年

我在想的是,不尊重您的Video目录minidlna的权限,因为它作为root运行时应该具有读取权限。对于minidlna数据库(/var/lib/minidlna由group拥有的数据库),情况并非如此minidlna。因此,我们需要以-Ruser 身份运行重新扫描minidlna,否则我们可能会将这个库放到另一个位置(请参阅参考资料mindlna.conf -> db_dir=)。我的家中有我的。
塔卡特2013年

因此,只要我使用/ home / jjesse / Videos /,我的目录就可以正常运行minidlna,但如果将其指向/ media / media / videos,则会出现permssions错误,因此,我需要在/ media上具有哪些权限的问题/ media / videos
jjesse 2013年

当然,在我的系统上,我们需要minidlna的读取权限。这些可能取决于您运行minidlna的用户/组。通常是,root但是也可以以minidlna或任何用户身份运行,这完全取决于您的个人设置。
塔卡特

Answers:


14

我尝试按照该线程中的示例进行操作,但仍然无法正常工作。我最终在这里跌跌撞撞: 在Ubuntu上运行minidlna,然后逐步进行操作,现在我的第二个驱动器上的介质通过minidnla提供。如果还有其他人挣扎,我建议您遵循他的程序。

我引用了他的文字,以防他的页面消失。


他安装了一项名为minidlna的服务,该服务应该允许流媒体播放。但是,它不喜欢所选文件夹的权限。路径是/ 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]

他将其指向他的主文件夹中的一个文件夹,它很喜欢,但是不喜欢存放介质的第二个驱动器

他尝试在conf文件和默认文件中将用户设置为我。但是最终,他发现他必须将用户设置为“ root”才能使其正常运行。

他打开航站楼进入...

sudo gedit /etc/default/minidlna

...并编辑文件...

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

然后保存并返回到终端并输入

sudo gedit /etc/minidlna.conf

...并编辑了文件...

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

他使用...重新启动了服务。

sudo service minidlna restart

...在终端中,这次没有关于权限的错误。


我希望能对我有所帮助。如果对您有帮助,请访问他的页面,并像我一样给他留下评论,以便他知道他的页面正在帮助您!

更新:

这可以立即生效,但是如果您关闭机器电源,然后重新启动机器,那么在运行之前,minidnla服务器将不会为第二个驱动器提供服务:

sudo service minidlna restart

从引导启动它是一个用户模式驱动器问题,可以通过将驱动器添加到fstab来解决。缺点是,如果未插入驱动器,系统将不会自动启动,因为它会烦人地要求重试或忽略,然后再继续启动。

将驱动器添加到fstab的另一种方法是在从cron重新启动时重新启动minidlna服务:

sudo crontab -e

然后在文件末尾添加下一行:

@reboot sleep 60 && sudo service minidlna restart

9

/media/*与udisk自动挂载。如果是NTFS或FAT,则只有活动用户才能访问它,因此minidlna用户无法访问它。

udisk具有硬编码的权限是很愚蠢的,关于它的错误报告:https ://bugs.launchpad.net/ubuntu/+source/udisks/+bug/682589

如果有人使用sudo mount /dev/sdb1 /mnt或使用来安装磁盘/etc/fstab,则他可以放置所需的任何权限,以便minidlna可以读取它。

因此,对于家用PC,一个简单的解决方法是编辑/etc/default/minidlna,然后指定minidlna将以root身份运行,或者以通常挂载这些磁盘的用户身份运行。

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

如果您指定的是用户帐户而不是root用户,请同时运行 sudo chown -R user:user /var/lib/minidlna

要在更改后重新扫描库,请运行 sudo service minidlna force-reload

还有我自己的注释,而不是media_dir=在/etc/minidlna.conf中添加条目,我更喜欢在/ var / lib / minidlna下创建符号链接,例如:

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

...因为这样,在DLNA客户端中浏览媒体文件夹时,我获得了更高的层次结构。


谢谢,我终于将NTFS分区与minidlna一起使用。我已经通过fstab挂载了分区,但是选项错误。由于Windows系统或类似系统未使用NTFS分区,因此我仅使用以下选项将其安装在fstab中:default,umask = 0000。奇迹般有效!
伯恩德

4

键入
sudo chown -R minidlna:minidlna / media / Media

为了使minidlna拥有Media中包含的所有文件和文件夹的所有权

然后重新启动并强制重新扫描服务器

重要信息
以根用户身份启动minidlna!

sudo minidlna

将文件添加到媒体驱动器后重新扫描库

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

看是否起来

service minidlna status

非常感谢,我进行了更改,但仍然收到相同的错误[2013/03/20 12:37:50] minidlna.c:474:错误:无法访问媒体目录“ / media / Media / Videos /”![许可被拒绝]
jjesse 2013年

1
这很奇怪...我将不得不再次查看自己的设置,因为我已经运行了minidlna,并使用外部驱动器作为媒体分区,我认为这是我唯一要做的更改
Daniel W.

1
您可以做的只是验证所有权确实已更改的一件事是键入“ ls -lh / media”,然后查看所有权(列表中的第3和第4项)是否设置为“ minidlna”,也对“ / media”执行此操作/ Media”和“ / media / Media / Videos”以查看更改是否是递归应用的
Daniel W.

谢谢,看来变更不是递归的?现在,ls -lh将minidlna显示为所有者和组。但仍然获得拒绝的权限。不太清楚发生了什么
jjesse 2013年

哦,我想我想念这里的明显内容了……您似乎需要以root用户身份启动minidlna。在2个月内第一次重新启动后,我得到的错误与您在安装程序中遇到的错误相同。您必须键入应该能够解决问题的“ sudo minidlna”(前提是仍在文件夹上设置所有正确的权限)
Daniel W.

0

我意识到这是一个老问题,但是如果您使用默认选项fstab外置驱动器,则将用户作为选项,然后使用sudo chown -cR $ USER:minidlna / media /(your_mount point_here)。这将通过重新引导来维护所有权和组,并为服务器运行的默认minidlna组提供对文件的组访问权限。


0

我找到了另一个解决方案:父母 minidlna也必须可以访问媒体文件夹级。我尝试以root用户身份运行minidlna,并且在systemctl服务文件中运行ProtectHome = readonly,但是这些都不起作用。

就我而言,我的视频位于media_dir = V,/ srv / share / videos / library

我已经完成了chmod -R a + xr / srv / share / videos / library,但是仍然收到Permission Denied消息

在我执行chmod o + xr / srv / share / videos之后-都可以使用user = minidlna

希望这对某人有帮助。


0

我遇到了同样的问题,并尝试使用本文解决此问题。但是我不想root运行守护程序。

注意事项

  • 我也将用户空间中的可移动磁盘连接为(不使用fstab)。
  • 我正在运行Ubuntu 16.04.02 LTS

所以我编辑 /etc/default/minidlna了包含

USER=<user>
GROUP=<group>

然后/etc/minidlna.conf包含

user=<user>

我还必须更改权限以允许我的用户

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

然后重新启动服务

sudo service minidlna restart

0

我在尝试创建的NAS上遇到了相同的问题。我认为该/etc/init.d/minidlna脚本不应:

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

但是做一个

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

因为用户的主要组可能与用户不同。特别是当您希望用户共享时,您希望他们共享的组也成为minidlna的主要组。


0

我试图将MiniDLNA作为HDHomeRun RECORD的备用存储区运行(使用HDHomeRun SETUP中的NAS配置)。

我以为Samba在重新启动时发生冲突,并且DLNA服务器不再工作。原来我从未设定firewalld过开放的端口8200,我只是将其关闭却忘记了禁用该服务(可能是想以后再正确地使用它而忘记了)。

我正在使用Bed的Fedora 27。

由于某种原因,MiniDLNA将媒体目录报告为not accessible端口未打开。示例-

关闭防火墙之前:

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

关闭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

我不确定为什么由于端口被阻止而无法报告媒体目录,这对我来说似乎是奇怪的行为。但是禁用防火墙是我所做的一切,以使其重新开始工作。


-1

为了让miniDLNA重新扫描其库,我们可以发出以下命令:

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

请注意,使用默认库设置时,第二行需要在用户下运行,minidlna以使minidlna以后可以访问该库。

根据您的设置,您可能已为库定义了默认位置以外的其他位置/var/lib/minidlna。然后,我们可能需要不同的权限。


谢谢您的回答,但是它根本无法解决我的问题。我正在寻找文件夹/驱动器的权限
jjesse 2013年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.