仅适用于 Linux amd64/arm64 平台。

安装

1
curl -fsSL "https://alist.nn.ci/v3.sh" | bash -s install

更新

1
curl -fsSL "https://alist.nn.ci/v3.sh" | bash -s update

卸载

1
curl -fsSL "https://alist.nn.ci/v3.sh" | bash -s uninstall

自定义路径

默认安装在 /opt/alist 中。 自定义安装路径,将安装路径作为第二个参数添加,必须是绝对路径(如果路径以 alist 结尾,则直接安装到给定路径,否则会安装在给定路径 alist 目录下),如 安装到 /root

1
2
3
4
5
6
# Install
curl -fsSL "https://alist.nn.ci/v3.sh" | bash -s install /root/wwwroot/alist
# update
curl -fsSL "https://alist.nn.ci/v3.sh" | bash -s update /root/wwwroot/alist
# Uninstall
curl -fsSL "https://alist.nn.ci/v3.sh" | bash -s uninstall /root/wwwroot/alist
  • 启动: systemctl start alist
  • 关闭: systemctl stop alist
  • 状态: systemctl status alist
  • 重启: systemctl restart alist

获取密码

需要进入脚本安装AList的目录文件夹內执行如下命令

低于v3.25.0版本

1
./alist admin

高于v3.25.0版本

3.25.0以上版本将密码改成加密方式存储的hash值,无法直接反算出密码,如果忘记了密码只能通过重新 随机生成 或者 手动设置

1
2
3
4
# 随机生成一个密码
./alist admin random
# 手动设置一个密码,`NEW_PASSWORD`是指你需要设置的密码
./alist admin set NEW_PASSWORD

一直在加载怎么办?

挂载了一些网盘但是不能用了重启了一下AList,发现进不去 网页提示:获取设置失败:请稍后,正在加载存储怎么办?

  1. 等待几分钟
  2. 通过使用命令将失效的/无法启动的存储停止运行

LinuxWindowsMacDocker其它

如果通过命令停止 ==必须先进入你AList所在的文件夹输入命令==

如果我们不知道是那个存储原因导致的,可以通过命令列出所有的存储

1
./alist storage list
1
2
3
4
5
6
7
8
9
10
11
[root@OPSD-g8xXordx3B9f alist]# ./alist storage list
INFO[2023-11-23 17:54:10] reading config file: data/config.json
INFO[2023-11-23 17:54:10] load config from env with prefix: ALIST_
INFO[2023-11-23 17:54:10] init logrus...
INFO[2023-11-23 17:54:10] Found 2 storages
┌─────────────────────────────────────────────────────────────────┐
│ ID Driver Mount Path Enabled │
│─────────────────────────────────────────────────────────────────│
│ 1 S3 /R2 true │
│ 2 UrlTree /233 true │
└─────────────────────────────────────────────────────────────────┘

输入查询命令后我们会进入另一种模式无法输入,如果添加的存储过多可以通过键盘的 ↑ 和 ↓ 来往下翻,等找到后可以按Ctrl+C退出

例如我们是因为 233 这个存储停止的,我们就输入命令来停止,然后在 重启一下AList就可以了

1
./alist storage disable /233
1
2
3
4
5
[root@OPSD-g8xXordx3B9f alist]# ./alist storage disable /233
INFO[2023-11-23 17:54:52] reading config file: data/config.json
INFO[2023-11-23 17:54:52] load config from env with prefix: ALIST_
INFO[2023-11-23 17:54:52] init logrus...
INFO[2023-11-23 17:54:52] Storage with mount path [/233] have been disabled

反向代理

nginx

在网站配置文件的 server 字段中添加

1
2
3
4
5
6
7
8
9
10
11
12
location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Range $http_range;
proxy_set_header If-Range $http_if_range;
proxy_redirect off;
proxy_pass http://127.0.0.1:5244;
# the max size of file to upload
client_max_body_size 20000m;
}

如果需要使用HTTP/3,需要将对应HOST行修改为:

1
proxy_set_header Host $host:$server_port;

这样修改后的配置同时也可以兼容HTTP/2及更低版本的请求。

注意:如果使用宝塔面板,请务必删除以下默认配置

1
2
3
- location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md
- location ~ .\*\.(gif|jpg|jpeg|png|bmp|swf)$
- location ~ .\*\.(js|css)?$

并在/www/server/nginx/conf/proxy.conf中或对应网站配置文件中设置禁用Nginx缓存,否则默认配置下访问较大文件时Nginx会先尝试将远程文件缓存至本机,导致播放失败

1
2
proxy_cache cache_one; # 删除这一行
proxy_max_temp_file_size 0; #加上这一行

宝塔设置反向代理示范

登录宝塔面板,添加站点

修改站点设置

删除面板默认代码;

添加反向代理;

如需申请SSL证书,可先在SSL选项中申请证书,然后在设置反向代理。或者设置反向代理之后,关闭反向代理功能,申请SSL证书后再次开启代理。