Termux命令行神器初体验

更新记录

20170201 初次成文
20170310 修正安装openssh
20170816 更新私钥登陆方式

为什么有这篇文章

Termux的一些基本初始化设置。

安装Termux

Termux依赖Android 5.0及更高版本,Root权限可选,另外手机容量一定要充足。

Play商店 F-droid

其他工具

其他增强工具。

  • RE管理器 便于提取和更改模拟终端系统中的文件(需root)
  • JuiceSSH SSH连接增强,内置了一些软键盘十分强大

QQ在和termux互传文件和文字也非常方便

基本操作

开始的一些操作只能在Termux原始的终端进行,等ssh开启后再使用操作较为方便的JuiceSSH

VOL↑ + Q  调出软键盘
VOL↑ + W  上
VOL↑ + S  下
VOL↑ + A  左
VOL↑ + D  右

修改软件源

使用tuna镜像加速apt

cd ~
echo "deb [arch=all,arm] http://mirrors.tuna.tsinghua.edu.cn/termux stable main" > ../usr/etc/apt/sources.list
apt update
apt install coreutils wget tar less -y
apt install vim zsh zip clang openssl-tool openssh curl dnsutils git -y

启用ssh

termuxsshd默认监听8022端口,并且只支持密钥登陆

apt install openssl-tool openssh -y
sshd
netstat -ntlp |grep sshd

JuiceSSH连接termux

下面介绍使用JuiceSSH登陆termux

连接 -> 认证 -> 新建认证

昵称为termux,用户名termux

私钥 -> 更新私钥 -> 生成 -> 密钥格式RSA -> 长度1024bit

长按认证列表里的termux -> 导出公钥,追加到authorized_keys,这一步建议分享给QQ

cat >> ~/.ssh/authorized_keys << EOF
# 修改为你自己的公钥 ssh-rsa*JuiceSSH
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAgQDLS47pqMtf4Dw4McoYPsdoozv5cmudu3FTGxd8UmBUlG8pCtrydHFwaUZzNYXnP9PT2yJEcLVYJHi+pvC5WaFUSZPG4ps4WhAsKuNYeDnFdYyBzkWIOYCJOj0WFK2AOlBF0cwNkmiBrDjmAM3vIHLG1Z2WgtEcyQUZexAhYqafOw== JuiceSSH
EOF

新建连接 -> 昵称为termux -> 类型ssh -> 地址127.0.0.1 -> 认证termux -> 端口8022

成功登陆会直接进入终端,失败会一直弹出输入密码

启用外置存储

Android6.0以上会弹框确认是否授权,执行这条命令确保termux在最前端(当前Activity)

termux-setup-storage

成功拿到存储权限后会在家目录生成storage目录,并且生成若干目录,软连接都指向外置存储卡的相应目录

$ ls -lh

total 0
lrwxrwxrwx 1 u0_a268 u0_a268 24 Aug  3 09:40 dcim -> /storage/emulated/0/DCIM
lrwxrwxrwx 1 u0_a268 u0_a268 28 Aug  3 09:40 downloads -> /storage/emulated/0/Download
lrwxrwxrwx 1 u0_a268 u0_a268 26 Aug  3 09:40 movies -> /storage/emulated/0/Movies
lrwxrwxrwx 1 u0_a268 u0_a268 25 Aug  3 09:40 music -> /storage/emulated/0/Music
lrwxrwxrwx 1 u0_a268 u0_a268 28 Aug  3 09:40 pictures -> /storage/emulated/0/Pictures
lrwxrwxrwx 1 u0_a268 u0_a268 19 Aug  3 09:40 shared -> /storage/emulated/0

为了方便文件传输可以为QQ创建一个软连接

ln -s /data/data/com.termux/files/home/storage/shared/tencent/QQfile_recv qq
#ln -s /data/data/com.termux/files/home/storage/shared/tencent/TIMfile_recv qq

oh-my-zsh

oh-my-zsh是一款终端美化增强工具,能直观的显示本地git仓库

cd ~/
git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
zsh

oh-my-zsh可以自动读取.git目录,显示当前分支

5.png

Termux命令行神器初体验》上有8条评论

  1. loli

    cat >> ~/.ssh/authorized_keys <> ~/.ssh/authorized_keys << EOF,回车,再输入公钥吗?
    我是小白所以来问问

    回复
    1. popy32 文章作者

      这段命令的作用就是将公钥内容写入~/.ssh/authorized_keys,当然你也可以用vim,cat重定向这种写法一般用于自动化脚本,避免出现交互

      回复
      1. 伏珏

        我还是不会,一直都是密码错误。到了那步cat >> ~/.ssh/authorized_keys << EOF 我就看不懂了 Q: 1813667516

        回复
  2. pan

    我主要是在手机ssh到服务器。但是ssh host:port无论使用ip还是域名都提示no address associated with hostname,也就是无法解析。而单独使用ssh host 默认22端口却提示拒绝,表明android中的ssh 只支持默认。配置文件却没有更多信息。请问如何设置?

    回复

发表评论

电子邮件地址不会被公开。 必填项已用*标注