LOADING

加载过慢请开启缓存 浏览器默认开启

Android6.0的旧手机玩Termux

1.旧手机安装Termux软件

因为我用的是旧手机,Android版本为6.0且没有被root,所以我选用Termux来模拟Linux环境

termux官方的github-actions里给了适合Android5.0和6.0版本的应用压缩包
我是用的是0.118.0通用版的termux,解压缩后就可以得到相应版本的termux安装包

2.查看termux官方源给的可以安装的包

pkg list-all

在某个包后面如果出现了installed,则说明这个包已经被安装了;第一步先查看官方源给的包的原因是当我们使用命令pkg install 某个package来安装某个包时,如果出现了Unable to locate package 某个package,是因为你想安装的这个包不在官方给的源里,需要另外去添加别人的源

3.添加源或更换源

pkg install vim

首先得安装vim这个文字编辑器,我这里用的是vim,不会vim语法的可以自行搜索

pkg install nano

或者安装nano这个文字编辑器,看自己哪个可以安装或者哪个熟悉就用哪个

vim $PREFIX/etc/apt/sources.list

进入官方的源文件,在手机输入法键盘i即可进入编辑模式,你可以在官方源前面加上#来注释保留,也可以删掉换成其他的源比如换成清华源deb https://mirrors.tuna.tsinghua.edu.cn/termux/termux-packages-24 stable main,当然也可以换成其他的源,这个可以自行搜索;
更改完成后,先在termux的虚拟键盘上按ESC进入命令模式,再在手机输入法键盘上依次输入:wq即可保存并退出vim

vim $PREFIX/etc/apt/sources.list.d/science.list

science.list也和上面的sources.list差不多,可以换成清华源deb https://mirrors.tuna.tsinghua.edu.cn/termux/science-packages-24 science stable,再保存并退出

vim $PREFIX/etc/apt/sources.list.d/game.list

game.list也可以换成清华源deb https://mirrors.tuna.tsinghua.edu.cn/termux/game-packages-24 games stable,再保存并退出

因为我在清华源和中科大的源里找不到一些termux官方源有的包,所以我没有更换源,就用的官方源,如果官方源安装不了包可能是网络问题,需要科学上网

4.给termux更换配色

termux-setup-storage #先得让termux获取手机存储权限
pkg install curl

首先安装curl以执行下面命令

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

然后这个命令会打开一个脚本,这个脚本先会弹出Enter a number, leave blank to not to change: ,可以输入数字0-43来选择你想要的色彩,你也可以在全部选择完成后,重新在termux中输入chcolor,它会列出具体的0-43这44种色彩
接着又会出现一个Enter a number, leave blank to not to change: ,也可以输入数字0-26来选择你想要的字体,你也可以在全部选择完成后,重新在termux中输入chfont,它会列出具体的0-26这27种字体

5.给termux更改启动问候语

vim $PREFIX/etc/motd

依旧输入i进行编辑,例如你可以复制粘贴国光大佬的

 _____                              
|_   _|__ _ __ _ __ ___  _   ___  __
  | |/ _ \ '__| '_ ` _ \| | | \ \/ /
  | |  __/ |  | | | | | | |_| |>  < 
  |_|\___|_|  |_| |_| |_|\__,_/_/\_\

也可以试试我的,然后保存退出后重进termux就可以了

      /\     __       ~~  ____   ____
     //\\    ||       ||   ||   / __ \
    //——\\   ||____   ||   ||  | \__\ \
   //    \\  |_____|  ||   ||   \____/\\    

6.安装编译环境

6.1安装Clang

pkg install clang

安装完clang后就能在termux写C和C++语言,例如

vim hello.c
#include<stdio.h>
  int main(){
    printf("Hello friends!");
    return 0;
}

先创建一个C语言的文件,再写入上面内容并保存退出

clang hello.c -o hello
ls

然后编译这个C语言文件并列出当前目录的文件有哪些,输入ls后你就可以看到有一个hello的文件

./hello

这样就能运行编译后的hello文件,然后你会看见Hello friends!输出在屏幕上了

6.2安装python

pkg install python -y
python -V #查看python的版本

这里默认安装的是python3而不是python2,如果需要安装python2,则输入下面即可

pkg install python2 -y

6.3安装nodejs

pkg install nodejs-lts #lts为长期支持版本

注意别用pkg install nodejs,不然你会发现你用npm的时候下不了一些node_modules;如果安装了就pkg uninstall nodejs,再重新安装nodejs-lts

6.4安装http-server

npm install -g http-server

然后运行http-server

http-server

你可以看到它给出了一个http:127.0.0.1:8080url,然后你用手机的浏览器访问这个url就能看到你termux的文件夹的内容了;接着在termux中按一下虚拟键盘上的CTRL和你手机输入法键盘上的c即可退出

6.5安装MariaDB(MySQL)

pkg install mariadb
mysql --version #查看mysql版本
nohup mysqld & #用Linux自带的nohup启动

mysql安装好就能启动,不需要初始化!能启动成功说明mysql已经安装好了

kill -9 `pgrep mysql` #关掉mysql的进程

7.安装Aria2来下载东西

7.1安装aria2

pkg install aria2
aria2c -v #查看aria2的版本

要注意的是aria2的命令是aria2c而不是aria2

7.2创建aria2的配置文件、数据文件和日志文件

touch aria2.conf #配置文件
touch aria2.session #数据文件
touch aria2.log #日志文件

7.2.1自定义aria2的配置文件

readlink -f aria2.session #获取aria2.session文件的完整路径,并记下来
readlink -f aria2.log #获取aria2.log文件的完整路径,并记下来
readlink -f aria2.conf #获取aria2.conf文件的完整路径,并记下来

上面两个文件aria2.sessionaria2.log的路径要记住,因为后面配置aria2.conf的时候需要用到

vim aria2.conf

进入我们之前新建的aria2.conf文件,复制粘贴下面的内容

##===================================##
## 文件保存相关 ##
##===================================##

# 文件保存目录
dir=[下载文件夹位置]
# 启用磁盘缓存, 0为禁用缓存, 需1.16以上版本, 默认:16M
disk-cache=16M
# 断点续传
continue=true
#日志保存
log=[日志文件位置/aria2.log]

# 文件预分配方式, 能有效降低磁盘碎片, 默认:prealloc
# 预分配所需时间: none < falloc ? trunc < prealloc
# falloc和trunc则需要文件系统和内核支持
# NTFS建议使用falloc, EXT3/4建议trunc, MAC 下需要注释此项
file-allocation=prealloc

##===================================##
## 下载连接相关 ##
##===================================##

# 最大同时下载任务数, 运行时可修改, 默认:5
max-concurrent-downloads=10
# 同一服务器连接数, 添加时可指定, 默认:1
# 官方的aria2最高设置为16, 如果需要设置任意数值请重新编译aria2
max-connection-per-server=16

# 整体下载速度限制, 运行时可修改, 默认:0(不限制)
max-overall-download-limit=0
# 单个任务下载速度限制, 默认:0(不限制)
max-download-limit=0
# 整体上传速度限制, 运行时可修改, 默认:0(不限制)
max-overall-upload-limit=0
# 单个任务上传速度限制, 默认:0(不限制)
max-upload-limit=0

# 禁用IPv6, 默认:false
disable-ipv6=false

# 最小文件分片大小, 添加时可指定, 取值范围1M -1024M, 默认:20M
# 假定size=10M, 文件为20MiB 则使用两个来源下载; 文件为15MiB 则使用一个来源下载
min-split-size=10M

# 单个任务最大线程数, 添加时可指定, 默认:5
# 建议同max-connection-per-server设置为相同值
split=16

##===================================##
## 进度保存相关 ##
##===================================##

# 从会话文件中读取下载任务
input-file=[数据文件保存位置/aria2.session]
# 在Aria2退出时保存错误的、未完成的下载任务到会话文件
save-session=[数据文件保存位置/aria2.session]
# 定时保存会话, 0为退出时才保存, 需1.16.1以上版本, 默认:0
save-session-interval=60


##===================================##
## RPC相关设置 ##
##此部分必须启用,否则无法使用WebUI
##===================================##

# 启用RPC, 默认:false
enable-rpc=true
# 允许所有来源, 默认:false
rpc-allow-origin-all=true
# 允许外部访问, 默认:false
rpc-listen-all=true
# RPC端口, 仅当默认端口被占用时修改

rpc-listen-port=6800
# 设置的RPC授权令牌, v1.18.4新增功能, 取代 --rpc-user 和 --rpc-passwd 选项
#rpc-secret=

# 设置的RPC访问用户名, 此选项新版已废弃, 建议改用 --rpc-secret 选项
#rpc-user=
# 设置的RPC访问密码, 此选项新版已废弃, 建议改用 --rpc-secret 选项
#rpc-passwd=

# 启动SSL
# rpc-secure=true
# 证书文件, 如果启用SSL则需要配置证书文件, 例如用https连接aria2
# rpc-certificate=
# rpc-private-key=

##===================================##
## BT/PT下载相关 ##
##===================================##

# 当下载的是一个种子(以.torrent结尾)时, 自动开始BT任务, 默认:true
follow-torrent=true
# BT监听端口, 当端口被屏蔽时使用, 默认:6881-6999
listen-port=51413
# 单个种子最大连接数, 默认:55
#bt-max-peers=55
# 打开DHT功能, PT需要禁用, 默认:true
enable-dht=true
# 打开IPv6 DHT功能, PT需要禁用
enable-dht6=true
# DHT网络监听端口, 默认:6881-6999
dht-listen-port=6881-6999

# 本地节点查找, PT需要禁用, 默认:false
bt-enable-lpd=true
# 种子交换, PT需要禁用, 默认:true
enable-peer-exchange=true
# 每个种子限速, 对少种的PT很有用, 默认:50K
bt-request-peer-speed-limit=50K

# 客户端伪装, PT需要
peer-id-prefix=-TR2770-
user-agent=Transmission/2.77

# 当种子的分享率达到这个数时, 自动停止做种, 0为一直做种, 默认:1.0
seed-ratio=0
# 强制保存会话, 即使任务已经完成, 默认:false
# 较新的版本开启后会在任务完成后依然保留.aria2文件
force-save=true
# BT校验相关, 默认:true
#bt-hash-check-seed=true
# 继续之前的BT任务时, 无需再次校验, 默认:false
bt-seed-unverified=true
# 保存磁力链接元数据为种子文件(.torrent文件), 默认:false
bt-save-metadata=true
# 单个种子最大连接数, 默认:55 0表示不限制
bt-max-peers=0
# 最小做种时间, 单位:分
# seed-time = 60
# 分离做种任务
bt-detach-seed-only=true
#BT Tracker List ;下载地址:https://cdn.jsdelivr.net/gh/XIU2/TrackersListCollection/best_aria2.txt
#页面地址:https://github.com/XIU2/TrackersListCollection/blob/master/README-ZH.md
bt-tracker=http://all4nothin.net:80/announce.php,http://kinorun.com:80/announce.php,http://masters-tb.com:80/announce.php,http://mediaclub.tv:80/announce.php,http://milanesitracker.tekcities.com:80/announce,http://nyaa.tracker.wf:7777/announce,http://open.acgnxtracker.com:80/announce,http://openbittorrent.com:80/announce,http://opentracker.xyz:80/announce,http://share.camoe.cn:8080/announce,http://t.nyaatracker.com:80/announce,http://torrent-team.net:80/announce.php,http://torrentzilla.org:80/announce,http://torrentzilla.org:80/announce.php,http://tr.cili001.com:8070/announce,http://tracker.files.fm:6969/announce,http://tracker.gbitt.info:80/announce,http://tracker.ipv6tracker.ru:80/announce,http://tracker.tfile.me:80/announce,http://tracker.torrentyorg.pl:80/announce,http://vps02.net.orel.ru:80/announce,http://www.all4nothin.net:80/announce.php,https://1337.abcvg.info:443/announce,https://carbon-bonsai-621.appspot.com:443/announce,https://tr.ready4.icu:443/announce,https://tr.torland.ga:443/announce,https://tracker.imgoingto.icu:443/announce,https://tracker.kuroy.me:443/announce,https://tracker.lilithraws.cf:443/announce,https://tracker.nitrix.me:443/announce,https://tracker.parrotsec.org:443/announce,https://tracker.tamersunion.org:443/announce,https://trackme.theom.nz:443/announce,udp://9.rarbg.com:2810/announce,udp://abufinzio.monocul.us:6969/announce,udp://bt1.archive.org:6969/announce,udp://bt2.archive.org:6969/announce,udp://code2chicken.nl:6969/announce,udp://discord.heihachi.pw:6969/announce,udp://engplus.ru:6969/announce,udp://escorts.subventas.com:53/announce,udp://exodus.desync.com:6969/announce,udp://fe.dealclub.de:6969/announce,udp://ipv6.tracker.monitorit4.me:6969/announce,udp://ipv6.tracker.zerobytes.xyz:16661/announce,udp://jeremylee.sh:6969/announce,udp://mail.realliferpg.de:6969/announce,udp://movies.zsw.ca:6969/announce,udp://open.demonii.com:1337/announce,udp://open.tracker.cl:1337/announce,udp://opentor.org:2710/announce,udp://p4p.arenabg.com:1337/announce,udp://retracker.hotplug.ru:2710/announce,udp://thetracker.org:80/announce,udp://tracker-de.ololosh.space:6969/announce,udp://tracker.0x.tf:6969/announce,udp://tracker.altrosky.nl:6969/announce,udp://tracker.auctor.tv:6969/announce,udp://tracker.beeimg.com:6969/announce,udp://tracker.birkenwald.de:6969/announce,udp://tracker.bitsearch.to:1337/announce,udp://tracker.blacksparrowmedia.net:6969/announce,udp://tracker.dler.com:6969/announce,udp://tracker.haynet.io:6969/announce,udp://tracker.jordan.im:6969/announce,udp://tracker.leech.ie:1337/announce,udp://tracker.moeking.me:6969/announce,udp://tracker.monitorit4.me:6969/announce,udp://tracker.ololosh.space:6969/announce,udp://tracker.openbittorrent.com:6969/announce,udp://tracker.opentrackr.org:1337/announce,udp://tracker.pomf.se:80/announce,udp://tracker.theoks.net:6969/announce,udp://tracker.tiny-vps.com:6969/announce,udp://tracker.torrent.eu.org:451/announce,udp://tracker.zerobytes.xyz:1337/announce,udp://tracker0.ufibox.com:6969/announce,udp://tracker1.bt.moack.co.kr:80/announce,udp://tracker2.dler.com:80/announce,udp://tracker2.dler.org:80/announce,udp://u.wwwww.wtf:1/announce,udp://udp-tracker.shittyurl.org:6969/announce,udp://vibe.sleepyinternetfun.xyz:1738/announce,udp://www.torrent.eu.org:451/announce,wss://tracker.openwebtorrent.com:443/announce

修改上面的[下载文件夹位置],去掉[]把它换成由/组成的你想放在安卓内存中的位置如/storage/emulated/0/Dowmload;修改[日志文件位置/aria2.log],去掉[]把它换成由/组成的刚刚获取的touch aria2.log文件的完整路径;修改[数据文件保存位置/aria2.session],去掉[]把它换成由/组成的刚刚获取的aria2.session文件的完整路径;然后保存并退出

7.3启动aria2的rpc服务

aria2c --conf-path=[aria2.conf文件路径/aria2.conf] #注意要删除[],aria2.conf文件路径为我们刚刚获取的路径

启动aria2的rpc服务后termux可能输入不了命令了,这时可以选择从左边向右滑动屏幕新建一个termux会话窗口或直接退出termux

7.3.1把aria2的rpc服务放入后台启动

aria2c --conf-path=[aria2.conf文件路径/aria2.conf] -D #在启动aria2的基础上加一个-D即可

7.3.2实现打开termux后其后台自动启动aria2的rpc服务

readlink -f .zshrc #获取.zshrc文件的完整路径
vim /data/data/com.termux/files/home/.zshrc #打开.zshrc文件,/data/data/com.termux/files/home路径用你刚刚获取的,我的路径是这样的:/data/data/com.termux/files/home

用vim打开.zshrc文件后,添加下面内容到最后一行,然后保存并退出

aria2c --conf-path=[aria2.conf文件路径/aria2.conf] -D

7.3.3自定义短命令后台启动aria2的rpc服务

和上面一样打开.zshrc文件,把下面内容添加到刚刚添加的那行的上一行即倒数第二行

alias aria2c-s='aria2c --conf-path=[aria2.conf文件路径/aria2.conf] -D' 

上面的aria2c-s可以自定义要后台启动aria2的rpc服务的短命令,我改成的是aria2c-s

7.4安装并启动webui-aria2本地管理服务器

7.4.1安装git

pkg install git

7.4.2克隆webui-aria2项目

git clone https://github.com/ziahamza/webui-aria2.git

7.4.3启动webui-aria2本地管理服务器

cd webui-aria2 #进入webui-aria2文件夹
node node-server.js #启动webui-aria2

启动webui-aria2完成后会看到termux已提示有localhost:8888了,然后我们打开浏览器输入127.0.0.1:8888即可看到webui-aria2的本地管理服务器GUI

7.5把aria2作为服务器来下载内容

因为本人没有申请公网IP,所以只能借助内网穿透试试看了,我目前只试了cpolar这个内网穿透的服务,因为可以直接在termux上操作(比较方便);但还是可以去试试其他延迟比较低的内网穿透服务,我个人就不在这里推荐了,因为免费的服务它的延迟可能都那样(确信

7.5.1创建sources.list.d文件夹

mkdir -p $PREFIX/etc/apt/sources.list.d

7.5.2添加cpolar源

echo "deb [trusted=yes] http://termux.cpolar.com termux extras" >> $PREFIX/etc/apt/sources.list.d/cpolar.list

7.5.3更新库

pkg update

7.5.4安装cpolar

pkg install cpolar

7.5.5安装termux服务

pkg install termux-services

安装完termux服务后记得退出termux重新进一次才能生效

7.5.6启动和关闭cpolar服务

sv up cpolar #启动
sv down cpolar #关闭

7.5.7设置开机自启cpolar服务

sv-enable cpolar

7.5.8进入cpolar的GUI界面

在浏览器中输入127.0.0.1:9200即可打开该页面,打开后会有一个登录界面,用邮箱去注册一个新的账户,然后选择免费的套餐就可以用cpolar的内网穿透服务了

7.5.9创建8888端口的隧道

①点击cpolar的GUI界面左边导航栏的隧道管理,然后选择创建隧道
隧道名字任意取即可;
协议选择http
本地地址填入8888(也就是我们webui-aria2的本地管理服务器GUI的端口号);
⑤然后域名类型选择随机域名(如果自己有多的域名也好像可以选择自定义域名,不过我没试过;选这个随机域名有个缺点,就是说你创建的这个公网隧道链接可能过了一段时间就用不了,得重新刷新这个界面才会显示新的公网隧道链接);
地区选择China Top就好了,因为选其他的的话,如果没有开会员,可能用不了或延时比较高
⑦点击创建即可

7.5.10查找公网隧道链接

点击cpolar的GUI界面左边导航栏的状态,然后选择在线隧道列表,在右边列表的公网地址那一列即可看到以httphttps开头的就是我们webui-aria2的本地管理服务器GUI公网隧道链接

7.5.11通过其他设备访问公网隧道链接

打开其他设备的浏览器,输入刚刚创建的公网隧道链接即可(虽然但是,内网穿透服务的延迟太高效果可能也不好;还有值得注意的一点是,安装termux本机8888端口只是aria2GUI界面,还要确保aria2rpc服务能够连上才能通过其他设备远程使用安装termux本机上的aria2来下载东西)

8.安装kali-nethunter系统

8.1安装wget

pkg install wget

8.2安装kali官网的脚本

wget -O install-nethunter-termux https://offs.ec/2MceZWr

8.3给kali脚本执行权限并运行

chmod +x install-nethunter-termux 
./install-nethunter-termux

安装完成后会有kali的图标命令行提示出现,输入nh即可打开kali-nethunter的终端,输入exit即可退出

安装过程有点漫长,毕竟超过1GB了,如果像我一样安装原版kali且手机没有被root可能会遇到它一直在extracting rootfs提取root文件,那得继续等,直到它提取失败后,问是否要重试,我直接选的否,因为我实在不想折腾刷机这块了;如果手机已经被root了,那应该畅通无阻,除非不会科学上网

8.4开启kex(VNC)服务进行远程连接kali桌面

8.4.1创建连接密码

nh kex passwd

然后会弹出提示输入一次,再验证输入一次即可

8.4.2下载远程连接软件–VNC Viewer或NetHunter KeX

8.4.3启动kex服务

nh kex &

启动后会开启5901端口

可能会有警告no matching vnc server running for this user,但好像可以正常使用,因为我安装了nmap,用nmap 127.0.0.1扫描主机号后发现确实有5901端口

8.4.4用远程连接软件连接5901端口

打开VNC ViewerNetHunter KeX,在主机地址那填上127.0.0.1端口号5901VNC Viewer连接后还需要输入刚刚在termux创建连接时的密码,而NetHunter KeX则是主机地址和端口号以及密码都要填才能连接

如果你和我一样在这出现了连接上了但只有报错提示的话,可以参考下这篇文章,虽然我没成功,因为termux的官方源里没有rinetd这个包

9.安装Ubuntu或其他Linux发行版

直接用上国光大佬写的脚本

9.1安装proot来模拟root

pkg install proot

9.2克隆Linux发行版安装脚本项目

git clone https://github.com/sqlsec/termux-install-linux

9.3运行Linux发行版安装脚本

cd termux-install-linux 
python termux-linux-install.py

直接选择数字安装或卸载想要安装的Linux发行版即可,这点毫无压力

9.4启动Ubuntu终端

cd ~/Termux-Linux/Ubuntu
./start-ubuntu.sh

输入exit即可退出Ubuntu终端

10.通过SSH用电脑连接手机的termux

10.1查看自己的IP地址

ifconfig 

wlan0下面,以192.168开头的就是自己的IP地址,然后记下来

10.2查看自己的用户名

whoami

u0_开头的这个就是,也记下来

10.3安装openSSH

pkg install openssh
passwd

安装完成后输入passwd,填写两次连接时的密码

10.4安装nmap

pkg install nmap

10.5电脑上安装xshell

10.6手机上termux开启ssh

sshd

10.7电脑xshell连接手机termux

在xshell左上角点击新建会话的图标,主机号输入之前查询的自己的IP地址,端口号填8022,之后会弹出验证用户名,输入之前查询的用户名即可,完成后就能在电脑上敲命令执行termux的任务了!



参考资料1:Termux 高级终端安装使用配置教程
参考资料2:优雅地使用完美版Termux-Aria2服务器(带本地GUI管理)以及ipv6的公网访问
参考资料3:Termux的安装、换源、基本库安装、基本操作讲解以及Termux的使用心得
参考资料4:Android Termux安装MySQL,内网穿透实现公网远程访问


🥰

载入天数...载入时分秒...
总访客 访问量