玩机日记 14 飞牛fnOS部署qBittorrent、AList、Jellyfin,实现下载、存取、刮削、观看一体的家庭影音中心

目录

观前提示:

1、前置条件

2、安装配置qBittorrent

简单配置

延时启动

配置AList的离线下载

配置qBittorrent不走代理

3、安装配置Jellyfin

建立媒体库目录

安装Jellyfin

配置Jellyfin媒体库

打开硬件解码

启用备用字体

配置Jellyfin的SSL


观前提示:

AList的配置在上一篇

玩机日记 13 飞牛部署AList并配置SSL,使用rclone挂载到本地-CSDN博客

1、前置条件

检查一下你的飞牛共享文件夹是否挂载到了Windows11

检查一下AList网盘是否挂在到了共享文件夹

如果没有完成上述挂载,请回看

玩机日记 10 fnOS 开启文件传输服务挂载到手机/电脑,测试传输性能-CSDN博客

玩机日记 13 飞牛部署AList并配置SSL,使用rclone挂载到本地-CSDN博客

2、安装配置qBittorrent

为什么不在Windows11中安装qBittorrent?rclone+AList的性能损耗已经很大了,再套一层smb传输的话,亲测会卡到怀疑人生

简单配置

打开之后配置一下账号密码还有ssl证书

我们希望尽可能减少在网盘内的读写来提高性能。因此下载未完成之前我建议可以保存在本地,下载完成后再移动到网盘。可以像这样设置

记得给qBittorrent文件夹的读写权限!!!

强烈建议限制上传速度。qb的做种会占用我们往网盘里传文件的带宽,如果qb上传占用了太多带宽,rclone就需要更多时间才能将本地文件上传到网盘(在此期间会消耗系统性能,而且如果群晖关机的话,尚未上传的缓存内的数据就丢失了)

务必设置自动停止做种

从网盘做种,实际上并不是读取网盘的文件,而是读取本地的vfs缓存。如果一直读取,vfs缓存就永远不会过期,就会越来越大,占用越来越多的硬盘空间。所以不能让qb的做种行为一直读取网盘文件。

重启qb

延时启动

如果使用qBittorrent下载资源到AList挂载的网盘中,重启飞牛过后,会报错丢失文件

如果出现这种情况,全选文件然后点继续即可恢复

我在上一篇rclone挂载AList的时候有提到,AList作为开机自启的套件,需要一些时间完成启动。因此rclone不会立刻挂载,而是等AList启动完毕后才挂载。

但是qBittorrent同样作为套件,它和AList是同时启动的。也就是说,在qBittorrent启动完成过后,它会尝试继续做种,但此时rclone还没有把AList挂载到本地,qBittorrent一时间找不到之前下载的文件,便会报错丢失文件。

为了解决这个问题,我们可以编辑qBittorrent的启动脚本,让它检测rclone挂载好了再启动。

nano /var/apps/qBittorrent/cmd/common

找到  start_daemon ()  ,在合适的位置插入延时启动


# 检查AList是否准备就绪
    while [ ! -d "/vol2/1000/飞牛网盘/AList/天翼云盘" ]; do
        sleep 1
    done




#上述代码段通过检查AList中的网盘目录是否出现,来判断延时启动
#我的AList挂载在/vol2/1000/飞牛网盘/AList/,在AList启动后里面会出现 天翼云盘
#假设你的AList挂载在/vol1/AList/,里面有一个百度网盘,那么双引号""里面就填 /vol1/AList/百度网盘

配置AList的离线下载

既然已经配置了qBittorrent,顺便配置一下AList的离线下载功能吧。

由于qBittorrent配置了ssl证书而AList会检查ssl证书,证书又绑定了域名。因此这里要输入

https://qb账号:密码@你的.域名:8085

比如账号是123,密码是456,域名是www.baidu.com,那就输入

https://123:456@www.baidu.com:8085

然后点击设置qBittorrent,看看能不能连接成功。

设置好之后就可以使用离线下载了。

配置qBittorrent不走代理

插件设置往下拉,内部端口30000-65535

3、安装配置Jellyfin

建立媒体库目录

我们下载下来的资源,有时候标题会带一些奇奇怪怪的特殊符号,文件夹里面会有一些特典、扫描、主题曲等等,这些东西都会干扰Jellyfin的识别。但是如果直接修改文件名、目录结构、删除子文件夹等等,又会导致qBittorrent报错丢失文件。

当然你可以用qBittorrent自带的重命名功能这样就不会丢失文件了,但是我操作了一下感觉极其的麻烦,在有大量媒体文件时会消耗大量时间和精力。

我想到的解决方案是建立软连接,把文件夹还有子文件夹下的文件都保存原本的目录结构链接到群晖的共享文件夹内,然后删除不需要的链接并修改链接的名字,调整目录结构,这样不会对原文件产生影响。

新建link_files.sh

vim /usr/local/bin/link_files.sh


#输入以下内容






#!/bin/bash

# 检查参数
if [ "$#" -ne 2 ]; then
    echo "用法: $0 <源文件夹> <目标文件夹>"
    exit 1
fi

src_dir=$(realpath "$1")   # 获取源文件夹的绝对路径
dest_dir=$(realpath "$2")  # 获取目标文件夹的绝对路径

# 确保源文件夹存在
if [ ! -d "$src_dir" ]; then
    echo "错误: 源文件夹 '$src_dir' 不存在!"
    exit 1
fi

# 遍历源文件夹中的所有文件
find "$src_dir" -type f | while IFS= read -r file; do
    # 计算相对路径
    rel_path="${file#"$src_dir"/}"
    dest_path="$dest_dir/$rel_path"

    # 创建目标目录(如果不存在)
    mkdir -p "$(dirname "$dest_path")"

    # 创建符号链接
    ln -s "$file" "$dest_path"
done

echo "所有文件已成功链接到 $dest_dir"






#输入完成,按Esc :wq回车保存并退出


chmod +x /usr/local/bin/link_files.sh   #给予可执行权限

#假设你想把 /vol1/A/ 文件夹下的所有文件都链接到 /vol1/B/ 文件夹下
link_files.sh /vol1/A/ /vol1/B/


#如果文件夹名字太长且带有特殊符号不方便输入怎么办?善用Tab键命令补全,
#输入前几个标点和字符,然后按一下Tab即可补全路径

示例用法:

我直接把qb的下载目录  /vol2/1000/飞牛网盘/AList/天翼云盘/qbdownload 下面的所有文件全部链接到 /vol2/1000/飞牛网盘/video

100G的文件,只需要几秒钟就可以连接完成

回到Windows11上可以看到两个目录下出现了一模一样的文件

大小还是100g

而且也可以正常播放

接下来需要批量修改文件名。应该有很多工具可以实现吧。我比较习惯使用手机上的MT管理器。之前已经用sftp连接上了飞牛网盘玩机日记 10 fnOS 开启文件传输服务挂载到手机/电脑,测试传输性能-CSDN博客

改完之后绝对不会影响识别了,而且也非常一目了然

把你的所有节目和电影分两个文件夹整理好

整理的时候会遇到一些字体文件的压缩包,找个文件夹全部解压进去,后面有用

安装Jellyfin

添加访问权限

配置Jellyfin媒体库

建立第一个节目文件夹,把你的文件夹添加进去,开启实时监控,把元数据下载器都勾上

在配置了网络代理或者修改了hosts的前提下,Jellyfin会自动扫描并刮削元数据

如果有识别错误的可以手动重新识别

扫描、识别完成后的效果展示

连小众番剧都能达到这么好的识别效果,还要啥TMM(TinyMediaManager)呢?

同样的方法添加电影媒体库

等待扫描完成

完成效果

打开硬件加速解码

我的uhd730不支持av1编解码所以av1相关的不开,否则会报错。记得拉到最下面点保存!

启用备用字体

播放一个视频试试看

什么情况,这字幕为啥都是方框?

这是因为Jellyfin没有内置字幕用到的字体文件,所以无法显示。

还记得我们之前解压的字体文件夹吗?把它添加到备用字体路径,启用备用字体。

再次播放,这样就正常显示了

配置Jellyfin的SSL

启用https

配置pfx证书和密码

玩机日记 1 前期准备工作:申请公网ipv4、购买域名、申请SSL证书-CSDN博客

在日记8中我们下载了pfx证书

玩记日记 8 PC使用moonlight远程连接PVE上的Windows11,开启Windows11的远程桌面和ssh并添加转发,给远程桌面添加ssl证书-CSDN博客

修改fnos中jellyfin的启动url

然后重启jellyfin

重启完成后从fnos打开jellyfin,正常访问,而且已经启用了https,没有红叉

测试硬件加速转码

手机jellyfin客户端打开一个hevc视频,电脑打开网页端控制台就可以看到转码了

下载手机jellyfin客户端jellyfin/jellyfin-android: Android Client for Jellyfin

我的fnos上运行了一些进程,闲置时cpu也有10%以上的占用。转码的时候帧率很高而且cpu占用也没怎么上涨,说明确实是在用硬件加速转码了。

### 如何在 FNOS部署爱盼应用 #### 准备工作 确保已安装并配置好云 NAS 的基础环境。这包括但不限于更新系统至最新版本,以及确认 Docker 已经正确安装并可以正常运行。 #### 获取镜像 前往云桌面的 Docker 应用界面,在搜索栏中查找与“爱盼”相关的官方或可信第三方提供的 Docker 镜像。假设存在名为 `apian/apian` 的镜像代表爱盼服务,则应选择此条目作为目标下载对象[^1]。 #### 创建存储卷 为了持久化保存数据,建议新建一个专门用于存放爱盼相关文件的数据卷。进入 NAS 文件管理器,于合适的位置建立新文件夹,比如命名为 `/mnt/data/apian-config` 来容纳必要的配置文件和其他重要资料。 #### 启动容器 返回到 Docker 控制面板,通过点击右上角按钮来启动新的容器实例。对于容器名可自定义命名;而针对资源分配部分可根据实际需求调整CPU、内存限额等参数设定。特别注意的是要勾选允许随主机一同启动选项以便长期稳定运作。 #### 端口映射 依据爱盼的具体功能特性决定对外开放哪些端口号给外部设备连接使用。如果默认监听8080端口提供Web接口访问权限的话,那么就需要在此处将宿主机相同编号开放出来供外界调用。 #### 数据挂载 把之前准备好的 `/mnt/data/apian-config` 路径关联至容器内部相应位置(通常为 `/config` 或者其他指定目录),从而保障即使重启也不会丢失任何个性化修改过的设置项。 #### 环境变量配置 视情况向容器传递必需的环境变量信息,例如时区(`TZ=Asia/Shanghai`)或其他可能影响行为表现的关键字串。这些都可以帮助更好地适配所在地区的操作习惯或是满足特定业务逻辑的要求。 #### 完成部署 当上述各项准备工作均已完成之后,最后一步便是正式提交创建请求,等待片刻直至整个过程结束为止。此时应该能够顺利浏览到由爱盼所提供的初始页面或者是按照预期方式工作的状态了。 ```bash docker run -d \ --name apian-service \ -p 8080:8080 \ -v /mnt/data/apian-config:/config \ -e TZ="Asia/Shanghai" \ apian/apian:latest ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值