欧亿体育
工作动态
我的位置: 首页 > 工作动态
Android 手机的高级终端 Termux 安装、使用
发布时间:2024-01-26 01:05
  |  
阅读量:
  |  
作者:
欧亿体育

 From:https://www.sqlsec.com/2018/05/termux.html

Termux 高级终端安装使用配置教程 :https://www.cnblogs.com/cutesnow/p/11430833.html
神器Termux 的使用记录:https://cloud.tencent.com/developer/article/1609398

adb shell 下使用 termux:https://github.com/alwaystest/blog/issues/68

ttyd --- Share your terminal over the web:https://github.com/tsl0922/ttyd

termux-app:https://github.com/termux/termux-app
python 脚本在手机或安卓系统上运行:https://www.zhihu.com/question/28654702
安装 python库 + tasker调用:https://www.jianshu.com/p/c239a7eaadba
AidLearning-FrameWork :https://github.com/aidlearning/AidLearning-FrameWork

安卓

  • termux(安卓5.0以上)。Termux 是 Android 手机上一个高级的终端模拟器软件,开源且不需要 root,支持 apt 管理软件包,十分方便安装软件包,完美支持 Python、PHP、Ruby、Go、Nodejs、MySQL等。Termux  相当于在安卓上搭建了一个 Linux 平台,所以在 Linux上 能干的事情很多在手机上也都办得到。由于安卓平台的开放性,类似 termux 的手机神器还有很多。不说各类强大的编程 IDE,单是 termux 这样的 Linux 平台类软件就很多,如 GnuRoot 系列,LinuxDisplay 系列等。这其中 termux 很受人欢迎。随着智能设备的普及和性能的不断提升,如今的手机、平板等的硬件标准已达到了初级桌面计算机的硬件标准,用心去打造完全可以把手机变成一个强大的工具.。termux 还有许多插件

  • gnuroot debian。GNU 属于大而全,里面啥模块都有,安装包也大,termux 如果不够用就直接用 GNU 。GnuRoot 可以执行 python,java,c,php 。(gnu更方便,直接 apt install python-scipy之类搞定)。

IOS 推荐

  • pythonista(付费)。pythonista 只针对 python

1、在 Android 上安装 Termux

安装 Termux 的三种方法:

Termux 是一个强大的终端仿真器,它提供了所有最流行的 Linux 命令,加上数百个额外的包,以便于安装。它不需要任何特殊的权限,可以使用默认的Google Play商店( ​https://play.google.com/store/apps/details?id=com.termux ),或者开源应用仓库 F-Droid  ( https://f-droid.org/repository/browse/?fdid=com.termux ) 来安装。安装后如图所示:

  • 1. 第一部分是 termux 官方网站和相关资源, github 和官方 wiki 有很多资源供进一步学习。
  • 2. 第二部分介绍了个包管理器命令 pkg,给出了四个命令。最后的 help 是通用的,前面分别是搜索/安装/升级包。跟 linux 的 apt/apt-get, python 的 pip 差不多,实际上直接用 apt 命令也可以的。

安装 Termux 后,启动它并使用 Termux 的 pkg 命令执行一些必要的软件安装。

  • 订阅附加仓库 root-repo :pkg install root-repo
  • 执行更新,使所有安装的软件达到最新状态:        apt update     // 更新源
            apt upgrade  // 升级软件包
  • 安装 Python:pkg install python

 安装和自动配置完成后,就可以构建你的应用了。

2、基本操作

长按屏幕

显示菜单项(包括复制、粘贴、更多),此时屏幕出现可选择的复制光标

从左向右滑动

显示隐藏式导航栏,可以新建、切换、重命名会话session和调用弹出输入法

 

显示扩展功能按键

扩展功能键是什么?就是PC端常用的按键如:ESC键,CTR键,TAB键,但是手机上难以操作的一些按键.

 

  • 方法一:从左向右滑动,显示隐藏式导航栏,长按左下角的 KEYBOARD。
  • 方法二:使用 Termux 快捷键:音量+ + Q键

3、更新源、升级软件包

下载安装后,要首先 更新、升级软件包,国内使用termux安装包多少有点尴尬,所以更换 Termux 清华大学源,加快软件包下载速度。

  • 编辑文件:vim /data/data/com.termux/files/usr/etc/apt/sources.list
  • 输入:deb https://mirrors.ustc.edu.cn/termux/apt/termux-main stable main

清华大学开源软件镜像站:https://mirrors.tuna.tsinghua.edu.cn/help/termux/

就将原来的官方源,替换为清华源了。( 可以将原来的源加上 # 来注释掉 )按 ESC 然后输入 :wq 保存并退出。上面是官方推荐的方法,其实还有更简单的方法,类似于 Linux 下直接编辑源文件:

vi  $PREFIX/etc/apt/sources.list  //直接编辑源文件

换源其实就是手动修改下面的三个文件

编辑 $PREFIX/etc/apt/sources.list 修改为如下内容

# The termux repository mirror from TUNA: deb https://mirrors.tuna.tsinghua.edu.cn/termux/termux-packages-24 stable main

编辑 $PREFIX/etc/apt/sources.list.d/science.list 修改为如下内容

# The termux repository mirror from TUNA: deb https://mirrors.tuna.tsinghua.edu.cn/termux/science-packages-24 science stable

编辑 $PREFIX/etc/apt/sources.list.d/game.list 修改为如下内容

# The termux repository mirror from TUNA: deb https://mirrors.tuna.tsinghua.edu.cn/termux/game-packages-24 games stable

换好源后,记得 update,但是不需要 upgrade:apt update

# 安装基本工具

pkg update
pkg install vim curl wget git unzip unrar
apt update	 // 更新源
apt upgrade  // 升级软件包

apt install git    // 分布式管理工具
apt install wget   // 下载工具
apt install vim    // vim编辑器
apt install tar    // 解压缩工具
apt install less   // termux下vim支持触摸移动光标移动位置

4、常用快捷键

Ctrl键是终端用户常用的按键,但大多数触摸键盘都没有这个按键。为此 Termux 使用音量减小按钮来模拟Ctrl键。 例如,在触摸键盘上按音量减小+ L发送与在硬件键盘上按Ctrl + L相同的输入。

Ctrl+A -> 将光标移动到行首
Ctrl+C -> 中止当前进程
Ctrl+D -> 注销终端会话
Ctrl+E -> 将光标移动到行尾
Ctrl+K -> 从光标删除到行尾
Ctrl+L -> 清除终端
Ctrl+Z -> 挂起(发送SIGTSTP到)当前进程

音量加键 也可以作为产生特定输入的 特殊键

音量加+E -> Esc键
音量加+T -> Tab键
音量加+1 -> F1(和音量增加+ 2→F2等)
音量加+0 -> F10
音量加+B -> Alt + B,使用readline时返回一个单词
音量加+F -> Alt + F,使用readline时转发一个单词
音量加+X -> Alt+X
音量加+W -> 向上箭头键
音量加+A -> 向左箭头键
音量加+S -> 向下箭头键
音量加+D -> 向右箭头键
音量加+L -> | (管道字符)
音量加+H -> 〜(波浪号字符)
音量加+U -> _ (下划线字符)
音量加+P -> 上一页
音量加+N -> 下一页
音量加+. -> Ctrl + \(SIGQUIT)
音量加+V -> 显示音量控制
音量加+Q -> 显示额外的按键视图

5、基本命令

Termux 除了支持 apt 命令外,还在此基础上封装了 pkg 命令,pkg 命令向下兼容 apt 命令。

pkg search               搜索包
pkg install            安装包
pkg uninstall          卸载包
pkg reinstall          重新安装包
pkg update                      更新源
pkg upgrade                     升级软件包
pkg list-all                    列出可供安装的所有包
pkg list-installed              列出已经安装的包
pkg show               显示某个包的详细信息
pkg files              显示某个包的相关文件夹路径

目录结构特殊环境变量 PREFIX

~ > echo $HOME
/data/data/com.termux/files/home

~ > echo $PREFIX
/data/data/com.termux/files/usr

~ > echo $TMPPREFIX
/data/data/com.termux/files/usr/tmp/zsh

长期使用 Linux 的朋友可能会发现,这个 HOME 路径看上去可能不太一样,为了方便,Termux 提供了一个特殊的环境变量:PREFIX

6、 更换配色

使用 zsh 来替代 bash 作为默认 shell。可以使用一键安装脚本来安装,执行下面这个命令确保已经安装好了curl,没有的话根据它的提示安装,你没安装的话,执行了下面这条语句,它会给你一条安装 curl 的语句的。

sh -c "$(curl -fsSL https://github.com/Cabbagec/termux-ohmyzsh/raw/master/install.sh)"

Android6.0以上会弹框确认是否授权,允许授权后Termux可以方便的访问SD卡文件。

 脚本允许后先后有如下两个选项:

Enter a number, leave blank to not to change: 14
Enter a number, leave blank to not to change: 6

分别选择 背景色字体 想要继续更改挑选配色的话,继续运行脚本来再次筛选:

~/termux-ohmyzsh/install.sh

exit 退出,重启 sessions会话生效配置,如想深入使用,请访问?GitHub

访问外置存储优化

执行过上面的 zsh 一键配置脚本后,并且授予文件访问权限的话,会在家目录生成 storage 目录,并且生成若干目录,软连接都指向外置存储卡的相应目录

 创建QQ文件夹软连接

手机上一般经常使用手机 QQ 来接收文件,这里为了方便文件传输,直接在 storage 目录下创建软链接。

QQ

ln -s /data/data/com.termux/files/home/storage/shared/tencent/QQfile_recv QQ

TIM

ln -s /data/data/com.termux/files/home/storage/shared/tencent/TIMfile_recv TIM

最后效果图如下:

这样可以直接在home目录下去访问QQ文件夹,非常方便文件的传输,大大提升了工作效率。http://mirrors.tuna.tsinghua.edu.cn/termux

oh my zsh 主题配色

编辑 .zshrc 配置文件

$ vim .zshrc

第一行可以看到,默认的主题是 agnoster 主题:

在 .oh-my-zsh/themes 目录下放着 oh-my-zsh 所有的主题配置文件。

下面是几款还可以的主题

agnoster

 robbyrussell

jaischeema 

re5et 

junkfood 

cloud 

random 

当然如果你是个变态的话,可以尝试random主题,每打开一个会话配色主题都是随机的.

ZSH_THEME="random"

编辑启动问候语

默认的启动问候语如下:

这个对于初学者有一定的帮助在前期,随着对Termux的熟悉,这个默认的问候语就会显得比较臃肿。编辑问候语文件直接修改问候语:

vim $PREFIX/etc/motd  //编辑问候语文件直接修改问候语

7、 管理员身份

手机没有 root

利用 proot 工具来模拟某些需要 root 的环境:pkg install proot

然后终端下面输:termux-chroot

就可以模拟 root 环境,在这个 proot 环境下面,相当于是进入了 home 目录,可以很方便地进行一些配置。

 在管理员身份下,输入 exit 可回到普通用户身份。

访问 sdcard 

如果要访问 sdcard 的目录,需要先运行:

termux-setup-storage

完成授权后,在$HOME目录会多出一个storage目录。安装完毕以后,换Termux包管理器换为国内的清华源,加快软件包下载速度。

ssh 连接

安装 SSH 服务:pkg install openssh
设置密码:passwd 
查询手机ip,以实际手机ip为准:ifconfig
查询当前用户:whoami
确认ssh服务的监听端口:netstat -ntlp | grep sshd

信息确认后就可以在电脑端 cmd 下输入连接了,命令如下(前提是电脑端openssh已经安上了):ssh u0_a123@192.168.0.1 -p 8022   

这里假定用户名为 u0_a123(whoami查询可得)。ip 为192.168.0.1(ifconfig查询可得)。至此,Termux 基本环境就搭好了!

开启 ssh 的指令是:

sshd
sshd -p 9000
上面的一个指令默认打开的端口是8022,后一个指定了新的端口9000。其他需要的软件自行安装。

安卓版 Linux --- Termux

https://zhuanlan.zhihu.com/p/92664273

安卓版 Linux --- Aid Learning

https://zhuanlan.zhihu.com/p/92161002

Termux 是一款安卓版的 Linux。 Aid Learning 是 Termux 的高仿!而且自带界面,自带Python!还是国产的。Aid Learning安装完毕后,需要等待,后台开始下载各种库。

官网:https://www.aidlux.com/product

下载地址:https://www.pianwan.com/app/121392

aid learning,一般又称 AidLux。

【AidLux是什么】:

  • AidLux是一个基于ARM构建,同时支持多生态融合(Android+Linux)环境的AI应用开发和部署平台,为开发者带来强大、简单、无限创意可能的奇妙体验!

【AidLux简介】:

  • 基于Android底层Linux kernel构建了完整Linux的环境,并且与Android环境同时提供于用户访问。在为用户提供和原生Linux系统类似的命令行使用体验(如通过 `apt` 命令进行包管理)的同时,构建了图形化桌面环境,用户可以直接通过触摸屏或浏览器访问。
  • AidLux补全了AI运行所需的所有基础科学计算包/库,支持了业界主流深度学习框架,并内置自主研发的AI智能加速技术,为开发者提供了一个“AI 就绪”的应用开发平台。

【AidLux强大的功能】

  • 1、一部设备同时运行两个系统环境,既是一部Android设备,同时也是一部Linux设备。两个生态的资源优势可同时被加以利用;
  • 2、集成主流AI框架(caffe、mxnet、keras、MNN、pytorch、tensorflow、ncnn、MindSpore、PaddlePaddle、TNN、opencv),无需配置,直接使用;
  • 3、海量的AI案例,人脸识别、人脸关键点识别、肢体识别、手势识别、头发识别、物体分类、物体跟踪、3D检测-、身体交换、换脸、人体抠图等。
  • 4、内置创新性的CPU+GPU+NPU智能加速技术,通过“硬件+框架+Op"多层优化,赋予深度学习运算性能的大幅度提升。并且提供统一API接口,在方便开发者调用的同时,还支持不同AI框架模型自动转换;
  • 5、支持多种开发语言:C/C++,Python,Java,JavaScript,Ruby,PHP,Go,Shell等;
  • 6、支持多种开发工具:AidCode,Wizard,VSCode,Jupyter notebook,pycharm,积木编程(青少年);
  • 7、扩展性好:内置了极简的外设极速互连模块,通过USB和网络等方式控制Arduino、机械臂、高清摄像机、深度相机等;
  • 8、丰富的Linux软件:Git,MySql,Hadoop,Nginx,Apache,Vim,SSH,ROS,PCL点云,Eigen,Home Assistant和g2o等多种工具;

极致安卓之 --- Termux 安装完整版 Linux

Termux 并非完整版 Linux,而是一个模拟环境,如果想基于 Termux 安装完整版 Linux,比如 Ubuntu、Debian、Kali 等,请参考: :https://zhuanlan.zhihu.com/p/95865982

安装基础件 proot-distro:pkg install proot-distro 
或者 apt install proot-distro
查看 proot-distro 的使用帮助为:proot-distro help

proot-distro list     查看可以安装的 Linux 系统。

安装以上系统就简单了: proot-distro install  

比如,我要安装ubuntu 20.04,指令为: proot-distro install ubuntu-20.04 

安装完成后,进入Linux发行版环境的指令为,比如安装的 ubuntu 为:proot-distro login ubuntu-20.04

每次进入 ubuntu 的命令太长,可以在 Termux 环境新建一个sh文件,比如新建u20.sh:vim u20.sh

输入如下内容(就是esc键+i键):proot-distro login ubuntu-20.04

然后退出(esc键+:键,再输入wq,回车),最后,在终端输入 ./u20.sh 就进入了真正的 linux 环境了。之后,传统操作比如换源,安装软件等等,一条龙走起来吧。输入 exit 可以退出登录的 linux 系统。

以上就是官方版的纯种Linux安装全过程。只要是国内源亲测安装没有bug,非常顺畅。

装完之后,现在开始安装 python 环境

apt install python3
apt install python3-pip

极致安卓 --- Termux/Aid Learning安装宇宙最强VS Code

https://zhuanlan.zhihu.com/p/106593146

把安卓手机性能发挥到极致之 --- Termux/Aid Learning使用Fortran

https://zhuanlan.zhihu.com/p/92280533

Termux 运行 gcc、gfortran

proot 介绍

wiki:https://wiki.termux.com/wiki/PRoot#Installing_Linux_distributions

手机已经 root

安装 tsu,这是一个 su 的 termux 版本,用来在 termux 上替代 supkg install tsu

然后终端下面输入:tsu  即可切换 root 用户,这个时候会弹出 root 授权提示,给予其 root 权限即可。

 在管理员身份下输入 exit 可回到普通用户身份。

8、 安装 python 和 必要模块

安装 Python2 和 Python3

  • 安装 python2.7:pkg install python2  安装完成后,使用 python2 命令启动
  • 安装 python3:pkg install python 安装完成后,使用 python 命令启动。 注意:pkg install python 安装的是最新版的 Python

升级 pip 版本

python2 -m pip install --upgrade pip
python -m pip install --upgrade pip

安装 ipython

ipython 是一个 python 的交互式 shell,支持变量自动补全,自动缩进,支持 bash shell 命令,内置了许多很有用的功能和函数。学习 ipython 将会让我们以一种更高的效率来使用 python。
先安装 clang,否则直接使用 pip 安装 ipython 会失败报错.

pkg install clang
pip install ipython
pip3.6 install ipython

然后分别使用 ipython 和 ipython2 进入 py2 和 py3 控制台:

编辑器

终端下有 vim 神器,并且官方也已经封装了 vim-python,对 vim 进行了 Python 相关的优化。

pkg install vim-python

解决 termux 下的 vim 汉字乱码

在家目录下新建 .vimrc 文件:vim .vimrc

添加内容如下:

set fileencodings=utf-8,gb2312,gb18030,gbk,ucs-bom,cp936,latin1
set enc=utf8
set fencs=utf8,gbk,gb2312,gb18030

然后 source 下变量:source .vimrc

效果图:

创建 Python 虚拟环境

有些第三方模块会依赖 python-dev,所以也可以装上

pkg install python, python2
pkg install python-dev, python2-dev

或者

apt install python python-dev python2 python2-dev

也可以创建一个 Python 虚拟环境。这是 Python 开发者的常见做法,它有助于让你的 Python 项目独立于你的开发系统(在本例中是你的手机)。在你的虚拟环境中,你将能够安装特定于你应用的 Python 模块。

$ python -m venv venv