linux安装Cloudreve云盘(离线下载)

     Cloudreve 是一个支持多种存储的云盘系统,它允许用户快速搭建自己的网盘。他支持多种数据库系统,包括但不限于 MySQL、MariaDB、PostgreSQL、SQLite、Microsoft SQL Server 和 MySQL。相关功能介绍:https://github.com/cloudreve/Cloudreve/blob/master/README_zh-CN.md

包名称:cloudreve_3.8.3_linux_amd64.tar.gz

linux:CentOS Linux release 7.9.2009 (Core),最小化安装


1、安装cloudreve

官网下载链接:https://github.com/cloudreve/Cloudreve/releases

# 放通防火墙:
sudo firewall-cmd --add-port=5212/tcp --permanent
sudo firewall-cmd --add-port=3306/tcp --permanent
sudo firewall-cmd --add-port=80/tcp --permanent
sudo firewall-cmd --add-port=443/tcp --permanent
sudo firewall-cmd --add-port=6800/tcp --permanent
firewall-cmd --reload
setenforce 0
sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/sysconfig/selinux
​
mkdir cloudreve
tar -xvf cloudreve_3.8.3_linux_amd64.tar.gz -C cloudreve/
cd cloudreve
chmod +x ./cloudreve
./cloudreve
# 后台启动:nohup /root/cloudreve/cloudreve &
# 查看启动情况:netstat -lntp |grep 5212(yum install net-tools)

浏览器访问:ip/域名:5212

管理员账号密码是通过启动日志查看,当然,个人也可以通过注册账号来登录。

# 开机自启:
vi /usr/lib/systemd/system/cloudreve.service
[Unit]
Description=Cloudreve
​
[Service]
Type=simple
WorkingDirectory=/root/cloudreve
ExecStart=/root/cloudreve/cloudreve
Restart=on-failure
RestartSec=2s
KillMode=mixed
​
StandardOutput=null
StandardError=syslog
​
[Install]
WantedBy=multi-user.target
​
# 加载重启:
systemctl daemon-reload
systemctl enable cloudreve
systemctl status cloudreve

2、安装mariadb

卸载安装的包:rpm -qa|grep maria

安装依赖:yum install epel-release && yum install pv

安装数据库:yum install MariaDB-server -y

systemctl start mariadb
systemctl enable mariadb
mariadb --version
​
​
# 初始化配置:
mysql -uroot -p   # 回车直接登录
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';  #设置root密码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的新密码' WITH GRANT OPTION; # 允许远程访问
FLUSH PRIVILEGES;
2.1、配置网盘使用 MySQL 作为其数据库

创建数据库和用户

CREATE DATABASE cloudreve;
CREATE USER 'cloudreveuser'@'localhost' IDENTIFIED BY 'Huawei@123456';
GRANT ALL PRIVILEGES ON cloudreve.* TO 'cloudreveuser'@'localhost';
FLUSH PRIVILEGES;

配置 Cloudreve

vi /root/cloudreve/conf.ini

[Database]
Type = mysql
Port = 3306
User = cloudreveuser
Password = Huawei@123456
Host = 127.0.0.1
Name = cloudreve
TablePrefix = cd_
​
# TablePrefix代表,所有表名添加一个前缀 cd_
# Name 指数据库名称

启动 Cloudreve:./cloudreve

在图片上传到cloudreve上了,在数据库里面查询,发现是有的。

经过测试,重启服务器后,数据库服务和cloudreve服务都会自动起来。

3、yum安装nginx,反向代理

安装:yum install nginx

在/etc/nginx/nginx.conf文件中发现“include /etc/nginx/conf.d/*.conf”。

vi /etc/nginx/conf.d/cloudreve.conf
server {
    listen       80;
    listen       443 ssl http2;
    listen       [::]:80;
    listen       [::]:443 ssl http2;
    server_name  ppyython.cn www.ppyython.cn;
​
    # 反向代理设置
    location / {
        proxy_pass http://192.168.10.11:5212; # Cloudreve 监听的地址和端口
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
​
        client_max_body_size 1000m;   # 上传的最大文件大小
    }
    ssl_certificate "/etc/nginx/ssl/server.crt";
    ssl_certificate_key "/etc/nginx/ssl/server.key";
    ssl_session_cache shared:SSL:1m;
    ssl_session_timeout  10m;
    ssl_ciphers HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers on;
   
​
    if ($scheme = http) {
        return 301 https://$server_name$request_uri;
    }
    
}

systemctl restart nginx

systemctl enable nginx

# 生成自签名证书:
mkdir /etc/nginx/ssl && cd /etc/nginx/ssl
openssl req -x509 -newkey rsa:2048 -nodes -keyout server.key -out server.crt -days 365 -subj "/CN=ppyython.cn"
​
echo "192.168.10.11 www.ppyython.cn" >> /etc/hosts
echo "192.168.10.11 ppyython.cn" >> /etc/hosts
# win上配置:C:\Windows\System32\drivers\etc\hosts
192.168.10.11 www.ppyython.cn
192.168.10.11 ppyython.cn

遇到问题:2024/12/04 21:38:44 [crit] 2168#2168: *17 connect() to 192.168.10.11:5212 failed (13: Permission denied)

解决问题:启用了 SELinux导致的,setenforce 0,记得前面关闭了。发现还有一条命令要执行

sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/sysconfig/selinux

sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config

4、yum 安装aria2

yum install epel-release && yum install aria2

aria2c --version

生成rpc秘钥:openssl rand -base64 32

把生成的秘钥存放一下,后面要用:rpc-secret=你的RPC密钥

mkdir -p /usr/local/aria2 && touch /usr/local/aria2/{aria2c.conf,aria2.session} && chmod 777 /usr/local/aria2/aria2*

vi /usr/local/aria2/aria2c.conf 
# 文件的保存路径(可使用绝对路径或相对路径), 默认: 当前启动位置
#dir=~/download
# 启用磁盘缓存, 0为禁用缓存, 需1.16以上版本, 默认:16M
disk-cache=32M
# 文件预分配方式, 能有效降低磁盘碎片, 默认:prealloc
# 预分配所需时间: none < falloc ? trunc < prealloc
# falloc和trunc则需要文件系统和内核支持, NTFS建议使用falloc, EXT3/4建议trunc
file-allocation=trunc
# 断点续传
continue=true
​
## 下载连接相关 ##
​
# 最大同时下载任务数, 运行时可修改, 默认:5
max-concurrent-downloads=5
# 同一服务器连接数, 添加时可指定, 默认:1
max-connection-per-server=15
# 最小文件分片大小, 添加时可指定, 取值范围1M -1024M, 默认:20M
# 假定size=10M, 文件为20MiB 则使用两个来源下载; 文件为15MiB 则使用一个来源下载
min-split-size=10M
# 单个任务最大线程数, 添加时可指定, 默认:5
split=5
# 整体下载速度限制, 运行时可修改, 默认:0
#max-overall-download-limit=0
# 单个任务下载速度限制, 默认:0
#max-download-limit=0
# 整体上传速度限制, 运行时可修改, 默认:0
max-overall-upload-limit=500kb
# 单个任务上传速度限制, 默认:0
max-upload-limit=50kb
# 禁用IPv6, 默认:false
disable-ipv6=false
# 禁用https证书检查
check-certificate=false
#运行覆盖已存在文件
allow-overwrite=true
#自动重命名
auto-file-renaming
​
## 进度保存相关 ##
​
# 从会话文件中读取下载任务
input-file=/usr/local/aria2/aria2.session
# 在Aria2退出时保存`错误/未完成`的下载任务到会话文件
save-session=/usr/local/aria2/aria2.session
# 定时保存会话, 0为退出时才保存, 需1.16.1以上版本, 默认:0
save-session-interval=30
​
## RPC相关设置 ##
​
# 启用RPC, 默认:false
enable-rpc=true
# 允许所有来源, 默认:false
rpc-allow-origin-all=true
# 允许非外部访问, 默认:false
rpc-listen-all=true
# 事件轮询方式, 取值:[epoll, kqueue, port, poll, select], 不同系统默认值不同
#event-poll=select
# RPC监听端口, 端口被占用时可以修改, 默认:6800
rpc-listen-port=6800
# 保存上传的种子文件
rpc-save-upload-metadata=false
rpc-secret=j73xB2DlsW04tIZae4lidVx9PG/zMplwueLUPMJ3nvs=
​
## BT/PT下载相关 ##
​
# 当下载的是一个种子(以.torrent结尾)时, 自动开始BT任务, 默认:true
#follow-torrent=true
# BT监听端口, 当端口被屏蔽时使用, 默认:6881-6999
listen-port=51413
# 单个种子最大连接数, 默认:55
#bt-max-peers=55
# 打开DHT功能, PT需要禁用, 默认:true
enable-dht=true
# 打开IPv6 DHT功能, PT需要禁用
enable-dht6=false
# DHT网络监听端口, 默认:6881-6999
#dht-listen-port=6881-6999
# 本地节点查找, PT需要禁用, 默认:false
bt-enable-lpd=true
# 种子交换, PT需要禁用, 默认:true
enable-peer-exchange=true
# 每个种子限速, 对少种的PT很有用, 默认:50K
#bt-request-peer-speed-limit=50K
# 客户端伪装, PT需要
peer-id-prefix=-UT341-
user-agent=uTorrent/341(109279400)(30888)
# 当种子的分享率达到这个数时, 自动停止做种, 0为一直做种, 默认:1.0
seed-ratio=1.0
# 强制保存会话, 话即使任务已经完成, 默认:false
# 较新的版本开启后会在任务完成后依然保留.aria2文件
#force-save=false
# BT校验相关, 默认:true
#bt-hash-check-seed=true
# 继续之前的BT任务时, 无需再次校验, 默认:false
bt-seed-unverified=true
# 保存磁力链接元数据为种子文件(.torrent文件), 默认:false
#bt-save-metadata=false
#仅下载种子文件
bt-metadata-only=true
#通过网上的种子文件下载,种子保存在内存
follow-torrent=mem
# 开机自启:
cat << eof > /etc/systemd/system/aria2.service
[Unit]
Description=Aria2c download manager
After=network.target
​
[Service]
User=root
Type=forking
ExecStart=/usr/bin/aria2c --conf-path=/usr/local/aria2/aria2c.conf -D
​
[Install]
WantedBy=multi-user.target
eof

systemctl start aria2 systemctl enable aria2

4.1、配置cloudreve

管理面板 ===》 离线下载节点 ===》点击编辑主节点

选择启动,主机接管离线下载任务

在「Aria2 RPC 设置」部分,填写以下信息:

  • RPC 地址:通常为 http://127.0.0.1:6800/

  • RPC 密钥:填写你在 aria2.conf 中设置的 rpc-secret

创建临时下载目录:

mkdir /root/cloudreve/aria2 && chmod 777 /root/cloudreve/aria2/

4.2、测试配置:

在 Cloudreve 中尝试添加一个离线下载任务,检查是否能够成功添加到 aria2 并开始下载。

离线下载是指用户通过特定的软件或服务,将网络上的文件先下载到服务商的服务器上,然后用户可以从服务器上下载文件到本地电脑或其他设备的过程。这个过程通常有几个特点:

  1. 节省本地资源:离线下载可以节省用户自己电脑的带宽和资源,尤其是对于大文件的下载,不需要长时间开启电脑。

  2. 突破网络限制:有些网络环境可能对下载速度有限制,或者某些资源在用户的网络环境下无法直接下载。通过离线下载服务,可以绕过这些限制。

  3. 提高下载速度:离线下载服务通常拥有较快的网络环境和服务器资源,因此可以提供比普通下载更快的速度。

  4. 方便性:用户可以在任何时间、任何地点,只要能连接到互联网,就可以从离线下载服务器上获取文件。

  5. 支持断点续传:即使下载过程中断,也可以从上次中断的地方继续下载,而无需重新开始。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值