Plex Media Server 是一个功能强大且用途广泛的媒体管理平台,可让您整理个人媒体收藏并将其流式传输到任何设备,包括视频、音乐和照片。Plex 提供一系列高级功能,例如自动元数据提取、支持各种媒体格式、直播电视和 DVR 功能以及远程访问。其直观的 Web 界面和各种客户端应用程序可确保在不同设备上获得无缝体验。
要在 Linux Mint 22、21 或 20 上安装 Plex Media Server,您可以使用 Plex 提供的官方 APT 存储库,其中包含最新的稳定版本和开发版本。本指南将引导您使用命令行终端完成安装过程。
在安装 Plex 之前更新 Linux Mint
首先更新您的 Linux Mint 系统,以确保安装过程顺利进行。这可确保所有现有软件包都是最新的:
sudo apt update && sudo apt upgrade
安装Plex所需的软件包
Plex 安装需要一些额外的软件包。通过运行以下命令安装它们:
sudo apt install dirmngr ca-certificates software-properties-common apt-transport-https curl -y
这些软件包将提供处理 Plex 存储库的工具,包括安全连接和 GPG 密钥管理。
导入 Plex APT 存储库
将 Plex 存储库添加到您的 Linux Mint 系统,以便从官方来源安装 Plex。这可确保您使用 APT 包管理器直接从官方存储库安装和更新软件。
首先,打开终端并使用以下命令导入 Plex GPG 密钥:
curl -fsSL https://downloads.plex.tv/plex-keys/PlexSign.key | gpg --dearmor | sudo tee /usr/share/keyrings/plex.gpg > /dev/null
此命令下载 Plex GPG 密钥,用于验证来自存储库的包的真实性。
接下来,将 Plex 存储库添加到您的系统:
echo deb [signed-by=/usr/share/keyrings/plex.gpg] https://downloads.plex.tv/repo/deb public main | sudo tee /etc/apt/sources.list.d/plexmediaserver.list
此命令在 sources.list.d 目录中创建一个新文件,其中包含有关 Plex 存储库的必要信息。
通过 APT 命令完成 Plex Media Server 的安装
在安装 Plex 之前,请更新您的软件包索引以包含新添加的 Plex 存储库:
sudo apt update
现在,您可以使用以下命令在 Linux Mint 上安装 Plex Media Server:
sudo apt install plexmediaserver -y
在安装过程中,您可能会看到一个提示,询问您是否要用 Plex 替换导入的存储库列表。输入 “N” 继续安装,因为您不想替换导入的存储库列表。这是因为正确的签名 GPG 密钥已经到位。
验证 Plex Media Server 安装和服务状态
默认情况下,Plex Media 服务应自动启动。要验证这一点,请使用以下 systemctl 命令检查状态:
systemctl status plexmediaserver
如果服务未激活,请使用以下命令启动 Plex Media Server:
sudo systemctl start plexmediaserver
要确保 Plex Media Server 在系统启动时自动启动,请使用以下命令启用该服务:
sudo systemctl enable plexmediaserver
如果您由于任何原因需要重新启动 Plex Media Server 服务,请使用以下命令:
sudo systemctl restart plexmediaserver
为 Plex 媒体服务器配置 UFW 防火墙
保护您的 Plex 媒体服务器至关重要,尤其是当您计划远程访问它或允许其他人访问它时。UFW(简单防火墙)是保护您的服务器的好方法。
启用UFW防火墙
首先,检查你的系统上是否安装了 UFW。如果没有,请使用以下命令安装它:
sudo apt install ufw -y
接下来,使用以下命令启用 UFW:
sudo ufw enable
添加 Plex 媒体服务器端口规则
将默认的 Plex Media Server 端口 (32400) 添加到 UFW 规则中。您可以根据需要稍后自定义端口。如果您更改了 Plex Media Server 仪表板端口,请删除此规则并添加新规则。
sudo ufw allow 32400
Plex 的其他 UFW 规则
Plex Media Server 使用多个附加端口来提供不同的服务和连接。要允许它们通过 UFW 防火墙,请使用以下命令:
sudo ufw allow 1900/udp
sudo ufw allow 3005/tcp
sudo ufw allow 5353/udp
sudo ufw allow 8324/tcp
sudo ufw allow 32410:32414/udp
以下是这些端口及其用途的简要说明:
- 1900/UDP:用于客户端通过网络发现 Plex Media Server。
- 3005/TCP:Plex Companion 所需,此功能可让您从移动设备控制 Plex 播放。
- 5353/UDP:用于 mDNS(多播域名系统),帮助 Plex 发现本地网络上的设备。
- 8324/TCP:Plex DLNA 服务器所需。
- 32410:32414/udp:用于向客户端进行媒体流传输。
如果您自定义上述任何端口,请调整您的 UFW 规则。
配置 Plex Headless 服务器 SSH
如果您在远程无头服务器或其他 Linux Mint 桌面上安装了 Plex Media Server,而您无法始终在本地访问这些桌面,则需要在本地计算机上设置 SSH 隧道以进行初始设置。这允许外部连接访问 Plex 服务器。
设置 SSH 隧道
将 {server-ip-address} 替换为您服务器的实际 IP 地址,例如 192.168.50.1。
例子:
ssh {server-ip-address} -L 8888:localhost:32400
如果您是 SSH 新手并且尚未安装它,则可以使用以下命令进行安装:
sudo apt install openssh-server -y
sudo systemctl enable ssh --now
通过 SSH 隧道访问 Plex 媒体服务器
现在,您可以通过在 Web 浏览器中打开以下地址来访问 Plex 媒体服务器:
http://localhost:8888/web
如果上述地址不起作用,请使用备用地址:
https://localhost:8888/web/index.html#!/setup
SSH 隧道将把 HTTP 请求重定向到远程服务器上的 http://localhost:32400/web。
远程访问 Plex 媒体服务器
完成初始设置后,您可以使用远程服务器的 IP 地址访问 Plex 媒体服务器:
http://{server-ip-address}:32400
通过 WebUI 配置 Plex 媒体服务器
现在 Plex 已安装在您的系统上,您必须通过 WebUI 配置并完成设置。要访问它,请打开您喜欢的互联网浏览器并导航到:
http://127.0.0.1:32400/web
或者
http://localhost:32400/web
如果这两种方法不起作用,请尝试将结尾更改为:
http://localhost:32400/web//web/index.html#!/setup
现在,您可以使用上面列出的现有社交媒体帐户登录,或者如果您是 Plex 的新用户,可以使用您的电子邮件注册新帐户。登录后,您将开始初始配置设置。
步骤 1:Plex 的工作原理
第一个配置页面简要介绍了 Plex 是什么以及它是如何工作的。单击 “知道了!” 进入下一页。
注意:Firefox 用户可能会看到一条消息,提示他们启用 DRM,具体取决于他们的互联网浏览器。这个选择是必要的;如果没有它,Plex WebUI 可能无法正常工作。
点击 知道了! 继续。
第 2 步:可选 Plex 通行证
接下来,系统会提示您升级到 Plex Pass,这是可选的。Plex Pass 提供 HDR 选项和访问测试版等好处。如果您想跳过此步骤,请点击右上角的“X”。您可以随时稍后进行设置。
步骤3:服务器设置
配置服务器名称,可以是任何您想要的名称。您还可以选择禁用“允许我访问家外的媒体”。默认情况下,访问外部媒体是启用的;如果您不打算这样做,请取消勾选该功能。
配置完成后,点击 下一个 按钮。
步骤4.媒体库
媒体库页面为您提供了预先添加媒体目录的选项。如果您已准备好媒体驱动器或文件夹,请单击“添加库”按钮。
现在选择您想要组织的文件夹的媒体类型,例如电视节目、电影、音乐等。
点击 “下一个” 按钮继续添加文件夹。
点击 “浏览媒体文件夹” 按钮并选择媒体目录。
添加文件夹后,将出现高级选项,您可以在其中根据自己的喜好进一步自定义 Plex。
完成后,点击 “添加图书馆” 继续初始配置设置安装。
步骤 5. 收尾
接下来,点击 “下一个” 按钮完成初始设置,无论是否添加媒体库。
下一个屏幕会通知您一切就绪。单击“完成”按钮进入 Plex 仪表板。
现在,您将到达您的 Plex 仪表板。
配置媒体文件和文件夹权限
在初始设置期间,您可能注意到您的媒体没有出现。您可能在添加不会被拾取的内容时遇到问题,因为 Plex 拒绝在您现有的内部和外部辅助硬盘上找到内容。这部分是由于 Plex 创建了一个名为 plexuser 的专用用户帐户,该帐户需要对您的媒体目录具有读取和执行权限。
Linux Mint 权限可以使用 chown 或 setfacl 设置;两者都有效。以下是如何应用这些命令的一些示例。
Setfacl 示例
要使用 setfacl 设置权限,请执行以下命令:
sudo setfacl -R -m u:plex:rx /media/yourfolder/
sudo setfacl -R -m u:plex:rx /media/yourfolder/tv
sudo setfacl -R -m u:plex:rx /media/yourfolder/movies
Chown 示例
要使用 chown 设置权限,请执行以下命令:
sudo chown -R plex:plex /media/yourfolder/
或者,如果存在您不想让 Plex 访问的其他文件夹,请为硬盘中的单个文件设置权限:
sudo chown -R plex:plex /media/yourfolder/tv
sudo chown -R plex:plex /media/yourfolder/movies
安装 ACL 包(如有必要)
如果上述命令不起作用,您可能需要重新安装 ACL 包(如果您的系统缺少该包):
sudo apt install acl -y
配置Nginx反向代理
设置反向代理可让您从远程计算机或网络访问 Plex Media Server。在此示例中,我们将设置 Nginx 代理服务器。
安装 Nginx
首先,使用以下命令安装 Nginx:
sudo apt install nginx -y
默认情况下,Nginx 应该已启用。如果未激活,请使用以下命令:
sudo systemctl enable nginx --now
现在检查确保 Nginx 已激活并且没有错误:
systemctl status nginx
创建 Plex 服务器块
创建一个新的服务器块,如下所示:
sudo nano /etc/nginx/conf.d/plex.conf
您将需要一个活动域名并需要创建一个子域。完成后,将以下内容添加到服务器块文件中:
server {
listen 80;
server_name plex.example.com;
location / {
proxy_pass http://127.0.0.1:32400;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#upgrade to WebSocket protocol when requested
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
}
}
保存文件(CTRL+O),然后退出(CTRL+X)。
测试 Nginx 配置
执行试运行以确保 Nginx 配置或服务器块中没有错误:
sudo nginx -t
如果一切正常,示例输出应为:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
重新加载 Nginx 以使更改生效:
sudo systemctl reload nginx
如果您已将域和 DNS 记录设置为指向服务器 IP,则现在可以通过以下网址访问 Plex 媒体服务器: plex.example.com
.
使用 Let's Encrypt SSL 免费证书保护反向代理
最好使用 SSL 证书在 HTTPS 上运行 Nginx。您可以使用 Let's Encrypt,这是一个由非营利性互联网安全研究小组 (ISRG) 运营的免费、自动化、开放的证书颁发机构。
首先,安装 certbot
包装如下:
sudo apt install python3-certbot-nginx -y
安装后,运行以下命令开始创建证书:
sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email you@example.com -d plex.example.com
此设置包括强制 HTTPS 301 重定向、Strict-Transport-Security 标头和 OCSP Stapling。请确保根据您的要求调整电子邮件和域名。
您的 URL 现在将是 https://plex.example.com,而不是 http://plex.example.com。如果您使用旧的 HTTP URL,它将自动重定向到 HTTPS。
设置自动证书更新
您也可以选择设置一个 cron 作业来自动更新证书。Certbot 提供了一个可以自动执行此操作的脚本。首先,通过执行试运行来测试以确保一切正常:
sudo certbot renew --dry-run
如果一切正常,请使用以下终端命令打开您的 crontab 窗口:
sudo crontab -e
接下来,指定证书自动续订的时间。应至少每天检查一次,如果证书需要续订,脚本将更新证书。
将以下行添加到您的 crontab:
00 00 */1 * * /usr/sbin/certbot-auto renew
此命令将在每天午夜检查证书是否更新。如果证书需要更新,它将自动更新。这可确保您的 SSL 证书保持最新状态,并且您的反向代理保持安全。
管理 Plex 媒体服务器
在 Linux Mint 上更新 Plex 媒体服务器
Plex Media Server 可以使用标准 apt
update 命令,通常用于更新系统上的软件包。
检查更新
要检查更新,请运行以下命令:
sudo apt update
升级 Plex 媒体服务器
如果有可用更新,请使用 upgrade
更新 Plex Media Server 的命令:
sudo apt upgrade plexmediaserver -y
删除 Plex 媒体服务器
如果您不再希望使用 Plex 并希望将其从 Linux Mint 系统中删除,请按照以下步骤操作。
卸载 Plex 媒体服务器
执行以下命令从系统中删除 Plex Media Server:
sudo apt remove plexmediaserver
禁用 Nginx 反向代理(如果适用)
如果您安装了 Nginx 反向代理,请记住禁用它,并在必要时删除与您的域关联的配置文件。
要禁用 Nginx 反向代理,请运行以下命令:
sudo systemctl disable nginx --now
要删除配置文件,请使用以下命令:
sudo rm /etc/nginx/conf.d/plex.conf
最后,重新加载 Nginx 以应用更改:
sudo systemctl reload nginx
结论
在 Linux Mint 系统上成功安装 Plex Media Server 后,您可以高效地管理和流式传输媒体收藏。使用 Plex 的官方 APT 存储库可确保您随时了解最新的稳定版本和开发版本,从而让您能够访问新功能和改进。享受 Plex Media Server 为您的媒体流式传输需求提供的强大功能和灵活性。