【合作原创】使用Termux搭建可以使用的生产力环境(一)
前言
真没想到一个Termux我居然玩了一个月之多,我的初衷只是想探求在手机上进行编程的可能性,当然不是看看那种,而是真正能用的那种,结果没想到折腾来折腾去居然就花了要一个月的时间。是时候将这些折腾的内容汇总成文档了,不然过个半年一年了,自己都快忘光了。
我相信这篇文章会为打开大家新世界的大门。
鸣谢
对于这篇文章帮助最大的自然是B站的这位up:qwe5283,他的两个Termux相关的视频对我有巨大帮助,当然我也是在他的同意下才写的这个系列的文章。
qwe5283的个人空间-qwe5283个人主页-哔哩哔哩视频
【教程】用Termux搭建桌面级生产力环境_哔哩哔哩_bilibili
【Termux】关于此前教程内容的补充信息_哔哩哔哩_bilibili
材料准备
Android端
Android手机一台,Android版本不能太低,配置不能太低,CPU:骁龙865及以上,运行内存:8G及以上,存储:128G及以上。不需要root,可以说相当便捷了
Termux APP:建议Github上下载,Releases · termux/termux-app · GitHub
Termux-X11 APP:还是建议Github上下载,Release Nightly Release 20241128 · termux/termux-x11 · GitHub
PC端
RealVNC Viewer:VNC客户端,用于连接手机搭建的VNC服务器,下载地址:RealVNC7全自动安装脚本 v2.2.4使用教程_哔哩哔哩_bilibili
只需要安装客户端即可,不需要安装服务端
FinalShell:ssh工具,用于远程连接Termux,摆脱在手机上龟速敲命令
FinalShell官网
Filezilla Client:SFTP工具,用于远程连接手机查看目录结构以及传输文件,传输文件神器
Download FileZilla Client for macOS (Intel)
目前先放这些东西,以免放太多了让大家产生厌恶感,哈哈🤣
ADB工具(可选):用于下一步解除幻影进程杀手功能
环境准备
这一步Android11及以下手机可以忽略,因为Android12才推出了PhantomProcessKiller(幻影进程杀手)功能,这个功能会杀死占用过高CPU或者子进程过多(32个)的应用,会导致Termux出现Process completed (signal 9)错误
如果是小米手机就只需要进入开发者模式,打开“停止限制子进程”
这样就能关闭幻影进程杀手功能。
如果不是小米手机,或者开发者模式中没有这个选项,可以通过adb命令关闭
Android12以上
adb shell "settings put global settings_enable_monitor_phantom_procs false"
Android12
adb shell "device_config put activity_manager max_phantom_processes 65536"
安装与保活
安装Termux和Termux X11这两个APP到手机里,安装完成后先别急着用这个APP,首先就需要打开这个APP的应用信息
找到“省电策略”,进入省电策略后将后台配置改为“无限制”,不改的后果是Termux在手机息屏后会被系统刻意降低CPU功率,导致这个APP奇慢无比,性能严重下降,大概只有亮屏前台时15%的性能,如果在后台应用多的情况下被系统强制关闭。如果不该无限制,你只能保持Termux处于前台,且屏幕保持亮屏,这很有可能导致手机屏幕烧屏。
下一步就是对APP进行保活,防止其在后台被系统意外终止。小米/红米手机桌面从底部往上滑动,唤出进程列表页面,点击锁型图标,即可为应用加锁,防止被系统清理。
正式起航
哈哈,都1500多字了,正文才刚刚开始😂,我们终于可以打开Termux正式开始使用了,在安装ssh前只能在手机上手动输入命令。
我跟大家一样,我拿了一个什么都没装个的小米11,跟大家一起重新踏上安装Termux的旅程,保证我的教程不会出现问题
第一步:开启共享目录
termux-setup-storage
打开“授予管理所有文件的权限”这个开关,让Termux可以访问系统文件
第二步:切换源,不切换源安装软件实在太慢了
termux-change-repo
在这个界面直接用手机按回车即可
然后进入下个界面注意了!!需要通过屏幕键盘按下键选择到“Chinese Mainland”,然后必须按一下空格键确认选择才行!!否则是不生效的!!最后按回车完成该切换!!
第三步:安装openssh,这个主要是为了用FinalShell进行远程连接,这样就不需要慢吞吞在手机上敲命令了,我可以直接通过复制博客中的命令贴到FinalShell里,能省很多时间
pkg i -y openssh
第四步:设置用户密码
passwd
输入两遍密码即可,建议不要搞太复杂,以免两次密码输入的不一致
第五步:启动ssh
sshd
当然这样还没完,你得知道你自己是谁,和手机的IP地址才行,whoami,查看你自己是谁,ifconfig查看当前手机的IP地址
whoami
ifconfig
像我这台小米11用户名就是u0_a149,后面的149是随机生成的,大家的大概率不通。IP地址为192.168.0.210,然后我就可以用FinalShell连接上这台手机了。
FinalShell连接手机
在FinalShell中新建一个连接,将上一步的信息都填上,注意!!这里的端口是8022,而不是22,因为Termux没有root权限,无法使用1000以下的端口,因此默认的ssh端口为8022
点击“接受并保存”,即可连接上手机Termux
连上后就像这样:
sshd自启
为了防止各位每次重开Termux都需要手动输入sshd来打开远程连接,我这里介绍一下如何让sshd自启。我也是纳闷,这个Termux安装完居然也不自动生成一个.bashrc文件,还得自己去建一个,不像别的发行版,一般都自带。
touch .bashrc
nano .bashrc
进入nano文本编辑器,在其中输入
sshd
然后按ctrl+O,然后按一下回车键,确认保存,再按ctrl+X退出nano编辑器。然后大家可以划掉Termux,再重启,直接用FinalShell连,看看能不能直接连上,如果能说明sshd自启没有问题了。
常见问题
1、Github无法打开,这个懂得都懂,文章里不便说明
2、如何打开开发者人员选项,一般来说在手机的“全部参数信息”中,然后点击手机的系统版本号,连按6下即可打开手机的开发者人员选项,各个品牌的手机有所不同,请自行查阅相关信息
3、手机无法使用adb连接,需要在开发者人员选项中打开USB调试才可以,打开后需要同意连接的电脑USB调试才行
4、FinalShell无法连接上Termux,这里有很多种可能,第一个就是没有安装openssh。第二个没有输入sshd打开ssh连接,还有就是端口是8022而不是默认的22。第三个是没有改默认用户的密码,导致没有密码无法连接。
结语
该篇为《使用Termux搭建可以使用的生产力环境》的第一篇,带大家入门安装远程连接使用Termux,后面几篇这几天会慢慢更新,有问题大家可以在评论区指出,另外想要和作者吹水可以来群170618278,另外给up:qwe5283的视频多多三连,谢谢各位!!