前言
常规的Aria2是基于安装用户来使用的,或者基于 root
用户,这样其实很不方便管理。
搭配它的WebUI-GitHub - mayswind/AriaNg: AriaNg, a modern web frontend making aria2 easier to use.,网页使用的是Nginx或者Apache2的用户权限www-data
,Aria2用的又是root
,导致下载的文件都是root
权限,权限问题比较杂。
这时候如果有磁盘映射(映射SMB或者WebDav的那个文件夹),特别是基于Nginx或者Apache2搭建的WebDav,这样其他的用户根本没办法对下载的文件进行编辑等操作。
也就是说,只要把Aria的权限改为www-data
,那么整个文件夹权限都是统一的 www-data
,一视同仁。
操作
修改Aria2的服务:
# vim /usr/lib/systemd/system/aria2c.service
[Unit]
Description=Aria2c
[Service]
User=www-data
Group=www-data
TimeoutStartSec=0
ExecStart=/usr/bin/aria2c --conf-path=/var/www/aria2/aria2.conf
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=on-failure
RestartSec=30s
[Install]
WantedBy=multi-user.target
需要注意的就是在 [Service]
段,定义 User=www-data
和 Group=www-data
,以及它的conf-path
文件,conf-path
文件必须放在 www-data
权限的文件夹内才能访问,不能放在默认的 ~/.aria2
文件夹中。
执行:
systemctl daemon-reload
systemctl restart aria2c
这样就解决了Aria2核AriaNG的权限统一问题。
补充
AriaNG的WebUI需要RPC密钥才能连接,只需要使用Nginx将其代理出去即可,还可以继续使用6800的端口号:
1.修改aria2.conf
配置
rpc-listen-port=16800
随意更换一个端口号
2.配置Nginx反向代理
server {
listen 6800;
listen [::]:6800;
server_name xxx.com;
location / {
proxy_pass http://127.0.0.1:16800;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
这样就将RPC端口仍然使用的默认6800端口。
最后
Aria2真的很香,不说速度有多快吧,但是肯定不慢,平时我下载电影都用的它,总好过开台电脑挂机下载吧。