目录

如何自建 Emby

Rclone

安装

1
curl https://rclone.org/install.sh | sudo bash

使用Rclone挂载Google Drive

  1. 输入代码,进入配置环节

    1
    
    rclone config
    

    https://image.westinyou.com/blog-imgs/Untitled.png

  2. 输入 n,新建一个 remote,然后取一个名字,英文的最好

    https://image.westinyou.com/blog-imgs/Untitled-1.png

  3. 然后有多个选项出现,但是由于 Rclone 在不断的迭代,所以,这个选项有些许变化,因此需要自己找到 Google Drive 的选项号,并输入它。

    https://image.westinyou.com/blog-imgs/Untitled-2.png https://image.westinyou.com/blog-imgs/Untitled-3.png

  4. 回车之后,接下来的两个直接回车,进入到 Option scope 选项,并且选择权限最大的那个,1

    https://image.westinyou.com/blog-imgs/Untitled-4.png

  5. 接下来的操作直接看图,一个回车,一个回车,一个n

    https://image.westinyou.com/blog-imgs/Untitled-5.png

  6. 到这儿了,重点来了,需要在本地下载一个rclone,配置抓取google drive的相关信息。下载地址:https://rclone.org/downloads/

    https://image.westinyou.com/blog-imgs/Untitled-6.png

  7. 下载好了之后,Windows使用cmd运行rclone。在文件夹中,shift+鼠标右键,选择「在终端中打开」,然后将代码复制运行。

    https://image.westinyou.com/blog-imgs/Untitled-7.png

    https://image.westinyou.com/blog-imgs/Untitled-8.png

  8. 回车过后直接跳转到浏览器进行Google账户的授权,也就是Google Drive的授权,成功之后,会如图提示:

    https://image.westinyou.com/blog-imgs/Untitled-9.png

  9. 然后返回终端,将如果所示的代码粘贴到config_tocken后面

    https://image.westinyou.com/blog-imgs/Untitled-10.png

    https://image.westinyou.com/blog-imgs/Untitled-11.png

  10. 然后选择是不是团队盘(共享盘),根据自己的情况进行选择即可。

    https://image.westinyou.com/blog-imgs/Untitled-12.png

  11. 至此,所有的配置完成了,输入y,就结束了本次的挂载。最后输入q退出。

    https://image.westinyou.com/blog-imgs/Untitled-13.png

    https://image.westinyou.com/blog-imgs/Untitled-14.png

配置挂载的硬盘

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
`cat > /etc/systemd/system/[email protected] <<EOF`
[Unit]
Description=rclone mount %I drive
After=network.target
[Service]
Type=simple
ExecStart=/usr/bin/rclone mount %i: /home/%i \
		--use-mmap \
		--umask 000 \
		--default-permissions \
		--no-check-certificate \
		--allow-other \
		--allow-non-empty \
		--dir-cache-time 24h \
		--cache-dir=/home/cache \
		--vfs-cache-mode full \
		--buffer-size 256M \
		--vfs-read-ahead 512M \
		--vfs-read-chunk-size 32M \
		--vfs-read-chunk-size-limit 128M \
		--vfs-cache-max-size 20G \
		--low-level-retries 200 \
		--config /root/.config/rclone/rclone.conf
[Install]
WantedBy=multi-user.target
EOF
  • mount %i: /home/%i
    • 将挂在的文件挂在这个home的目录下
  • --cache-dir=/home/cache
    • 文件信息临时存放的位置
  • --config /root/.config/rclone/rclone.conf
    • rclone的配置文件存放位置
1
2
3
4
5
6
7
for a in `grep '^\[' /root/.config/rclone/rclone.conf`
do
    b=${a:1:-1}
    [ ! -d "/home/${b}" ] && mkdir /home/${b}
    systemctl enable rclone@${b}
    systemctl start rclone@${b}
done
  • /root/.config/rclone/rclone.conf
    • 上面设置的保存地点
  • /home/${b}
    • 记得和上面的/home/%i保持一致
1
2
systemctl enable rclone@xx
systemctl start rclone@xx

运行了之后,输入

1
df -h

https://image.westinyou.com/blog-imgs/Untitled-15.png

删除挂载

失败
当配置失败,或者要重新更改信息的时候可以删除从头再来。或者先装fuse,再运行上面的三行代码,如果依然没有,就重新挂载。
1
apt-get install -y fuse
1
umount /home/teach-harry
1
df -h

查看是否删干净

总结

到了这里,Google Drive 的挂载就完成了,其余的网盘挂载方法类似。接下来就使用Aria来完成自动下载并上传的操作了。

使用Aria下载并上传到Google Drive

1
docker pull p3terx/aria2-pro
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
docker run -d \
    --name aria2-pro \
    --restart unless-stopped \
    --log-opt max-size=1m \
    -e PUID=$UID \
    -e PGID=$GID \
    -e UMASK_SET=022 \
    -e RPC_SECRET=自己设置的密钥 \
    -e RPC_PORT=6800 \
    -e SPECIAL_MODE=rclone \
    -p 6800:6800 \
    -e LISTEN_PORT=6888 \
    -p 6888:6888 \
    -p 6888:6888/udp \
    -v ~/aria2-config:/config \
    -v ~/aria2-downloads:/downloads \
    p3terx/aria2-pro
  • RPC_SECRET=自己设置密钥

  • 后面的两个位置自己选择放在哪儿

    1
    2
    
    -v ~/aria2-config:/config \
    -v ~/aria2-downloads:/downloads \
    

开始联动Rclone和Aria

  1. /root/.config/rclone/rclone.conf复制到config文件夹。

    1
    
    cp /root/.config/rclone/rclone.conf /root/aria2-config
    
  2. 上面的做完了,去/root/aria2-config/script.conf编辑配置

    1
    2
    3
    4
    
    # 网盘名称(RCLONE 配置时填写的 name)
    drive-name=teach-harry
    # 网盘目录(上传目标目录,网盘中的文件夹路径)。注释或留空为网盘根目录,末尾不要有斜杠。
    drive-dir=
    
  3. 再在/root/aria2-config/aria2.conf中编辑配置(这两个谁先谁后其实无所谓)

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    
    # 下载目录。可使用绝对路径或相对路径, 默认: 当前启动位置
    dir=/downloads
    
    ## 执行额外命令 ##
    
    # 下载停止后执行的命令
    # 从 正在下载 到 删除、错误、完成 时触发。暂停被标记为未开始下载,故与此项无关。
    on-download-stop=/config/script/delete.sh
    
    # 下载完成后执行的命令
    # 此项未定义则执行 下载停止后执行的命令 (on-download-stop)
    on-download-complete=/config/script/upload.sh
    
  4. 最后,需要一个用于控制的 WebUI,例如AriaNg此链接,由开发者提供,可直接使用。或者使用 Docker, 自己部署一个:

    1
    2
    3
    4
    5
    6
    
    docker run -d \
        --name ariang \
        --log-opt max-size=1m \
        --restart unless-stopped \
        -p 6880:6880 \
        p3terx/ariang
    
  5. 运行了之后,在浏览器打开网址,然后配置,密钥就是RPC_SECRET,也就是docker那儿设置的,地址为ip。

    https://image.westinyou.com/blog-imgs/Untitled-16.png

提示
防火墙打开端口很重要。如果https和websocket都无法连接,那么就去掉所有的tls加密,也就是去掉cloudflare的代理加速(去掉cdn加密)

安装/更新 emby

1
docker pull emby/embyserver:latest
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
docker run -d \
    --name emby \
    --restart=always \
    -v /root/emby/config:/config \
    -v /home/teach-harry:/home/videos \
    -p 8096:8096 \
    -e UID=1000 \
    -e GID=100 \
    -e GIDLIST=100 \
    emby/embyserver:latest

最后

emby的配置根据你的文件类型而定,具体的自行摸索一下就好了。很简单,所以就不赘述了,如果对Aria有更深入的需求,那么请看这两篇文章:

Aria2 Pro - 更好用的 Aria2 Docker 容器镜像 - P3TERX ZONE

Aria2 前端面板 ( GUI、WebUI ) AriaNg 使用教程 - P3TERX ZONE