安装 termux
从这里下载 termux
adb install ~/Downloads/termux-app_v0.118.0+github-debug_arm64-v8a.apk
安装 ssh 服务
请求权限时,总是选择默认选项,不让修改任何设置
pkg install root-repo
pkg upgrade
pkg install openssh
passwd # 设置好密码
sshd # 启动服务
链接 ssh 服务
ssh <ip of android device> -p 8022
# 使用刚刚设置的密码
# scp 本地文件路径 远程主机用户名@远程主机名或IP:远程文件保存的位置路径
# scp local_file remote_username@remote_ip:remote_folder
# scp -P 8022 .ssh.tar.gz 192.168.1.132:~/
# scp -r 本地文件夹路径 远程主机用户名@远程主机名或IP:远程文件夹保存的位置路径
# scp -r local_folder remote_username@remote_ip:remote_folder
扩展
# 批量安装需要的包
pkg add git wget curl
# 更换国内源
# https://mirrors.tuna.tsinghua.edu.cn/help/termux/ # 换源工具termux-change-repo
sed -i 's@^\(deb.*stable main\)$@#\1\ndeb https://mirrors.tuna.tsinghua.edu.cn/termux/termux-packages-24 stable main@' $PREFIX/etc/apt/sources.list
sed -i 's@^\(deb.*games stable\)$@#\1\ndeb https://mirrors.tuna.tsinghua.edu.cn/termux/game-packages-24 games stable@' $PREFIX/etc/apt/sources.list.d/game.list
sed -i 's@^\(deb.*science stable\)$@#\1\ndeb https://mirrors.tuna.tsinghua.edu.cn/termux/science-packages-24 science stable@' $PREFIX/etc/apt/sources.list.d/science.list
pkg update
# 发起手机存储的请求权限
termux-setup-storage
# proot可以为手机没有root的设备模拟root环境,不是真正的 root
pkg install proot
termux-chroot
# tsu 是su的 Termux 版本,是一个真正的 root 权限,root设备才能用,操作有风险
pkg install tsu
tsu # 切换 root用户
# 备份
termux-setup-storage
cd /data/data/com.termux/files
tar -zcf /sdcard/termux-backup.tar.gz home usr
# 不要将备份文件存储在 Termux 私有目录中,因为从设置中清除 Termux 数据后,这些目录也将被删除
# 恢复
termux-setup-storage
cd /data/data/com.termux/files
tar -zxf /sdcard/termux-backup.tar.gz --recursive-unlink --preserve-permissions
# 操作完成重启 Termux 即可恢复数据。
开发环境
Termux 可以完美的运行 C、Python、Java、PHP、Ruby等开发环境
编辑器
# 汉字乱码
vim .vimrc
# set fileencodings=utf-8,gb2312,gb18030,gbk,ucs-bom,cp936,latin1
# set enc=utf8
# set fencs=utf8,gbk,gb2312,gb18030
source .vimrc
PHP
# apache
pkg install apache2
apachectl start
# http://127.0.0.1:8080
# $PREFIX/share/apache2/default-site/htdocs/index.html
apachectl restart
apachectl stop
# 配置 PHP解析
# pkg install php-apache
# $PREFIX/etc/apache2/httpd.conf
# 文件末尾添加以下行
# LoadModule php7_module /data/data/com.termux/files/usr/libexec/apache2/libphp7.so
# <FilesMatch \.php$>
# SetHandler application/x-httpd-php
# </FilesMatch>
# 查找修改配置默认首页
# <IfModule dir_module>
# DirectoryIndex index.php index.html
# </IfModule>
# apachectl restart
# Apache is running a threaded MPM, but your PHP Module is not compiled to be threadsafe. You need to recompile PHP.
# AH00013: Pre-configuration failed
# 注释行 LoadModule mpm_worker_module libexec/apache2/mod_mpm_worker.so
# 启用行 LoadModule mpm_worker_module libexec/apache2/mod_mpm_prefork.so
# echo '<?php phpinfo(); ?>' > $PREFIX/share/apache2/default-site/htdocs/index.php
# http://127.0.0.1:8080
# 数据库
pkg install mariadb
cd /data/data/com.termux/files/usr/etc/
mkdir my.cnf.d
mysql_install_db # 初始化 mysql.user 表
nohup mysqld &
ps aux|grep mysql
mysql -u $(whoami) # 登录 Termux 用户
use mysql;
set password for 'root'@'localhost' = password('你设置的密码');# 修改 root 密码的 SQL语句
grant all on *.* to root@'%' identified by 'P@ssw0rd' with grant option; # 允许root远程访问
flush privileges;
quit;
# mysql_secure_installation # 以后可以使用这个命令设置密码
# nginx
pkg install nginx
nginx -t # 测试文件是否正常
nginx # 启动 nginx 服务 http://127.0.0.1:8080
pgrep nginx # 查看 nginx 进程PID号
nginx -s reload # 重启服务
nginx -s stop # 停止服务
# 解析PHP
pkg install php-fpm
vim $PREFIX/etc/php-fpm.d/www.conf
# 搜索 listen = /data/data/com.termux/files/usr/var/run/php-fpm.sock
# 改为 listen = 127.0.0.1:9000
vim $PREFIX/etc/nginx/nginx.conf
# worker_processes 1;
# events {
# worker_connections 1024;
# }
# http {
# include mime.types;
# default_type application/octet-stream;
# sendfile on;
# keepalive_timeout 65;
# server {
# listen 8080;
# server_name localhost;
# location / {
# root /data/data/com.termux/files/usr/share/nginx/html;
# index index.html index.htm index.php;
# }
# error_page 500 502 503 504 /50x.html;
# location = /50x.html {
# root /data/data/com.termux/files/usr/share/nginx/html;
# }
# location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /data/data/com.termux/files/usr/share/nginx/html$fastcgi_script_name;
# include fastcgi_params;
# }
# }
# }
echo '<?php phpinfo(); ?>' > $PREFIX/share/nginx/html/info.php
php-fpm # 启动 php-fpm 服务
nginx # 启动 nginx 服务
# pkg install php
# php -S 0.0.0.0:8888 -t www/
nodejs
pkg install nodejs-lts
npm install -g http-server
http-server # 启动 http-server 服务
# Cannot read property 'length' of undefined
vim $PREFIX/lib/node_modules/npm/node_modules/worker-farm/lib/farm.js
# 查找 , maxConcurrentWorkers : require('os').cpus().length
# 改为 , maxConcurrentWorkers : (require('os').cpus() || { length: 1}).length
python3
pkg install python -y
python -m pip install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple some-package
其它linux发行版
https://github.com/sqlsec/termux-install-linux
termux-api
从这里下载并安装termux-api最新匹配版本的 app。安装后给出需要的所有权限。
pkg install termux-api