网盘管理一直是一个麻烦的事情,因为不同的厂商都有自己的管理后台,如果有一款工具可以兼容不同的厂商,进行统一管理那就好了,Alist 正是这样一款工具,将多个不同的网盘集中在一起进行操作,而且又兼具了个人隐私安全。
Alist 是一个支持多种存储的文件列表程序,它易于安装,开箱即用,UI 美观,文档友好,支持密码保护机制,项目开源在 Github 上,它支持阿里云盘、OneDrive、GoogleDrive、123云盘、PikPak、S3、百度网盘、夸克网盘、迅雷网盘、115、蓝奏云等多种存储方式
安装
以 Windows 上为例
使用容器
推荐使用 docker-compose 进行安装,第一次推荐执行 docker-compose up
,同时查看日志,顺利访问后,先 down 掉 docker-compose down
,再启用 docker-compose up -d
version: '3.3'
services:
alist:
restart: always
volumes:
- '/etc/alist:/opt/alist/data'
ports:
- '5244:5244'
environment:
- PUID=0
- PGID=0
- UMASK=022
container_name: alist
image: 'xhofe/alist:main'
包管理工具
使用包管理工具的问题的是不会自动启动,经常需要手动启用,有一种方式可以使用开机启动脚本,但是推荐在需要使用 alist 的时候再去启用
winget
# 查找 alist 应用
winget search alist
# 安装 alist 应用
winget install Alist.Alist
# 更新
winget upgrade Alist.Alist
scoop
# 查找 alist 应用
scoop search alist
# 安装 alist 应用
scoop install alist
# 更新
scoop update alist
注册为服务,并设置为开机启动
# 安装 nssm
winget install NSSM.NSSM
# 注册为服务,开机启动
nssm install Alist alist start
使用
个人隐私
曾经在网上遇到过一个公开 alist 访问的站点,站长本人将他学生时代乃至毕业后工作的资料、APP数据等全都保存在网盘里面,然后通过 alist 设置成了公开访问,这种操作是极其不安全的,那时候还没有游客这一说
如果 alist 支持公网访问,使用 alist 的一个好的思路是如果网盘只存储了影视剧等可公开数据,那么放开游客访问是可以的,如果不是,建议还是禁止游客用户,并且添加一个其他的用户,限制一些权限,再将账号分享给朋友或者其他人,如果是主要存储个人数据的网盘,一定要设置好密码和元信息,禁止游客用户,可以避免被网络爬虫爬取数据,理由是默认的 /robots.txt
是允许爬虫爬取网站数据的
播放器挂载
以 Potplayer 为例,添加 Alist 可以很方便的打开影音视频
本地盘挂载
这里使用 Rclone 进行挂载,而不是使用 Windows 自带的,理由是 Windows 自带的需要进行注册表修改,且不支持大文件下载,打开视频会出错
rclone 通过 winget 命令进行下载,除此之外,还需要安装一个依赖 WinFsp,相比其他方式安装,强烈推荐使用 Winget,谁用谁 happy
winget install Rclone.Rclone
winget install WinFsp.WinFsp
配置视频如下:
视频中的执行命令如下,注意修改其中的名称,以及缓存路径,还需要注意的是,由于 Referer 限制原因,只单独添加了 webdav 下面的阿里云盘,需要将 url 设置为自己阿里云盘对应的路径 http://localhost:5244/dav/阿里云盘2
,如果是其他云盘,则需要取消 --header
这个属性
rclone mount aliyun2:/ X: --vfs-cache-mode writes --cache-dir D:\projects_2023\rclone-alist\cache\aliyun2 --no-check-certificate --default-permissions --header "Referer:https://www.aliyundrive.com/" --vfs-read-chunk-size-limit 64M --vfs-read-chunk-size 32M --dir-cache-time 12h --buffer-size 32M --vfs-cache-max-size 1G --transfers 16
通过执行上面的命令,会发现虽然挂载到了本地盘,但命令行不能退出,退出命令行挂载就没了,这里通过 nssm 将 rclone mount 命令注册为服务
nssm install rclone-aliyun2 rclone mount aliyun2:/ X: --vfs-cache-mode writes --cache-dir D:\projects_2023\rclone-alist\cache\aliyun2 --no-check-certificate --default-permissions --header "Referer:https://www.aliyundrive.com/" --vfs-read-chunk-size-limit 64M --vfs-read-chunk-size 32M --dir-cache-time 12h --buffer-size 32M --vfs-cache-max-size 1G --transfers 16
如此,便实现了 alist 开机启动,rclone mount 开机挂载
如果 alist 没有启动、或者开机时网络出现问题(调用阿里云盘API出现错误),rclone mount 将会导致文件管理器 I/O 异常,等网络恢复后,需要在浏览器端进行重新加载,本地盘对于网盘新增文件是缺少强制刷新的,需要在浏览器端进行刷新
速度
上传和下载在未开启代理的情况下,影响速度的基本只有自己的网络带宽,普遍情况下,我们常说的网络带宽指的是下行带宽(下载),而实际上行带宽(上传)可能很低,而这个就影响到了我们的使用体验
以我家用带宽 200M/40M 为例,在播放影视剧时,理论上下载速度可以达到 25m/s,上传速度可以达到 5m/s
1、下载文件,即从本地盘(webdav)复制文件到本地,由于速度还是比较快的,4g 文件大概2分钟左右可以下载完,这期间,文件是不能访问的
2、上传文件,即从本地复制文件到本地盘(webdav),由于上传速度的限制,上传速度非常的慢,4g 文件上传需要10几分钟,虽然本地盘(webdav)中有显示文件的存在,但实际上是在后台继续上传,并没有秒传到阿里云盘,其他同类型的本地盘挂载也是一样的受限于上行带宽,使用阿里云盘客户端有一定概率可以实现秒传,猜测是每天有一定的上传容量限制,超过这个限制,就是走的上行带宽
如果是处理小文件,那么本地盘挂载和本地磁盘操作的体验差不多,如果是处理大文件,那么宽带速率越高,体验越好
总结
Alist 在多网盘管理和影视剧观看等方面拥有极佳的体验
评论 (0)