CentOS7.9安装Nextcloud+ocDownloader+aria2使用Nextcloud网盘做离线下载服务器

本文详细指导如何通过宝塔安装PHP7.3支持Nextcloud,包括添加新站点、数据库管理、安装Nextcloud、ocDownloader配置和aria2集成,以及数据存储迁移和安全设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、网站基础环境安装
宝塔官网安装脚本语句

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh

安装完成后,会在最后显示登陆地址,和用户信息
安装完成后会有如图信息展示,可以复制到常用记事本保存
根据宝塔安装完成后给的地址进入宝塔面板,会提示选择推荐安装套件。
在这里插入图片描述
这里我选择PHP7.3,因为截至我装的时间节点,Nextcloud版本是23.0.3,它对PHP版本的最低要求是PHP7.3。
后期版本更新如果不对会有提示“This version of Nextcloud requires at least PHP xx ”,可以根据提示来切换PHP版本

2.添加新站点
套件安装完毕后正式进入宝塔面板,选择“网站”–>“添加站点”

填写站点信息

面板–>“数据库”–>“phpMyAdmin”–>“通过面板登录”.这里可以先点开“root密码”这一项将数据库root密码复制或者修改,下一步会用到。
面板-->"数据库"-->"phpMyAdmin"-->"通过面板登录"
登录数据库
在这里插入图片描述
创建数据库新用户并赋权,勾选创建同名数据库和全部权限。
在这里插入图片描述
在这里插入图片描述
二、安装nextcloud
1.进入nextcloud官网下载服务端程序,地址如下
https://nextcloud.com/install/#instructions-server
页面中选择Archive File标签页里的Download Nextcloud
下载完成后将zip包传到服务器上
2.把zip包解压到刚刚建立的网站站点目录下,并在宝塔面板中重新给站点目录赋权
[root@77 ~]# unzip -d /www/wwwroot/10.2.192.21/ nextcloud-23.0.3.zip
3.在宝塔面板中重新给站点目录赋权
宝塔面板->文件->勾选你的站点目录->权限->755权限并勾选“应用到子目录”
在这里插入图片描述
4.打开网站填写创建nextcloud站点的信息并开始安装
IE打开创建的网站,出现nextcloud网盘页面,创建管理员账号、设置数据存放目录、填写第三步创建的数据库信息,最后点击安装。
(忘记截图)
安装完成后就可以正常使用nextcloud网盘了

在这里插入图片描述
5.安装ocDownloader
在网盘页面右上角头像的菜单下选择应用,然后搜索“ocDownloader”,选择下载并启用
在这里插入图片描述
在这里插入图片描述
自动安装完成后,左上角会出现一个云的图标,点击进去已经可以使用了
在这里插入图片描述
6.安装配置aria2

[root@77 ~]# yum install aria2
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.tuna.tsinghua.edu.cn
 * epel: mirror.sjtu.edu.cn
 * extras: mirror01.idc.hinet.net
 * rpmfusion-free-updates: ftp-stud.hs-esslingen.de
 * updates: mirrors.tuna.tsinghua.edu.cn
软件包 aria2-1.34.0-5.el7.x86_64 已安装并且是最新版本
无须任何处理

我装完ocDownloader后aria2自动也装上了,但是新建离线下载的时候总是提示“确认返回GID为空!Aria2c是否以服务方式运行?”
在这里插入图片描述
这应该是虽然安装了aria2但是没有配置它造成的。

创建目录/etc/aria2赋权777

[root@77 etc]# mkdir /etc/aria2
[root@77 etc]# chmod 777 /etc/aria2

建立aria2的配置文件

[root@77 etc]# touch /etc/aria2/aria2.conf
[root@77 etc]# touch /etc/aria2/aria2.session
[root@77 etc]# chmod 777 /etc/aria2/aria2.conf
[root@77 etc]# nano /etc/aria2/aria2.conf
#用户名

#rpc-user=user

#密码

#rpc-passwd=passwd

#上面的认证方式不建议使用,建议使用下面的token方式

#设置加密的密钥

#rpc-secret=token

#允许rpc

enable-rpc=true

#允许所有来源, web界面跨域权限需要

rpc-allow-origin-all=true

#允许外部访问,false的话只监听本地端口

rpc-listen-all=true

#RPC端口, 仅当默认端口被占用时修改

rpc-listen-port=6800

#最大同时下载数(任务数), 路由建议值: 3

max-concurrent-downloads=1000

#断点续传

continue=true

#同服务器连接数

max-connection-per-server=5

#最小文件分片大小, 下载线程数上限取决于能分出多少片, 对于小文件重要

min-split-size=10M

#单文件最大线程数, 路由建议值: 5

split=10

#从会话文件中读取下载任务
input-file=/etc/aria2/aria2.session

#在Aria2退出时保存错误的、未完成的下载任务到会话文件
save-session=/etc/aria2/aria2.session

#定时保存会话, 0为退出时才保存, 需1.16.1以上版本, 默认:0
save-session-interval=60

#下载速度限制

max-overall-download-limit=0

#单文件速度限制

max-download-limit=0

#上传速度限制

max-overall-upload-limit=0

#单文件速度限制

max-upload-limit=0

#断开速度过慢的连接

#lowest-speed-limit=0

#验证用,需要1.16.1之后的release版本

#referer=*

#文件保存路径, 默认为当前启动位置

dir=/data/downloads

#文件缓存, 使用内置的文件缓存, 如果你不相信Linux内核文件缓存和磁盘内置缓存时使用

#disk-cache=0

#另一种Linux文件缓存方式

#enable-mmap=true

#文件预分配, 能有效降低文件碎片, 提高磁盘性能. 缺点是预分配时间较长

file-allocation=prealloc

#最小做种时间, 分钟

seed-time=30

#bt服务器设置

#bt-tracker=

以www用户权限启动aria2

[root@77 etc]# sudo -u www aria2c --conf-path=/etc/aria2/aria2.conf -D

然后创建一个下载任务,已经可以正常使用了
在这里插入图片描述

此时如果重启系统,aria2是不会随系统启动的,需要再创建一个服务文件

[root@77 etc]# touch /lib/systemd/system/aria2.service
[root@77 etc]# nano /lib/systemd/system/aria2.service

[Unit]
Description=Aria2c download manager
Requires=network.target
After=dhcpcd.service

[Service]
Type=forking
User=root
RemainAfterExit=yes
ExecStart=/usr/bin/aria2c --conf-path=/etc/aria2/aria2.conf --daemon
ExecReload=/usr/bin/kill -HUP $MAINPID
RestartSec=1min
Restart=on-failure

[Install]
WantedBy=multi-user.target

设置aria2服务开机自启动

[root@77 etc]# systemctl enable aria2
Created symlink from /etc/systemd/system/multi-user.target.wants/aria2.service to /usr/lib/systemd/system/aria2.service.
[root@77 etc]# systemctl start aria2

终于完成了。。。

三、另附更换数据存储位置方法
1.确认现有数据目录,可以cat一下nextcloud安装目录里的config.php确认。

[root@77 config]# cat config.php

找到里面’datadirectory’ 这一行
2.创建新目录

[root@77 config]#mkdir /data/nextcloud

3.将现有的数据目录拷贝至新目录

[root@77 config]#cp /www/wwwroot/nextcloud/data /data/nextcloud/

4.修改config.php里’datadirectory‘的路径配置

‘datadirectory’ => ‘/www/wwwroot/nextcloud/data’
改为
‘datadirectory’ => ‘/data/nextcloud/data’

5.修改新数据文件目录的用户组和权限

[root@77 config]#chown -R www:www /data/nextcloud
[root@77 config]#chmod 777 -R /data/nextcloud

6.最重要的一点,也是在目录更换的时候困扰了我最久的一点。
做完以上操作之后,你会发现nextcloud崩溃了!权限、目录设置、SELinux一顿检查,没问题啊!config.php里路径改回旧路径又正常使用了,但是狭小的旧目录又根本存不了多少东西。
关键操作就在于,网站环境中的“防跨站攻击(open_basedir)”是默认打开的,不是放在网站目录下的本地资源都是访问不了的。
进入宝塔面板->网站->点击nextcloud的站点名或者后面的“设置”->网站目录->去除“防跨站攻击(open_basedir)”的勾选
在这里插入图片描述

报错的nextcloud恢复正常,查看数据目录空间,已经扩大很多了。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值