导航

Infuse + Alist + 阿里云盘 搭建个人影视库

概述

整体方案

提到搭建属于自己的影视库,大家首先想到的应该是 NAS,由于阿里云网盘的不限速,给了像我一样没有 NAS ,但却爱看电视,又不想每次都下载下来看的人,一个搭建属于自己影视库的机会。

这个方案我画了个简单的图:

  • 软路由连接在光猫和无线路由器之间,并且在其中安装 Alist
  • AppleTV 盒子与无线路由器之间通过网线口进行连接(实测无线网速跟有线有很大差距)
  • 在需要观影的所有设备上安装 Infuse

2023-02-16T07:54:52.png

为什么要用 Alist

因为 infuse (暂且称之为个人影视库 app)支持的视频文件协议阿里云盘目前都不支持,所以我们需要一个能够从阿里云盘读取数据,并且将数据转换成 infuse 支持协议的一个中间应用,这就是 Alist 的作用,当然 Alist 还用其他更多的功能,感兴趣的话可以前往 Alist官网 了解更多.

2023-02-16T08:13:10.png

Alist 安装

在软路由上安装 Alist 的方法很多,主要有:

  • 通过软路由系统(openWrt)中已经嵌入的应用商店(如 iStore)直接搜索安装
  • 通过软路由系统(openWrt)中已经嵌入的 Docker 直接搜索安装
  • 手动下载 Alist 官方包到软路由系统中手动安装

前两种方法比较简单,就不具体说了,这里主要分享下手动安装 Alist 的方法

确定合适的安装包

首先查询系统架构,管理页面: 状态 -> 概览 -> 架构,如下图所示,我的软路由架构是 ARMv8,也就是 arm64 架构。

2023-02-16T09:01:13.png

根据你的系统架构在 alist 最新的包 下载页面 找到对应的下载包,

建议下载 musl 版本

拷贝下载链接:

https://github.com/alist-org/alist/releases/download/v3.11.0/alist-linux-musl-arm64.tar.gz

2023-02-16T09:32:45.png

安装

进入你的软路由系统命令行,一般有两种方式:

  • 从管理页面: 系统-> ttyd 终端进入
  • 远程 SSH 访问

用户名和密码和路由器管理页面的一样.

进入一个你喜欢的目录(比如我的是 /usr/share),创建 alist 文件夹(叫什么都可以)

cd /usr/share/
mkdir alist
cd alist

下载安装包 wget + 上面复制的下载地址

wget https://github.com/alist-org/alist/releases/download/v3.11.0/alist-linux-musl-arm64.tar.gz

下载完成后,解压, 并赋予权限

tar -zxvf alist-linux-musl-arm64.tar.gz
chmod +x alist

运行一下命令测试一下是否能够正常启动:

./alist server

没有报错的情况下,浏览器输入

http://${你的软路由的ip地址}:5244/

如果页面能正常打开,说明安装成功. 这时候,ctrl + c 退出终端.

配置开机启动

openWrt 系统是使用 procd 来管理进程的,可去 procd官方文档 了解更多.

我们需要在 /etc/init.d/ 下添加 alist 的配置文件

vim /etc/init.d/alist

在打开的文件,按一次键盘上的 i 进入编辑模式, 拷贝粘贴下面的代码段,再依次进行以下操作后退出.

按一次 Esc 键 按 Shift + : 进入命令模式 输入 wq 回车退出

#!/bin/sh /etc/rc.common
START=98
USE_PROCD=1
STOP=01

SCRIPT="/usr/share/alist/alist server"

start_service() {
        procd_open_instance
        procd_set_param command "$SCRIPT"
        procd_set_param stdout 1
        procd_set_param stderr 1
        procd_close_instance
}

stop_service() {
    killall alist
}

restart_service() {
  stop
  start
}

设置开机启动:

/etc/init.d/alist enable

启动 Alist

/etc/init.d/alist start

查看初始化账户名和密码

/usr/share/alist/alist admin

Alist 配置

【最新版本需要配置阿里云盘open】,参考官网资料

获取阿里云盘 Token

进入 Alist 帮助文档,点击【获取 Token】按照提示操作即可获取 token

https://alist.nn.ci/zh/guide

2023-02-16T10:56:34.png

获取要配置的阿里云盘文件夹ID

登录网页盘阿里云盘,进入目标文件夹,复制浏览器地址栏里的ID

2023-02-16T11:00:25.png

配置 Alist

浏览器输入以下地址,输入 Alist 初始化的用户名和密码登录

http://{你的软路由的IP地址}:5244/

进入 【存储】->【添加】,填入上面获取到的所有信息,

  • 挂载路径 自定义
  • web 代理 打开
  • WebDAV 策略 选择本地代理

其他保持默认,保存即可

2023-02-16T11:01:02.png

浏览器输入以下地址,如果能看到你的阿里云盘的文件,说明配置成功。

http://{你的软路由的IP地址}/{你配置的挂载路径}

Infuse 配置

进入【文件】->【新增文件来源】-> 【已存储的共享】->【添加】->【添加 WebDAV】

  • 名称 自定义
  • 位址 你的软路由的 IP 地址
  • 用户名 密码 Alist 的用户名和密码
  • 路径 /dav
  • 端口 5244

配置完成

2023-02-16T11:09:09.png

常见问题

网盘里新增了影视资源后,infuse 并没有立刻刷新

打开 Alist 文件页面,右下角点击刷新 http://{你的软路由的IP地址}:5244/

网盘里的字幕无法加载

必须保证影片源文件、字幕文件在 同一文件夹下. 必须保证影片源文件、字幕文件,文件名一致.

infuse 电视和手机播放进度,配置等信息不能同步

infuse 是通过icloud 同步所有的配置及播放进度信息的,必须保证两者登录的是 **同一个 iCloud 用户 **.