Plex 媒体服务器:找不到媒体外置硬盘

gra*_*d01 32 mediaserver hard-drive external-hdd plex

我正在尝试使用 Plex Media Server 将一台较旧的 PC 变成带有 Ubuntu 12.04 的家庭媒体服务器。我有一个较新的 WD 2 TB 外置 USB 硬盘,上面有我的所有媒体。

我一生都无法弄清楚为什么 Plex 无法识别此硬盘驱动器上的文件。它显示外部,Ubuntu 显示文件并允许我播放它们,查看它们等。Plex 显示名称“外部”。

但是当我点击它时,它是 100% 空的,并且没有显示任何要添加的内容。我可以通过文件共享访问外部文件,在我的 Windows 计算机上很好,但希望能够使用 Plex 与我们的 Roku 进行流式传输。

我对 Ubuntu 相当陌生,我在 Windows 上使用了具有相同 HD 的 Plex,它运行良好。我已经阅读了多篇关于此的文章,但似乎没有任何效果。

我该如何解决这个问题?

Sam*_*mWN 37

您必须确保用户plex不仅可以访问驱动器,还可以访问驱动器所在的文件夹。 经过大量修补后,我最终选择了这条路线:

编辑挂载选项(磁盘 -> “更多操作”(“卷”图下的两个齿轮) -> 编辑挂载选项),例如:

nosuid,nodev,nofail
Run Code Online (Sandbox Code Playgroud)

位于 /etc/fstab 文件中存储选项的区域(“符号图标名称”下的文本框)

并将挂载点设置为:

/media/<user>/<HDD Name>
Run Code Online (Sandbox Code Playgroud)

并重新安装您的硬盘,使其出现在指定位置。


接下来,plex通过转到终端并输入将自己添加到用户组:

sudo adduser "$USER" plex
Run Code Online (Sandbox Code Playgroud)

现在,您可以修改相关文件和目录的所有权,以便它们归${USER}:plex. 您可以通过转到终端并输入来授予对驱动器的 plex 读取访问权限:

sudo chgrp plex "/media/${USER}/"
sudo chmod g+rX "/media/${USER}/"

sudo chgrp plex "/media/${USER}"/<HDD Name>/
sudo chmod g+rX "/media/${USER}"/<HDD Name>/
Run Code Online (Sandbox Code Playgroud)

可能还需要确保正确配置ACL权限,因此可能还需要以下内容:

sudo setfacl -m g:plex:rx /media/<user>/
Run Code Online (Sandbox Code Playgroud)

仅供参考:如果文件/目录显示一个+符号作为其权限的一部分(例如drwxr-xr-x+),则意味着该文件/目录的 ACL 控制处于活动状态。


现在 Plex 可以访问驱动器,您需要确保它可以访问相关目录中的所有文件。这可以通过对所有媒体库文件夹重复以下操作来完成:

chmod -R g+rX /media/<user>/<HDD Name>/<Library Folder>
Run Code Online (Sandbox Code Playgroud)

这解决了我添加到 HTPC 的两个额外驱动器的问题。希望能帮助到你。

PS:正如@douggro 提到的,Plex 有一篇关于这个主题的好文章,但他们改变了他们网站的结构,所以我花了一段时间才从他的链接中找到它,所以这里有一个更新的页面链接:Plex Linux 权限指南

  • 你的第一句话就帮我解决了。我的设置是在 `/media/vince` 中自动挂载可移动驱动器,它具有 `750` 权限。我在那个文件夹上做了`chmod a+rx`,Plex 很高兴扫描所有文件。 (3认同)
  • 这是唯一有效的解决方案,现在只有第三个。谢谢 ! (2认同)

dnl*_*rky 21

正如一些人所提到的,问题很可能是由于plex用户没有正确的权限。我遇到了类似的问题,并且能够使用几个简单的步骤修复它。

打开这个配置文件:

sudo nano /etc/default/plexmediaserver
Run Code Online (Sandbox Code Playgroud)

找到这一行:

PLEX_MEDIA_SERVER_USER = plex
Run Code Online (Sandbox Code Playgroud)

替换plex为您的用户名,然后保存文件。重新启动计算机后,Plex 就可以访问外部驱动器上的文件夹。

您可以运行sudo mount -a和/或sudo service plexmediaserver restart代替重新启动。

信用:htpcguides.com

  • 我不会推荐这种方法,因为它可以让您以普通用户的身份访问所有文件 - 如果可能的话,最好避免这种情况。SamWN + janot 的答案用于限制 plex 用户仅访问相关媒体。 (4认同)

jan*_*not 11

我不知道发生了什么,但唯一能帮助我使用 ext4 驱动器的是在“磁盘”应用程序中设置“自动挂载选项”-“关闭”并设置“挂载点”“/mnt/foobar”而不是“ /media/用户名/foobar”。


Jam*_*mes 6

尝试将 Plex 添加到 plugdev 组。

打开终端(按ControlAltT)并输入

sudo gpasswd -a plex plugdev

通过输入以下内容来验证 plex 是否已添加到 plugdev 组:

groups plex

这也应该显示 plex 所属的组。接下来,重新启动计算机并启动 plex 以验证这是否纠正了问题。


use*_*671 6

您需要配置 fstab 以设置适当的权限。

Plex 站点上有一整页关于如何执行此操作,请参阅:https : //support.plex.tv/hc/en-us/articles/200288606-Mounting-NTFS-Drives-on-Linux

简而言之:

  • 查找驱动器的 UUID:

    须藤blkid | grep ntfs

  • 创建一个目录,您将在其中安装驱动器:

    须藤 mkdir /media/ext_NTFS_USB_Drive

  • 使用命令编辑文件 /etc/fstab:

    gksu gedit /etc/fstab

  • 在此文件中添加一行并保存。

    UUID=485CBF485CBF3014 /media/ext_NTFS_USB_Drive ntfs-3g 权限,自动 0 0

    其中 UUID 是您的驱动器,安装点是您创建的文件夹。

  • 现在挂载驱动器:

    须藤挂载 /media/ext_NTFS_USB_Drive

    (您可能会收到错误消息,说驱动器已安装,例如在 Nautilus 中。只需卸载它 - 安全删除驱动器,或单击 Nautilus 中的弹出图标)

现在在 Plex 中,您需要更改您尝试添加到内部某处的媒体文件夹的位置:/media/ext_NTFS_USB_Drive


小智 5

这是你的外部硬盘的文件夹挂载点造成了麻烦。

它没有正确的权限,除了以 root 身份打开 nautilus 之外,无需终端命令即可更改此设置的最简单方法如下:

使用 sudo 打开 nautilus:

sudo nautilus(或任何其他用 root 打开的系统浏览器)

用鼠标箭头将鼠标悬停在 extern hd 上以查看 hd 的完整路径,或单击它然后按 Ctrl+l 以查看地址栏中的完整路径。

示例:/media/nick/extern_hdd1

extern_hdd1 挂载到文件夹 nick,转到 media 更改文件夹 nick 的权限,为此按 ctrl+l 并在地址栏中粘贴 /media/ 或手动浏览到媒体。

右键单击文件夹昵称转到属性并更改以下内容:

所有者:nick(在您自己的情况下是您自己的用户名)文件夹访问:创建和删除文件文件访问:---

组:plugdev 文件夹访问:访问文件文件访问:---

其他文件夹访问:访问文件文件访问:---

就是这样!


dou*_*gro 2

这很可能是 Plex 的权限问题。阅读此页面以获取有关 Plex 权限的信息。还可以考虑在外部创建一个专用于您的媒体的文件夹,然后在您的条目中为其创建一个安装点fstab,以用户身份安装它plex