共计 7148 个字符,预计需要花费 18 分钟才能阅读完成。
使用 Alist 零硬盘打造千 T 资源的蓝光私人影库,本文较长,详细讲解了 Alist Rclone AutoSymlink Emby Kodi TinyMediaManager LibreELEC 虚拟机 核显直通 容器安装配置使用的全部流程,保姆级教程,适用于 PVE 和 UNRAID 的 all in oneNAS 系统,支持英特尔 6 -14 带核显的主机。无核显或者非 all in one 的群晖、极空间、绿联等机型,可以使用电视或者高清盒子对接 Emby 资源库进行观影。
第一步 安装 Alist
执行安装命令之前,请确认相关路径的目录已创建,可以在 File Station 中建立,也可以使用 mkdir 命令创建,没有创建目录容器将无法启动,此问题后续不再赘述。
1.1 复制下面命令安装 alist 容器:
docker run -d \
--name='alist' \
-e TZ="Asia/Shanghai" \
-e 'PUID'='0' \
-e 'PGID'='0' \
-e 'UMASK'='022' \
-v '/volume1/docker/alist/data/':'/opt/alist/data' \
-p 5244:5244 \
xhofe/alist
1.2 安装完成后配置下 alist 的登录密码 123456(如果在公网访问建议设置强密码):
docker exec alist ./alist admin set 123456
1.3 获取 115 的 cookie,并挂载分享链接的资源,可以操作视频进行操作。
详细方法可以参考 alist 官方文档:https://alist.nn.ci/zh/guide/drivers/115.html
1.4 注意:Alist 全局设置里的签名所有功能需要关闭,否则 strm 链接是失效的,无法播放。
第二步 安装 Rclone
2.1 获取安装脚本:
curl -O https://rclone.org/install.sh
2.2 执行安装命令:
sudo bash install.sh
2.3 挂载报错的话执行下面命令,用 fusermount 替代所需的 fusermount3 驱动:
sudo ln -s /bin/fusermount /bin/fusermount3
2.4 按照提示配置 rclone config,使用 webdav 方式添加 alist,注意地址端口后面一定加 /dav,这是由 alist 特性决定的。
2.5 添加 alist 成功后执行挂载命令,将 alist 的文件挂载到本地目录,格式如下(请根据自己路径进行修改):
rclone mount [配置名: 路径(路径可以不写,直接挂载根目录)] [本地路径] --use-mmap --umask 000 --allow-other --allow-non-empty --dir-cache-time 24h --cache-dir=[缓存路径] --vfs-cache-mode full --buffer-size 512M --vfs-read-chunk-size 16M --vfs-read-chunk-size-limit 64M --vfs-cache-max-size 10G --daemon
我修改好的挂载命令(注意路径之间的空格,alist: 后面可以不写,表示挂载根目录):
rclone mount alist:/ 高清电影 /volume1/rclone/alist/ 高清电影 --use-mmap --umask 000 --allow-other --allow-non-empty --dir-cache-time 24h --cache-dir=/volume1/rclone/cache --vfs-cache-mode full --buffer-size 512M --vfs-read-chunk-size 16M --vfs-read-chunk-size-limit 64M --vfs-cache-max-size 10G --daemon
第三步 安装 auto_symlink
auto_symlink 能将网盘的视频文件生成为 strm 链接文件,方便本地读取刮削,避免对网盘请求过多,造成限流、风控和封号,auto_symlink 安装命令:
docker run -d \
--name auto_symlink \
-e TZ=Asia/Shanghai \
-v /volume1/docker/auto_symlink/config:/app/config \
-v /volume1/rclone:/volume1/rclone:rslave \
-v /volume1/media:/media \
-p 8095:8095 \
--user 0:0 \
--restart unless-stopped \
shenxianmq/auto_symlink:latest
auto_symlink 从 rclone 挂载目录读取文件信息,生成同样目录结构的媒体文件到媒体路径(过程种,视频文件将被替换成 strm 链接文件,这样在刮削过程中对网盘不会产生请求,海报、字幕等元数据文件将被下载复制到本地,便于播放器加载读取)。
-v /volume1/rclone:/volume1/rclone:rslave 这行的路径映射,rslave 表示使用相对于宿主机的从属挂载模式。请确保左右路径保持一致,否则使用本地模式生成的软链接不是指向真实路径,导入 emby 中的时候会导致无法观看。简单的来说,这里需要填写你映射的云盘路径,且两边都填写一模一样的路径即可,cloud 模式不受影响,但是尽量保持一致。
如果群晖创建容器 rslave 报错,在群晖的任务计划中添加开机任务:
mount --make-shared /volume1/systemctl daemon-reload
添加后手动运行一次,之后开机会自动运行
第四步 安装 tinymediamanager 刮削工具
TinyMediaManager 安装命令:
使用镜像为免费版,已付费的用户可以更换为官方原版
增加了刮削 host 解析参数,有网络环境的,可以自行删除 –add-host 字段
需要使用 VNC 客户端的,可以把容器的 5900 端口映射出来,默认使用 web 访问
docker run -d \
--name='TinyMediaManager' \
--net='bridge' \
-e TZ="Asia/Shanghai" \
-e 'USER_ID'='0' \
-e 'GROUP_ID'='0' \
-p '5800:5800' \
-v '/volume1/docker/TinyMediaManager':'/config' \
-v '/volume1/media':'/media' \
--add-host=api.themoviedb.org:108.139.15.114 \
--add-host=api.themoviedb.org:108.139.15.125 \
--add-host=www.themoviedb.org:54.230.253.95 \
--add-host=www.themoviedb.org:54.230.253.111 \
--add-host=image.tmdb.org:143.244.50.90 \
--add-host=image.tmdb.org:185.93.1.244 \
dzhuang/tinymediamanager
刮削完成后就可以将目录添加给 Kodi 使用了,为了方便教程我这里就先进行 emby 的安装,再进行 LibreELEC Kodi 播放器的安装,如果你只使用 kodi,emby 这一步可以跳过不装。
第五步 安装 emby(只使用 kodi 的话可以不安装,建议还是安装上,多一种观影方式,同时 emby 也能进行海报墙和元数据刮削。kodi 可以共用元数据,这样 kodi 就不用开启刮削了。如果 emby 刮削的效果不好,可以再安装下一步的 tinymediamanager,手动进行刮削整理)
emby 安装命令:
使用镜像为开心版,已付费的用户可以更换为官方原版
增加了刮削 host 解析参数,有网络环境的,可以自行删除 –add-host 字段
docker run -d \
--name='emby' \
-e TZ="Asia/Shanghai" \
-e 'UID'='0' \
-e 'GID'='0' \
-e 'GIDLIST'='0' \
-p '8096:8096' \
-v '/volume1/docker/emby/config':'/config' \
-v '/volume1/media':'/media' \
--add-host=api.themoviedb.org:108.139.15.114 \
--add-host=api.themoviedb.org:108.139.15.125 \
--add-host=www.themoviedb.org:54.230.253.95 \
--add-host=www.themoviedb.org:54.230.253.111 \
--add-host=image.tmdb.org:143.244.50.90 \
--add-host=image.tmdb.org:185.93.1.244 \
amilys/embyserver
如果需要使用本地模式的话还需要将 rclone 路径映射给 emby(cloud 模式不需要):
-v /volume1/rclone:/volume1/rclone:rslave \
第四步 安装 LibreELEC Kodi 播放器 利用 NAS 核显输出画面,实现 NAS 存储与高清播放完美结合,充分发挥所有硬件。
4.1 准备工作:配置核显直通环境(注意:命令需在 PVE 主机 shell 中执行,不要在群晖 shell 下执行,pve 远程登录的群晖,请先退出群晖 SSH 再执行命令。)
测试 Dell Wyse5070 PVE 底层不需要做任何修改,只需配置好虚拟机相关配置就可以成功直通核显输出画面。windows 系统不在讨论范围,j4125/j4105 等 10 代低功耗架构处理器在纯 UEFI BIOS 下核显在 windows 系统中无法正常输出画面,其他 CPU 不受此影响,均能物理直通输出画面。
按下面参数配置 PVE8.0 系统的核显直通环境,适用于英特尔 6 -14 代核显(Dell Wyse5070 可以不配置):
sed -i '/^GRUB_CMDLINE_LINUX_DEFAULT/c\GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on"' /etc/default/grub
echo -e "blacklist i915\nblacklist snd_hda_intel\noptions vfio_iommu_type1 allow_unsafe_interrupts=1" | tee -a /etc/modprobe.d/pve-blacklist.conf
update-grub
update-initramfs -u -k all
reboot
复制到 pve 的 shell 中执行,完成后系统会重启
4.2 安装 LibreELEC 虚拟机(LibreELEC 版本建议使用我提供的版本,其他版本有花屏情况)
上传 LibreELEC 安装镜像和核显 vbios 文件,可以先把后缀改为 img,上传完成后我们再改回 rom 就可以了,这样就不需要借助文件传输工具就可以给 pve 上传任意文件了。
按照视频教程创建配置虚拟机完成后,使用下面命令修改虚拟机配置文件,增加核显直通的额外配置参数:
sed -i '1i\args: -set device.hostpci0.addr=02.0 -set device.hostpci0.x-igd-gms=0x2 -set device.hostpci0.x-igd-opregion=on' /etc/pve/qemu-server/104.conf
sed -i 's/^hostpci0.*/hostpci0: 0000:00:02,legacy-igd=1,romfile=6-14.rom/' /etc/pve/qemu-server/104.conf
我的虚拟机 id 是 104,请根据你们情况进行修改,再执行
映射安装盘,移动并重名 vbios 文件至 kvm 目录
命令中的文件路径、虚拟机 ID 号 (我的是 104) 和存储名 (我的是 ssd) 根据自己情况进行修改:
qm importdisk 104 /mnt/sda/template/iso/LibreELEC-Generic.x86_64-11.0.6.img ssd
mv /mnt/sda/template/iso/6-14.img /usr/share/kvm/6-14.rom
我的虚拟机 id 是 104,请根据你们情况进行修改,再执行
cloud 模式下 strm 生成完成后,数据不需要实时更新的话,rclone 可以不用再进行挂载,AutoSymlink 也不需要开启。
如果需要实时同步网盘的话,需要先在 alist 里面刷新目录,再刷新 rclone 挂载,同时开启 AutoSymlink 的实时监控。
rclone 的目录可以通过重新卸载再挂载进行刷新,例如
卸载:
umount -lf /volume1/rclone/alist
再挂载:
rclone mount alist:/ /volume1/rclone/alist/ --use-mmap --umask 000 --allow-other --allow-non-empty --dir-cache-time 24h --cache-dir=/volume1/rclone/cache --vfs-cache-mode full --buffer-size 512M --vfs-read-chunk-size 16M --vfs-read-chunk-size-limit 64M --vfs-cache-max-size 10G --daemon
可以将两个命令进行结合:
umount -lf /volume1/rclone/alist
&&rclone mount alist:/ /volume1/rclone/alist/ --use-mmap --umask 000 --allow-other --allow-non-empty --dir-cache-time 3m --cache-dir=/volume1/rclone/cache --vfs-cache-mode full --buffer-size 512M --vfs-read-chunk-size 16M --vfs-read-chunk-size-limit 64M --vfs-cache-max-size 10G --daemon
也可以通过 –dir-cache-time 控制目录的缓存时间,例如改为 3 分钟
rclone mount alist:/ /volume1/rclone/alist/ --use-mmap --umask 000 --allow-other --allow-non-empty --dir-cache-time 3m --cache-dir=/volume1/rclone/cache --vfs-cache-mode full --buffer-size 512M --vfs-read-chunk-size 16M --vfs-read-chunk-size-limit 64M --vfs-cache-max-size 10G --daemon
这样无需重新挂载,也可以有效提升目录的更新间隔
需要实时同步数据的话,挂载命令和增加 volume 挂载点 share 属性的命令必须在群晖计划任务中,设置开机执行(以 root 身份):
rclone mount alist:/ /volume1/rclone/alist/ --use-mmap --umask 000 --allow-other --allow-non-empty --dir-cache-time 3m --cache-dir=/volume1/rclone/cache --vfs-cache-mode full --buffer-size 512M --vfs-read-chunk-size 16M --vfs-read-chunk-size-limit 64M --vfs-cache-max-size 10G --daemon
mount --make-shared /volume1/
命令终端路径,请根据自己的情况进行修改
Rclone 如果使用脚本安装失败,可以手动下载安装包进行安装,Rclone 是单文件程序,可以直接下载最新 Release,设置环境变量后即可使用:
curl -O https://downloads.rclone.org/rclone-current-linux-amd64.zip
unzip rclone-current-linux-amd64.zip
cd rclone-*-linux-amd64
sudo cp rclone /usr/bin/
sudo chown root:root /usr/bin/rclone
sudo chmod 755 /usr/bin/rclone
视频中工具软件下载地址:
核显直通 vbios 适用于英特尔 6 -14 代 CPU:
链接:https://pan.quark.cn/s/bb1f59e080da
kodi 中文语言包_19 及以上版本:
链接:https://pan.quark.cn/s/ac3aa18b03c3
rclone-current-linux-amd64.zip:
链接:https://pan.quark.cn/s/cc604f34e310
LibreELEC-Generic.x86_64-11.0.6.img:
链接:https://pan.quark.cn/s/f5fd20f6c9e4
115 资源分享,可在本站资源分享栏目中找到,目前已收集大包等资源约 5000T