最近因疫情闲在家,就折腾起了自己的旧手机
准备
- 一部已经获得root权限的手机
若是ov华等无法获取root的手机,建议拿去换剪刀,本文以 redmi note7 pro 为例,已刷机安卓11类原生 - 一台能够使用ssh终端的设备
安装linuxdeploy并配置
下载 linuxdeploy,安装到旧手机
请确保安装的linuxdeploy版本≥2.0,否则需要首先安装busybox。而2.0以上的linuxdeploy内置了busybox
打开linuxdeploy软件,点击左上角按钮,选择设置,勾选【锁定wi-fi】与【CPU唤醒】,其他选项按需配置,亦可保持默认
回到上一级页面,点击右下角按钮,进行以下配置:
配置
引导设置
- 【发行版GNU/Linux】 建议选择Debian或centos,它们在linuxdeploy运行的兼容性更好
- 【架构】一般都选择arm64(Debian)或aarch64(centos),软件也会自动识别适合你的手机的架构,若特殊情况请搜索关键词 ‘{你手机的cpu}+架构’
- 【发行版GNU/Linux版本】按需选择,一般选择buster或stable
- 【源地址】建议改为国内源:http://mirrors.163.com/debian ,保持默认亦可
- 【安装类型】按需设置,建议选择镜像文件,因为它是一个单镜像文件
- 【安装路径】默认为
${EXTERNAL_STORAGE}/linux.img
,一般保持默认即可 - 【镜像大小】按需设置,若需搭建网盘服务,建议设置较大大小,可以使文件有足够的空间存储在linux镜像空间内,省去挂载手机存储的麻烦
- 【文件系统】ext4
- 【用户名】自行设置,建议设置为 root
- 【用户密码】自行设置
- 【特权用户】按需设置,一般保持默认
- 【本地化】简体中文选择zh_CN.UTF-8,按需设置
- 【DNS】按需设置,或保持默认
初始化
- 【启用】勾选以启用初始化功能
- 【初始化系统】选择sysv
- 【初始化设置】视情况设置,或保持默认
挂载
Source:手机目录 Target:Linux目录 使用能够查看到真实路径的文件浏览器,复制需要挂载的目录到挂载点列表,填入第一行即可
SSH
务必勾选启用SSH服务器,SSH设置按需配置
声音服务
按需配置
图形界面
按需配置
配置完成后,返回上一级,点击右上角按钮,点击安装,等待出现<<< deploy
即安装完成。
点击停止按钮并确定,再点击启动,出现<<< start
即启动成功
然后即可使用同一局域网下的ssh工具连接
为了防止旧手机的内网ip地址变更,在路由设置页面进行ip与MAC绑定,并把手机wifi连接中的隐私设置相关选项改为 使用设备MAC
连接后,安装常用工具
apt install wget vim curl zip -y
附: xshell工具家庭/学校版下载连接 https://www.xshell.com/zh/free-for-home-school/
安装并配置cloudreve
项目发行地址:cloudreve
截止到撰写本文(2022.01),最新版本为3.4.2
执行以下命令
切换到用户目录
cd /opt
创建文件夹并切换
mkdir cloudreve&&cd cloudreve
下载cloudreve
wget https://github.com/cloudreve/Cloudreve/releases/download/3.4.2/cloudreve_3.4.2_linux_arm64.tar.gz
根据需求自行选择下载的版本并替换wget后的链接
解压
tar -zxvf cloudreve_3.4.2_linux_arm64.tar.gz
赋予权限
chmod +x ./cloudreve
启动
./cloudreve
在终端中会给出初始管理员账号与密码,使用该账号登录
若无法访问,查看防火墙是否开放端口
进入cloudreve后,点击右上角头像,进入管理面板,即可进行相关设置,具体参见cloudreve官方文档
需要注意的是,在配置使用本机存储策略的用户组时,若存储目录在镜像空间内,要确保【初始容量】小于【镜像大小】,否则会无法上传任何文件
通过aria2实现离线下载
cloudreve内置了依赖于aria2的离线下载功能,因此需先进行aria2的配置
安装并配置aria2
安装
apt install aria2 -y
下载由P3TERX提供的aria2配置文件(亦可选择其他配置或参考aria2官方文档自行创建)
cd
wget https://github.com/P3TERX/aria2.conf/archive/master.zip
unzip master.zip
将解压出的文件夹重命名为.aria2
mv aria2.conf-master .aria2
修改aria2配置文件
cd .aria2&&vim aria2.conf
P3TERX 的配置文件包含了中文注释,根据注释按需修改即可,一般需要改动的是下载目录、RPC密钥与BT监听端口,其他保持默认即可
配置修改完成后,在.aria2目录内,执行./tracker.sh
即可更新tracker
若更新失败,可进行手动更新,参考以下tracker列表
https://trackerslist.com/all_aria2.txt
将列表内容复制到aria2.conf
中的bt-tracker
参数后即可
创建aria2.session文件
touch aria2.session
测试aria2能否成功启动
aria2c --conf-path=/root/.aria2/aria2.conf
第一次启动需要指定配置文件,日后启动只需使用aria2c
即可
若启动成功,关闭即可,接下来进行进程保护配置,方便后续操作
守护cloudreve与aria2进程
cloudreve与aria2运行后,若关闭ssh终端,二者也会随之停止运行,因此需要进行进程守护,本文是使用 supervisor
安装
apt install python-setuptools -y
apt install supervisor -y
cloudreve
为cloudreve创建配置并打开配置文件 sudo vim /etc/supervisor/conf.d/cloudreve.conf
将以下内容按需修改后,写入cloudreve的supervisor配置文件,具体参见supervisor官方文档
[program:cloudreve]
directory=/opt/cloudreve
command=/opt/cloudreve/cloudreve
autostart=true
autorestart=true
stderr_logfile=/var/log/supervisor/cloudreve.err
stdout_logfile=/var/log/supervisor/cloudreve.log
environment=CODENATION_ENV=prod
以上内容备注: 程序目录=/opt/cloudreve 运行命令(绝对路径)=/opt/cloudreve/cloudreve 自启动=true 自动重启=true 错误日志保存路径= 其他日志保存路径= 环境=
aria2
与上同理
为aria2创建配置并打开配置文件
sudo vim /etc/supervisor/conf.d/aria2.conf
将以下内容按需修改后,写入aria2的supervisor配置文件,具体参见supervisor官方文档
[program:aria2]
directory=/root/.aria2
command=aria2c --conf-path=/root/.aria2/aria2.conf
autostart=true
autorestart=true
stderr_logfile=/var/log/supervisor/aria2.err
stdout_logfile=/var/log/supervisor/aria2.log
environment=CODENATION_ENV=prod
以上内容备注: 程序目录=/root/.aria2 运行命令(绝对路径)=aria2c --conf-path=/root/.aria2/aria2.conf 自启动=true 自动重启=true 错误日志保存路径= 其他日志保存路径= 环境=
启动supervisor
supervisord -c /etc/supervisor/supervisord.conf
至此便完成了进程守护配置
如需管理supervisor内进程,参考以下指令:
sudo supervisorctl start cloudreve #启动
sudo supervisorctl stop cloudreve #停止
sudo supervisorctl status cloudreve #状态
附.网页管理supervisor进程配置:
在supervisor配置文件中(/etc/supervisor/supervisord.conf),添加以下内容
[inet_http_server]
port=127.0.0.1:8888
username=
password=
其中port、username、password参数可自行设置,若需外部访问,可将port设置为 0.0.0.0:8888
配置开机自启动
若在linuxdeploy中,初始化系统选择了sysv,则无需额外配置即可自启动supervisor及其中的程序 若使用run-parts初始化,需额外配置.
配置cloudreve离线下载功能
登录cloudreve管理页面,选择 离线下载节点 ,修改 主机(本机) 节点
- 启用离线下载
- 参考配置
- RPC服务地址,由于cloudreve与aria2运行在同一台服务器(旧手机)上,故填写127.0.0.1:
4. RPC令牌,与 Aria2 配置文件中rpc-secret保持一致 5. 临时下载目录,填写绝对路径,并保证cloudreve具有此目录的权限 6. 额外参数配置,一般保持默认
完成配置后,点击下一步,修改杂项信息,再点击下一步,即可保存该节点配置
然后点击用户组,编辑用户组配置,允许进行离线下载
至此,所有配置完成,可在同一局域网下,打开cloudreve页面测试是否成功实现了个人云盘与离线下载功能