中兴F50开启USB调试 / ROOT使用chroot启动linux容器

前两天这F50不知道抽什么风,用着用着突然自己重启了。本来以为只是我的线供电不稳定,结果重启完之后一看WiFi名怎么变成ZTE_XXX了…再一进后台,果然数据都被清空了…还好我的数据都有备份,之前的文章和设置得以保留下来(虽然就两篇),就是那些服务得重新搭建一遍了,既然从头开始那就再记录下这个过程吧。

前提准备

确保你的Type-C线和电脑能稳定给CPE供电,并传输数据。

本文所用到的刷机文件可在此找到:https://share.greepar.uk/f50-usbdebug

打开USB调试

先用USB数据线连接好F50

连接WiFi进入后台登录,然后浏览器打开

http://192.168.0.1/index.html#usb_port

勾选打开,并应用

在F50安装软件

在电脑输入

adb install <软件>.apk

即可安装软件。

安装完成后在电脑安装scrcpy(https://github.com/Genymobile/scrcpy),就可以控制F50的安卓界面。

UFI-TOOLS

UFI-TOOLS(https://github.com/kanoqwq/UFI-TOOLS)是一个用于方便网页端查看F50状态的工具,

还可以设置ADB网络调试自启,安装Clash,WebSSH插件等等功能,

用adb安装完之后请先通过Scrcpy打开一遍,确保授予自启和保活权限,再访问:

https://192.168.0.1:2333

如果不打算ROOT的话到这里就结束了,现在就已经可以干很多事了。

如无法打开USB调试

重置完后本来还是可以直接开启adb调试的,但我开启之后还手贱把固件升级到了最新版本,如果升级的话你就会发现按照上面的方法开启不了adb了…

好在在网上查了下找到了降级方法,新版本固件开启adb调试就只能降级了。

先安装F50的刷机驱动

在执行刷机操作前,请一定要备份好数据 !并阅读里面的使用教程

降级之后再按照上面的方法开启adb调试就可以正常生效了:

开始ROOT

!请注意上面提供的ROOT包仅适用降级完之后的版本,没有降级到这个版本的话不要直接ROOT!

开机设置完之后点击一键ROOT那个bat,再插拔接上电脑等待启动即可,

重启完后看到桌面上出现Magisk就是root成功了。

安装chroot环境

在获得root权限后就可以使用效率更高的chroot来运行linux程序了

在这里还是按照 /firstblog/ 安装好Termux + ssh 在电脑连接

配置完之后输入su应该就会弹出root授权窗口,在继续之前先输入exit回到正常环境安装好一些常用的工具:

pkg update
pkg install wget tar util-linux -y

然后去官网下载ubuntu(https://cdimage.ubuntu.com/ubuntu-base/releases/),我这里选用25.10版本

wget https://cdimage.ubuntu.com/ubuntu-base/releases/25.10/release/ubuntu-base-25.10-base-arm64.tar.gz

进入su部署chroot:

su
mkdir -p /data/local/chroot/ubuntu
mv ubuntu-base*.tar.gz /data/local/chroot/ubuntu
cd /data/local/chroot/ubuntu
tar -xpf ubuntu-base*.tar.gz

#移除压缩包
rm -rf ubuntu-base*.tar.gz

#创建目录
mkdir -p /data/local/chroot/ubuntu/{proc,sys,dev,dev/pts,tmp}
chmod 1777 /data/local/chroot/ubuntu/tmp

#临时挂载目录
mount -t proc /proc /data/local/chroot/ubuntu/proc
mount -t sysfs /sys /data/local/chroot/ubuntu/sys
mount --bind /dev /data/local/chroot/ubuntu/dev
mount --bind /dev/pts /data/local/chroot/ubuntu/dev/pts

如果需要的话可暂时将Termux目录挂载到系统内便于传输文件:

mkdir -p /data/local/chroot/ubuntu/wpfiles/
mount --bind /data/data/com.termux/files/home /data/local/chroot/ubuntu/wpfiles

完成之后就可以进入chroot了:

chroot /data/local/chroot/ubuntu /bin/bash

进入chroot后会很多东西都做不了,还需要执行一遍

echo 'export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin' >> /etc/bash.bashrc

#退出重进一次
exit
chroot /data/local/chroot/ubuntu /bin/bash

尝试一遍使用apt安装软件,没问题那就成功了

apt install curl -y
curl

如果/tmp出现异常可以执行:

unset TMPDIR
export TMPDIR=/tmp
exec /bin/bash

需要注意的是,上述这些挂载(mount)操作在重启后都会被重置,所以每次重启进入chroot都需要再执行一遍mount挂载,为了方便的话可以创建一个启动sh:

nano start.sh
#!/system/bin/sh

mount -t proc /proc /data/local/chroot/ubuntu/proc
mount -t sysfs /sys /data/local/chroot/ubuntu/sys
mount --bind /dev /data/local/chroot/ubuntu/dev
mount --bind /dev/pts /data/local/chroot/ubuntu/dev/pts
chroot /data/local/chroot/ubuntu /bin/bash -c '
unset TMPDIR
export TMPDIR=/tmp
export PATH=/usr/sbin:/usr/bin:/sbin:/bin

#在这里添加你要启动的服务,例如
#php-fpm8.4
#service mariadb start
#service apache2 start
#nohup openlist start >/dev/null 2>&1
'

chroot部署自启

获得ROOT权限后可以使用更稳定的Magisk进行自启动服务

部署自启只需要把这个脚本复制到/data/adb/service.d/目录即可,在此目录下的sh都会开机自动被Magisk执行:

su
cp start.sh /data/adb/service.d/chroot-autostart.sh
#赋执行权限
chmod 755 /data/adb/service.d/chroot-autostart.sh
reboot

等待重启服务将会自动启动

5 条评论

正在加载评论...

发表评论

编辑评论