斐讯N1+ARMBIAN+宝塔+APACHE+MYSQL+PHP+CLOUDREVE+ARIA2实现云存储+离线下载服务器
漫步云端服务器 http://chdong.top/bbs/ http://www.chdong.top/
看到很多人提到不建议在N1的armbian中安装宝塔,因为无法安装WEB环保,于是写一个简单的内容来给大家提供一些灵感。
写在前面:
因为宝塔环境安装Arm系统的兼容性并不好,所以需要做的工作会稍多一些,但安装完成后的使用体验还是很不错的!
我的使用场景是简易的家庭存储+低功耗离线下载服务器
使用到了N1+250G SSD硬盘
当然使用U盘也可以,但容量会较小,用于离线下载会有些捉襟见肘,所以推荐使用硬盘,因为供电的问题不推荐使用机械移动硬盘!(虽然有一块320G的2.5吋硬盘,我没有实际测试过。)
本教程从刷入Armbian开始,未涉及降级部分
教程开始:
安装Armbian系统。
这部分网上的教程非常的多,所以我只简单的介绍下。
1.下载地址:N1选择S905
孤岛下载:http://cloud.feiji.work/s/49myr109 (已经开启了X-Sendfile我自己测试下载速度有所提升)
官方下载(速度较慢):https://yadi.sk/d/pHxaRAs-tZiei
下载完成后刷入到硬盘/U盘
这儿使用的是balenaEtcher,比较推荐
官方下载:https://www.balena.io/etcher/ (可能会比较慢)
孤岛下载:http://cloud.feiji.work/s/46p6ns9y (也可能很慢啦,但可以用工具下载!)
然后重新插拔一次硬盘,这时电脑上会多出一个分区“BOOT”
进入到目录:/boot/dtb
替换为恩山论坛大佬的dtb文件(注:我在写这篇文章的时候基于5.77版,这个版本的内核虽然已经很不错,但是空闲时负载较高,所以还是换为大佬的dtb)
下载地址:http://cloud.feiji.work/s/ddd09jgp
将下载好的meson-gxl-s905d-phicomm-n1.dtb 替换掉dtb目录的同名文件,也可以将原文件备份一下
返回目录:/boot
编辑文件:uEnv.ini
替换第一行内容为:
dtb_name=/dtb/meson-gxl-s905d-phicomm-n1.dtb
如果不进行配置很可能出现无网络的情况。
将硬盘接入N1的USB接口启动。
设置好armbian的密码后开始
环境配置
漫步云端服务器 http://chdong.top/bbs/ http://www.chdong.top/
我在写内容时操作均在/root目录进行。
开始安装宝塔(此处请使用我提供的这个脚本进行安装,删除了官方脚本的防火墙部分,避免安装后端口被封而无法链接SSH,当然也可以安装官方原版,后使用键盘连接N1,手动关闭防火墙。):
注,如果安装过程中出错,建议选择最新的版本进行安装!已经同步至6.9.4
6.9.1版安装:
wget https://www.feiji.work/n1/bt/install.sh && sudo bash install.sh
6.9.3版安装:
wget https://www.feiji.work/n1/bt/6.9.3/install.sh && sudo bash install.sh
6.9.4版安装:
wget https://www.feiji.work/n1/bt/6.9.4/install.sh && sudo bash install.sh
会自动安装相关的依赖,比较简单。
但过程中很可能出错,基本都是网络原因,不建议更换软件源,因为科大或aliyun,163的源arm版都不太完整,而官方源在网络高峰时期会非常缓慢,而导致下载失败而使得安装失败或过程中有错误。
debian系linux,更换apt-get官方源为国内源
避开网络高峰时段安装还是不错的选择(注意中/美日夜相反哦)
安装完成后进入后台登录后提示程序异常,则说明安装过程中出错了,再次执行安装脚本,网络闲时通常一次就可以安装通过。
安装完成后不要立即在后台开始安装WEB环境,因为PHP和Mysql缺乏依赖而不可能成功。
下载libiconv:
wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.13.1.tar.gz
如果下载非常缓慢,可以从我提供的下载地址,下载完成后通过SFTP或宝塔后台将文件上传到/root目录。
下载地址:http://cloud.feiji.work/s/xs8ikivz
解压下载回来的libiconv,并进入到该目录。
tar zxvf libiconv-1.13.1.tar.gz
cd libiconv-1.13.1
配置libiconv
./configure -prefix=/usr/local
如果失败指定arm机型使用(网友反馈):
./configure -prefix=/usr/local --build arm-pc-linux
编译安装
make
make install
创建一个文件链接到Libiconv库
ln -s /usr/local/lib/libiconv.so /usr/lib
ln -s /usr/local/lib/libiconv.so.2 /usr/lib/libiconv.so.2
然后就可以进入宝塔后台安装WEB环境了
过程中依然很可能,基本都还是与源之间的网络原因。
推荐安装Apache 2.4 / PHP 7.2 / Mysql 5.6
内存占用还可以接受。
下面是截图:
创建网站
如果是宽带用户,很可能封80、8080端口,建议自定义端口,没有域名就直接用IP,仅内网用用,就啥也不用干了!如果是移动宽带,很可能是个大局域网,就需要做内容穿透了,但如果把外网服务器放在国内就得B案,且费用不会很便宜,放在国外延时速度太慢,意义真的不大,所以这个教程就不写了!
电信宽带基本都可以直接80端口,部分可能需要改端口。
注意:如果是IPv6网络,绑定域名或可能会出现Apache因为端口冲突无法启动的问题。
我的解决办法简单粗暴。
例如我就直接IPv6用999端口,IPv4用80/666端口(测试环境是移动宽带,封80,所以外网我用了其它端口)
Listen 80
Listen 81
Listen [::]:82
保存,重新加载配置再点启动就OK了!
在软件管理中开启PHPinfo扩展
禁用函数可根据自身实际情况去修改,我自身准备做一个云转码,所以开启了比较多高风险的函数(纯折腾,毕竟N1这配置还要啥自行车?)
到此环境配置就完成了
安装Cloudreve+Aria2
Cloudreve是国产的云存储中表现非常不错的一个,持续维护更新中。有官方论坛可以答疑,体验非常不错,但使用了Mysql,对N1来说有些压力。不过实测效果还不错,不想安装Mysql的话也可以直接用可道云,体验也是非常好的,但不能结合aria2实现离线下载,很是遗憾。
下载最新版Cloudreve:https://cloudreve.org/download.php
官方的安装说明:https://github.com/HFO4/Cloudreve/wiki/安装说明
直接在宝塔后台下载或电脑端下载后上传都可以,直接将压缩包上传到网站根目录后用宝塔解压即可。
输入:http://你的域名或IP/CloudreveInstaller
按提示完成安装就可以了
Aria2的编译安装与配置
下载并解压最新的aria2
cd /root
wget https://github.com/aria2/aria2/releases/download/release-1.34.0/aria2-1.34.0.tar.bz2
tar -jxv -f aria2-1.34.0.tar.bz2
编译并安装
cd aria2-1.34.0
./configure
make
make install
安装完成后就可以开始配置Aria2了
注:以下为简单配置,如果使用过程中出现问题,请转到下方使用官方完整的配置办法!
简单配置方式:
在/etc/aria2/中新建一个aria2.conf文件
mkdir /etc/aria2
yum install nano
nano /etc/aria2/aria2.conf
写入以下内容:其它配置内容可以根据自身的需要进行修改,我这是一个极为简单的配置。
#是否启用RPC服务,设置为true
trueenable-rpc=true
#RPC服务端口,默认是6800
rpc-listen-port=6800
#设置PRC服务的密钥,在后的配置中会用到,可以自己设定具体内容
rpc-secret=feiji.work#这段内容不要删除,用于解决Aria2与Cloudreve系统对接的权限问题!
on-download-complete=/root/hook.sh
完成后按Ctrl+X 退出 再按“Y”不要修改文件名,直接回车保存即可。
标准配置方式:
下载配置文件
wget --no-check-certificate -O "/etc/aria2/aria2.conf" "https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/other/Aria2/aria2.conf"
下载DHT文件
wget --no-check-certificate -O "/etc/aria2/dht.dat" "https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/other/Aria2/dht.dat"
新建aria2.session 用于存储任务,防止重启后任务丢失!
touch /etc/aria2/aria2.session
编辑aria2.conf文件的密码以及添加离线下载后续处理的脚本路径。
修改的内容:
修改:
dir=/www/wwwroot/www.xxx.com/downloads
rpc-listen-port=6800底部添加:
on-download-complete=/root/hook.sh
也可直接复制我以下带码完全覆盖下载来的aria2.conf配置文件!
## '#'开头为注释内容, 选项都有相应的注释说明, 根据需要修改 ##
## 被注释的选项填写的是默认值, 建议在需要修改时再取消注释 #### 文件保存相关 ### 文件的保存路径(可使用绝对路径或相对路径), 默认: 当前启动位置
dir=/www/wwwroot/www.xxx.com/downloads
# 启用磁盘缓存, 0为禁用缓存, 需1.16以上版本, 默认:16M
#disk-cache=32M
# 文件预分配方式, 能有效降低磁盘碎片, 默认:prealloc
# 预分配所需时间: none < falloc ? trunc < prealloc
# falloc和trunc则需要文件系统和内核支持
# NTFS建议使用falloc, EXT3/4建议trunc, MAC 下需要注释此项
# file-allocation=none
# 断点续传
continue=true## 下载连接相关 ### 最大同时下载任务数, 运行时可修改, 默认:5
max-concurrent-downloads=10
# 同一服务器连接数, 添加时可指定, 默认:1
max-connection-per-server=5
# 最小文件分片大小, 添加时可指定, 取值范围1M -1024M, 默认:20M
# 假定size=10M, 文件为20MiB 则使用两个来源下载; 文件为15MiB 则使用一个来源下载
min-split-size=10M
# 单个任务最大线程数, 添加时可指定, 默认:5
split=20
# 整体下载速度限制, 运行时可修改, 默认:0
#max-overall-download-limit=0
# 单个任务下载速度限制, 默认:0
#max-download-limit=0
# 整体上传速度限制, 运行时可修改, 默认:0
max-overall-upload-limit=1M
# 单个任务上传速度限制, 默认:0
#max-upload-limit=1000
# 禁用IPv6, 默认:false
disable-ipv6=false## 进度保存相关 ### 从会话文件中读取下载任务
input-file=/root/.aria2/aria2.session
# 在Aria2退出时保存`错误/未完成`的下载任务到会话文件
save-session=/root/.aria2/aria2.session
# 定时保存会话, 0为退出时才保存, 需1.16.1以上版本, 默认:0
save-session-interval=60## 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授权令牌, v1.18.4新增功能, 取代 --rpc-user 和 --rpc-passwd 选项
rpc-secret=feiji.work
# 设置的RPC访问用户名, 此选项新版已废弃, 建议改用 --rpc-secret 选项
#rpc-user=<USER>
# 设置的RPC访问密码, 此选项新版已废弃, 建议改用 --rpc-secret 选项
#rpc-passwd=<PASSWD>
# 是否启用 RPC 服务的 SSL/TLS 加密,
# 启用加密后 RPC 服务需要使用 https 或者 wss 协议连接
#rpc-secure=true
# 在 RPC 服务中启用 SSL/TLS 加密时的证书文件(.pem/.crt)
#rpc-certificate=/root/xxx.pem
# 在 RPC 服务中启用 SSL/TLS 加密时的私钥文件(.key)
#rpc-private-key=/root/xxx.key## 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=-TR2770-
user-agent=Transmission/2.77
# 当种子的分享率达到这个数时, 自动停止做种, 0为一直做种, 默认:1.0
seed-ratio=0.1
# 强制保存会话, 即使任务已经完成, 默认:false
# 较新的版本开启后会在任务完成后依然保留.aria2文件
force-save=true
# BT校验相关, 默认:true
#bt-hash-check-seed=true
# 继续之前的BT任务时, 无需再次校验, 默认:false
bt-seed-unverified=true
# 保存磁力链接元数据为种子文件(.torrent文件), 默认:false
#bt-save-metadata=true# 服务器列表可自行添加
bt-tracker=on-download-complete=/root/hook.sh
再新建一个aria2.service服务文件
nano /lib/systemd/system/aria2.service
直接命令执行就可以了,不要在宝塔后台去建,如果习惯在宝塔后台建,记得建好了之后修改权限!
写入内容:
[Unit]
Description=aria2c[Service]
User=root
#此处的配置路径不要修改,跟着教程操作下来,已经为大家配置好了的
ExecStart=/usr/local/bin/aria2c --conf-path=/etc/aria2/aria2.conf
Restart=on-abort[Install]
WantedBy=multi-user.target
返回root目录(当然在任意目录都可以,但如果不喜欢在root目录,可以修改前面的脚本位置,如果不会,就按我默认的来即可)
cd /root/
新建hook.sh
touch hook.sh
输入内容:
#!/bin/sh
chmod -R 777 /www/wwwroot/xxx.com/downloads/
“/wwwroot/xxx.com/downloads/”此处实际录入你已经建立好的临时下载目录。
赋予文件执行权限
chmod +x hook.sh
重载daemon,让新的服务文件生效
systemctl daemon-reload
systemctl enable aria2
启动Aria2
systemctl start aria2
登入Cloudreve后台开始配置离线下载功能
RPC Server不要修改,如果使用的是非本机,记得开放防火墙端口。
RPC Token就是上面设置的密码了
设置好后保存设置即可。
测试离线下载通过:
特别说明:如果BT没有速度,如果你的N1在内网,那么应该是由于没有做端口映射。在路由器上做好映射端口:51413
如果速度很慢 那就尝试更新BT trackerslist
地址:https://github.com/ngosang/trackerslist
剩下的事情就是尽情去玩耍吧!!!
漫步云端服务器 http://chdong.top/bbs/ http://www.chdong.top/
斐讯N1+ARMBIAN+宝塔+APACHE+MYSQL+PHP+CLOUDREVE+ARIA2实现云存储+离线下载服务器相关推荐
- armbian宝塔_斐讯N1+Armbian+宝塔+Apache+Mysql+PHP+cloudreve+aria2实现云存储+离线下载服务器...
看到很多人提到不建议在N1的armbian中安装宝塔,因为无法安装WEB环保,于是写一个简单的内容来给大家提供一些灵感. 写在前面: 因为宝塔环境安装Arm系统的兼容性并不好,所以需要做的工作会稍多一 ...
- armbian 斐讯n1_树莓派/斐讯N1/ARMBIAN/安装HOME ASSISTANT
1.树莓派更换国内apt源(可选,中国大陆必须) sudo su echo 'deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ st ...
- debian重启ssh服务_秒变万能家庭服务器!斐讯N1 armbian安装指南
一直以来,我都想配置一台小型服务器放在家里玩一玩,但是x86架构的主机体积大功耗高,价格也不低.而树莓派的话,价格便宜一点,性能对于轻度使用也基本够用.可是树莓派仍然要两三百块钱,感觉还是有点贵.于是 ...
- 斐讯N1 安装mysql
最近弄了一个没用的斐讯N1,给刷成armbian,64位的CPU,4核,2G内存,8G存储,棒棒哒 怕8G存储弄数据弄容易坏,所以找了个破USB硬盘,打算将数据放在外接硬盘上,反正也只是为了测试而已 ...
- 斐讯N1 – 完美刷机Armbian教程
斐讯N1 – 完美刷机Armbian教程 原文 :鱼儿的博客 为什么买斐讯N1? 购买斐讯N1 降级关键分区 制作Armbian U盘 进入U盘armbian 刷armbian到emmc 坑爹问题-1 ...
- armbian 斐讯n1_斐讯N1安装Armbian
最近入手斐讯N1一枚,买的是白色未拆封,到手版本为V2.19_0307_NS,刚好省了降级的麻烦,以下为斐讯N1安装armbian操作过程. 开启adb调试模式 将N1通过HDMI连接显示器,将鼠标插 ...
- n1 armbian php,斐讯N1盒子armbian 5.77蓝牙连接详细步骤斐讯N1刷入armbian 5.77写入emmc...
斐讯N1盒子Armbian 5.77蓝牙连接详细步骤 1. 首先下载Armbian-5.77镜像包,因为做服务器用,所以我选的是debian无桌面版.斐讯N1刷入armbian 5.77写入emmc ...
- armbian 斐讯n1_记录一下斐讯N1盒子刷Armbian的各种坑
最近搞了一个斐讯N1盒子,准备拿来刷Armbian,也就是linux. armbian使用了AArch64架构,也就是说,是armv8,安装nodejs时注意下载armv8的版本. 斐讯N1盒子自带的 ...
- armbian n1 桌面_斐讯N1折腾记:运行 Linux 及优化 | 米V米
最后更新时间:2019年03月25日 此教程同样适用于斐讯 P1 咳咳咳,上篇教程教大家给斐讯 N1 降级并且刷了官改系统,可以当作一个电视盒子和下载机来使用. 有些小伙伴可能不想把它当作电视盒子,就 ...
最新文章
- 数据库性能测试方案示例
- ArcEngine对Blob字段赋值的方法
- Codeforces Beta Round #12 (Div 2 Only)【未完结】
- JAVA——保持cookie登录状态的HttpClient封装工具类
- Redis数据分布哈希后取模
- Node Sass does not yet support your current environment
- vue怎么合并两个视频_【软件分享】视频分割合并软件哪款好用呢?怎么剪切合并视频?...
- VSCode中Markdown目录显示异常
- python 惰性序列_菜鸟学飞自学Python(五)高阶函数
- powerbi如何创建参数_创建PowerBI「参数」轻松搞定动态分析
- 我的Android之路
- 瑞星云安全截获新感染病毒 6月感染网民263万
- DXBC2HLSL Tool
- CDA Level1 考试心得
- 【学习笔记】Java工程师成神之路-基础篇
- unity3d 取锚点位置_如何不靠看格子,确定一个字的首笔和后面每一笔画的位置?...
- forEach和map的区别,简单写了IE低版本的原形封装
- 智能车基础学习FTM模块
- 软件测试职位概要,系统测试工程师职位描述
- 【java图形化用户界面】猜数游戏
热门文章
- 跑腿app要有哪些功能呢?
- wifi驱动分析文档
- 易智瑞联合星辰天合等共同发起成立“地理信息国产生态创新联盟”
- 考核的目的在于激励团队成员努力工作
- 如何查看电脑是多少位系统?
- 文盲的Python入门日记:第六天,继续完善我们的MsSql类,支持查询结果的筛选和排序,以及日期类型
- ASP.NET Core基础知识(三)【依赖关系注入(服务)】
- 神经网络 顾晓东_顾晓东
- 国美金融贷款利用TencentOS tiny 确保通讯模块安全
- qlabel可以选中吗_PyQt5 控件学习(一个一个学习之QLabel)