家中废弃的手机有好几个啦,特别是屏幕碎了,但是性能还算不错的手机,扔了浪费,换屏又不值得,能否把安卓当作一台低功耗的服务器使用呢?
等我有空了研究一下,当作一个小型的服务器也不错啊。
这篇文章非教程,只是记录一下我研究的过程! 会比较啰嗦,见谅!
Termux下载Termux官网: https://termux.com/
官网推荐下载地址: https://f-droid.org/packages/com.termux/
Termux安装自行百度,很简单就是一个app。 安装完以后,我的第一个想法,能否通过电脑ssh远程这台手机呢?这个暖心键盘操作起来会比较爽。
Termnux安装ssh服务安装openssh
apt update
apt install openssh
启动sshd服务
sshd
这样手机上就安装好了 ssh并启动了服务。
哇,竟然真可以!这样直可以把安卓手机当Linux用啦!我在继续研究一下。 设置自动启动ssh服务
echo "sshd" >> ~/.bashrc
连接手机的ssh
手机查看当前用户名
whoami
我的显示结果为:
u0_a131
手机查看当前ip
ifconfig -a
我的手机当前的ip为 :192.168.101.156
连接测试电脑上运行:
ssh -p 8022 u0_a131@192.168.101.156
这里需要说明一下 手机上安装的ssh默认端口为
8022
,真没想到我一次就连接成功啦。那么问题来了,这里的用户u0_a131密码是多少啊? 那我们设置一下这个密码如何? 修改密码
passwd
在次连接
ssh -p 8022 u0_a131@192.168.101.156
输入我新设置的密码 123456,成功进来啦!!! 没想到这么简单,我的手机竟然变成了一台Linux服务器啦!!! 下面我尝试看看能不能安装jdk😝
执行以下代码:
pkg install wget && wget https://raw.githubusercontent.com/MasterDevX/java/master/installjava && bash installjava
上面的代码执行完成了,很快就出现上面的界面,我以为又轻松的成功了,然而并没有。
$ java -version
Bad system call
这咋办呢?暂时没有思路。
我又执行了一次:
wget https://raw.githubusercontent.com/MasterDevX/java/master/installjava && bash installjava
我在想会不会是path的环境变量没有配置,先去吃饭了,回来在搞搞。
经我发现java应该已经安装成功了,因为 /data/data/com.termux/files/usr/bin目录中实际上是有java的。 那就在换个思路吧! 会不会是没有权限的呢?会不会java需要有root权限来执行呢?
安装proot
pkg install proot
执行
termux-chroot
网上说,这样就可以获取root权限。但是我看前面的$还是没变啊。 运行完成后再次执行 每次进来还要手动执行termux-chroot设置自启动
java -version
运行成功啦,这也太爽了!有了java就可以玩太多的东西啊。这台安卓手机已经不是一台普通的手机啦,成了服务器啦。 来了解一下这台服务器的配置信息吧。
top
不看不知道,一看吓一跳,这不就是我手机上的信息吗?这里的com.tencent.mm应该是腾讯的app的进程吧。我本以为这个Termux只是一个安卓模拟器,看来没那么简单啊。感觉这更像是linux的终端啊。
在Mac上我使用 sftp工具FileZilla把springboot.jar上传到手机上啦。 这个会ssh的应该都会吧?不清楚怎么用的看这里: https://blog.csdn.net/lxyoucan/article/details/111191642
运行 spring boot项目java -jar springboot.jar
竟然运行成功啦!刷新了我对安卓手机的认知了。 然后浏览器中访问:http://192.168.101.156:8082/ 竟然正常可以访问!这哪个手机啊,这不就是低功耗的linux服务器吗?
看这里 《Android手机运行图形界面的LINUX环境》
已知问题我在启动我的spring boot 项目后,发现项目中用到的数据源无法正常访问。 我猜测应该是 dns对域名解析的问题,暂时未解决,有空在研究吧。
/etc/resolv.conf #若此文件为空,则 rm /etc/resolv.conf echo “nameserver 8.8.8.8” >> /etc/resolv.conf
未完待续空闲时间研究中,支持更新中。。。
参考文档: 《Termux 高级终端安装使用配置教程》 https://www.sqlsec.com/2018/05/termux.html 《如何用你的安卓手机运行springboot vue mysql》 https://blog.csdn.net/qq_37733317/article/details/104193850 《通过ssh登录到手机 Termux》 https://www.cnblogs.com/abeen/p/9911987.html 《termux开启ssh服务与连接(用户密码登录)》 https://blog.csdn.net/qq_40088207/article/details/104863228 《Termux Java》 https://github.com/MasterDevX/Termux-Java