minidlna的video文件夹权限?
我有一个辅助硬盘安装为/ media / Media,我想用一个名为Videos的文件夹位于该驱动器上,我想通过minidlna
分享这个文件夹上的video。 我有minidlna
使用/home/jonathan/Videos
,这是在我的小驱动器上,并希望将video移动到更大的驱动器。
但是,当我编辑我的minidlna.conf
指向/ media / Media / Videos文件夹并执行sudo service minidlna force-reload
重新加载数据库后,我得到一个permssions错误。
有人能指出我需要在此文件夹上设置的正确权限吗?
我尝试了这个post中的示例,但仍然无法使其工作。 我最终在这篇文章中磕磕绊绊: 在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来修复。 缺点是如果未插入驱动器,系统将无法自动启动,因为在继续启动之前,它会烦人地要求重试或忽略。
/media/*
使用udisks自动挂载。 如果它是NTFS或FAT,则只有活动用户才能访问它,因此minidlna用户无法访问它。
愚蠢的是,udisks的权限是硬编码的,有关于此的错误报告: 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
并且给自己一个注释,而不是在/etc/minidlna.conf中添加media_dir=
条目,我更喜欢在/ var / lib / minidlna下创建符号链接,例如:
sudo ln -sf /media/alkisg/mydisk/Photos /var/lib/minidlna/Photos
…因为这样我在浏览DLNA客户端中的媒体文件夹时获得了额外的层次结构。
类型
sudo chown -R minidlna:minidlna / media / Media
为了给媒体中包含的所有文件和文件夹的minidlna所有权
然后重新启动并强制重新扫描服务器
重要
以root身份启动minidlna!
sudo minidlna
将文件添加到媒体驱动器使用后重新扫描库
sudo service minidlna stop sudo minidlna -R sudo service minidlna restart
看它是不是
service minidlna status
我意识到这是一个较旧的问题,但是如果你使用默认设置,用户作为选项,然后sudo chown -cR $ USER:minidlna / media /(your_mount point_here)。 这应该通过重新启动来维护所有权和组,并为运行服务器的默认minidlna组提供对文件的组访问权限。
我找到了另一个解决方案:媒体文件夹的父级也必须可以访问minidlna。 我尝试以root身份运行minidlna,并且在systemctl服务文件中使用ProtectHome =只读,但这些都不起作用。
在我的情况下,我的video是在media_dir = V,/ srv / share / videos / library中
我做过chmod -R a + xr / srv / share / videos / library但仍然收到Permission Denied消息
在我做了chmod o + xr / srv / share / videos之后 – 一切都运行了,用户= minidlna
希望这有助于某人。
我有同样的问题,并尝试使用这篇文章修复它。 但是我不希望root
运行守护进程。
注意 :
- 我也在用户空间连接可移动磁盘(不使用fstab)。
- 我正在运行Ubuntu 16.04.02 LTS
所以我编辑了/etc/default/minidlna
来包含
USER= GROUP=
然后在/etc/minidlna.conf
中包含
user=
我还必须更改权限以允许我的用户
chown : /var/cache/minidlna chown : /run/minidlna
然后重启服务
sudo service minidlna restart
我在尝试创建的NAS上遇到了同样的问题。 我认为/etc/init.d/minidlna
脚本不应该:
if [ -z $GROUP ]; then GROUP=$USER fi
但是做一个
if [ -z $GROUP]; then GROUP=$(id -gn $USER) fi
因为用户的主要组可能与用户不同。 特别是当您希望用户共享时,您希望他们共享的组也是minidlna的主要组。
我试图将MiniDLNA作为HDHomeRun RECORD的替代存储区域运行(在HDHomeRun SETUP中使用NAS配置)。
当我重新启动并且我的DLNA服务器不再工作时,我认为Samba存在冲突。 结果我从来没有设置firewalld
有一个开放的端口8200,我刚关闭它并忘记禁用该服务(可能以为我会在以后正确地做并忘记)。
我正在使用Fedora 27,BTW。
出于某种原因,如果您的端口未打开,MiniDLNA会将媒体目录报告为not accessible
。 示例 –
在关闭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.
关闭firewalld之后:
# systemctl status minidlna 1 0 /X_MS_MediaReceiverRegistrar.xml
我不确定为什么它会报告媒体目录由于端口被阻塞而无法访问,这对我来说似乎是一种奇怪的行为。 但禁用防火墙是我为它重新开始工作所做的一切。
要让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
。 然后我们可能需要不同的权限。