jje*_*sse 10 permissions minidlna
我有一个安装为 /media/Media 的辅助硬盘驱动器,我想使用位于该驱动器上的名为 Videos 的文件夹,我想通过minidlna
. 我在较小的驱动器上minidlna
使用/home/jonathan/Videos
它,并希望将视频移到较大的驱动器上。
但是,在我编辑minidlna.conf
指向 /media/Media/Videos 文件夹并sudo service minidlna force-reload
重新加载数据库后,我收到一个权限错误。
有人可以指出我需要在此文件夹上设置的正确权限吗?
小智 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]
Run Code Online (Sandbox Code Playgroud)
他将它指向他的主文件夹中的一个文件夹,它很喜欢,但不是保存媒体的第二个驱动器。
他尝试在 conf 文件和默认文件中将用户设置为我。但最终他发现他必须将用户设置为“root”才能使其工作。
他打开终端,进入……
sudo gedit /etc/default/minidlna
Run Code Online (Sandbox Code Playgroud)
...并编辑了文件...
# User and group the daemon should run as
USER=”root”
#GROUP=”minidlna”
Run Code Online (Sandbox Code Playgroud)
...然后保存并返回终端并输入...
sudo gedit /etc/minidlna.conf
Run Code Online (Sandbox Code Playgroud)
...并编辑了文件...
# Specify the user name or uid to run as.
user=root
Run Code Online (Sandbox Code Playgroud)
他使用...重新启动了服务
sudo service minidlna restart
Run Code Online (Sandbox Code Playgroud)
...在终端中,这次没有关于权限的错误。
我希望这能帮助别人,因为它帮助了我。如果它对您有帮助,请访问他的页面并像我一样给他留言,这样他就知道他的页面有帮助!
这可以立即生效,但是如果您关闭机器电源然后重新启动它,则 minidnla 服务器不会为第二个驱动器提供服务,直到您运行:
sudo service minidlna restart
Run Code Online (Sandbox Code Playgroud)
让它从启动开始工作是一个用户模式驱动器问题,可以通过将驱动器添加到 fstab来修复。缺点是如果未插入驱动器,系统将不会自动启动,因为它会烦人地要求在继续启动之前重试或忽略。
将驱动器添加到 fstab 的另一种方法是在从 cron 重启时重新启动 minidlna 服务:
sudo crontab -e
Run Code Online (Sandbox Code Playgroud)
然后在文件末尾添加下一行:
@reboot sleep 60 && sudo service minidlna restart
Run Code Online (Sandbox Code Playgroud)
alk*_*isg 10
/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"
Run Code Online (Sandbox Code Playgroud)
如果您指定了用户帐户而不是 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
Run Code Online (Sandbox Code Playgroud)
...因为这样我在浏览 DLNA 客户端中的媒体文件夹时会获得额外的层次结构。
键入
sudo chown -R minidlna:minidlna /media/Media
为了让 minidlna 拥有 Media 中包含的所有文件和文件夹的所有权
然后重新启动并强制重新扫描服务器
重要
以 root 身份启动 minidlna!
sudo minidlna
Run Code Online (Sandbox Code Playgroud)
将文件添加到媒体驱动器后重新扫描库使用
sudo service minidlna stop
sudo minidlna -R
sudo service minidlna restart
Run Code Online (Sandbox Code Playgroud)
看看它是否起来
service minidlna status
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
83072 次 |
最近记录: |