目录

什么是Termux

    Termux是一款基于Android的Linux终端模拟器,使用apt(pkg)管理软件包,无需root权限,大多数的Android都可以运行。在技术爆炸的今天,手机的算力、运存以及内存都已经不亚于一个小型的初级计算机(大多数的手机芯片已经远超70年代末80年代初,橡树岭实验室、欧洲原子能实验室的超算算力)。所以把应该把手机作为一个强大的开发工具,要实现这个目标,就必须提到今天的主角:Termux


Termux可以做什么?

    由于Termux支持apt和pkg包管理工具,你可以十分方便、快捷的安装软件包,Termux完美支持Python、PHP、Mysql、Go、Nodejs、Clang、gcc等等,另外你也可以尝试在Termux上面配置一个Web服务器来方便快捷的共享手机的文件。


安装Termux

    你需要一个软件商店之类的东西,不过国内往往版本比较低,如果有能力的话还是建议去Google Play商店下载第一手的App。

google play

  • 安装后你将看到这样的一个界面

termux1


基本操作

    博主不在这里过多的阐述基本操作,博主本人认为在手机上操作效率较低且极易发生误触,如果你确实需要,请参看Termux wiki


一些基础

基础的包管理命令

    前文提到Termux除了apt以外,还支持pkg,pkg向下兼容apt,语法如下:

    pkg install <package>    #安装软件包
    pkg uninstall <package>    #卸载软件包
    pkg reinstall <package>    #重新安装软件包
    pkg update    #更新软件源
    pkgupgrade    #更新软件包
    pkg search <query>    #搜索软件包
    pkg shoe <package>    #列出某个包的详细信息
    pkg files <package>    #显示某个软件包的路径
    pkg list-all    #列出所有可以安装的软件包
    pkg list-installed    #列出所有已经安装的软件包


获取root

    你会发现你没得办法使用su和sudo!第一种办法就是安装tsu(前提是你的手机已经root),第二种办法就是使用proot模拟root。

#第一种情况
    pkg install tsu -y    #安装tsu
    tsudo rm -rf /*     #使用root权限清理垃圾
    tsu    #登陆到root用户

#第二种情况
    pkg install proot -y    #安装proot
    termux-chroot    #切换到root


访问手机的内存

    termux-setup-storage
    #执行命令后会在$HOME目录下创建一个名为storage的目录
    #storage目录下面是一些常用的手机目录的软连接
    #当termux要求手机权限时,需要允许


termux的目录结构

     termux没有遵循FHS,所以你无法像使用普通的linux一样找到根目录下的某些路径,例如/usr。但是termux提供了一些特殊的环境变量:

    $PREFIX  -> /data/data/com.termux/files/usr    #代表你的/usr目录
    $HOME ->/data/data/com.termux/files/home    #代表你的/home

    实际上,这些目录都在/data/data/com.termux/file下面,/data/data/com.termux目录下也存放了一些termux的配置文件(没有root你进不去这个目录)。


先要条件

如何连接adb

  • 方案A
    首先打开手机的USB调试模式
    连接计算机
    打开终端,输入adb  devices
    不出意外的话会有你的设备
    没有的话可以尝试B方案
  • 方案B
    在关于手机中找到手机的IP地址
    确认一下手机和电脑是不是在一个wifi下
    输入命令 adb connect <ip addr> :  <port>    #注意端口不重复
    #手机的默认端口是5555,电脑的端口是5037
    成功连接~~
    如果还是不行,请尝试C方案
  • 方案C

直接用USB


SSH连接Termux

  • 首先,保证电脑和主机连接了一个wifi
  • 其次,电脑上为了传文件方便建议安个adb
  • 博主以ubuntu为例子

1、安装openssh(没有安装的话)

    apt update
    apt install openssh    #注意电脑手机都要安装

2、生成公钥

    cd ~/.ssh
    ssh-keygen -t rsa
    #会在目录下生成id_rsa及id_rsa.pub

3、发送公钥

    adb shell
    cd sdcadb
    mkdir Termux_tmp    #可以不创建,博主为了方便
    adb push id_rsa.pub /sdcard/Termux_tmp    #根据实际情况修改

4、复制公钥到授权文件

    cd ~/.ssh
    cat /storage/emulated/0/Termux_tmp/id_rsa.pub >> authorized_keys    #根据实际情况更改目录

5、连接手机

ssh <你的手机IP地址> -p 8022    #手机默认8022


后续工作

更换软件源

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

apt update && apt upgrade


安装zsh终端

1、安装一些基本的软件包

   pkg install git curl vim zsh wget -y 

2、执行 Brandon 的curl脚本: termux-ohmyzsh

    #使用以前请确保安装了curl和git
    sh -c "$(curl -fsSL https://github.com/Cabbagec/termux-ohmyzsh/raw/master/install.sh)"  
    ~/.termux/colors.sh   #运行以更换色彩样式,或值使用chcolor
    ~/.termux/fonts.sh    #运行以更换字体,或者使用chfont

3、博主珍藏若干年的自动提示插件

    wget http://mimosa-pudica.net/src/incr-0.2.zsh
    mkdir ~/.oh-my-zsh/plugins/incr
    mv incr-0.2.zsh ~/.oh-my-zsh/plugins/incr
    echo 'source ~/.oh-my-zsh/plugins/incr/incr*.zsh' >> ~/.zshrc
    source ~/.zshrc

sshd自启动

  • 想要开启应用自启动sshd很简单:
    #如果你使用zsh
    echo "sshd" >> ~/.zshrc
    #如果你使用bash
    echo "sshd >>  ~/.bashrc
  • 想要开机自启动sshd服务,你需要安装一个名为Termux:Boot的插件,并给予子启动权限
   #安装Termux:Boot后
   
   #这个目录内存放的脚本会在开机后启动Termux时执行
   mkdir -p ~/.termux/boot    
   #新建一个脚本并把sshd命令添加进去即可
   echo 'termux-wake-lock; sshd' > ~/.termux/boot/start-sshd 
   #termux-wake-lock; 可参见官方wiki(好像是休眠锁,防止手机屏幕休眠而后进程被冻结)


一些好玩的地方

  • zsh主题
    #oh-my-zsh自带了几十个主题,对于选择恐惧症来说,要了老命
    #所以,我们使用随机的主题,就可以避免这个问题
    vim ~/.zshrc
    #找到:
    ZSH_THEME="xxxx"
    #修改为:
    ZSH_THEME="random
    source ~/.zshrc
  • 更换登陆问候
    #默认的提示说了一堆获取帮助什么的,我们可以修改为自己喜欢的问候语
    vim $PREFIX/etc/motd    #尽情发挥!
    
    #下次登陆时生效


安装linux发行版

    是的,没错,你没看错。termux可以运行linux发行版你可以尝试获取一款名为AnLinux的app来帮助你安装真正的linux甚至桌面环境,在这里博主就不做过多的阐述了(慢的一批)。


资料来源

感谢myfreess的中文文档:Mytermuxdoc


END

站住,不许走

博主以后会在这里陆续的更新某些小技巧哦~

最后编辑:2020年07月27日 ©著作权归作者所有

已有 5 条评论

  1. 自从之前兴奋的配置好后,已经搁在我手机上2年没用过了 ∠( ᐛ 」∠)_

  2. 作为时长二年的termux用户,说实话,termux是可以当成生产力工具的(同群的黑子在termux上挂bot来着),而且我是在termux上学了2年,至少学习还是挺好

  3. 总感觉手机打指令不舒服orz,不过在外开发的话这东西还是很方便的

  4. 手机屏幕太小了,不实用啊 ::(汗)

    1. @saky

      没得写完2333 :@(狂汗)

发表评论

正在加载 Emoji