Termux是一个Android下一个高级的终端模拟器,开源且不需要root,支持apt管理软件包,十分方便安装软件包,完美支持Python,PHP,Ruby,Go,Nodejs,MySQL等。随着智能设备的普及和性能的不断提升,如今的手机、平板等的硬件标准已达到了初级桌面计算机的硬件标准,用心去打造完全可以把手机变成一个强大的工具。
1.首先手机下载termux
下载方式:
(1)Github上下载;
(2)Google Play下载;
(3) 酷安下载。
Google Play下载的版本比酷安要新,有能力建议下载Google PLay版本的。
2. 基本操作
长按屏幕
显示菜单项(包括复制、粘贴、更多),此时屏幕出现可选择的复制光标
COPY:复制
PASTE:更多
More:粘贴
Select URL: 选择网址
Share transcipt: 分享命令脚本
Reset: 重置
Kill process: 杀掉当前终端会话进程
Style: 风格配色
Help: 帮助文档
从左向右滑动
显示隐藏式导航栏,可以新建、切换、重命名会话session和调用弹出输入法。显示隐藏式导航栏:长按左下角的KEYBOARD,出现扩展功能键:ESC键,CTR键,TAB键等。
3.常用快捷键
Ctrl键是终端用户常用的按键 – 但大多数触摸键盘都没有这个按键。为此,Termux使用音量减小按钮来模拟Ctrl键。 例如,在触摸键盘上按音量减小+ L发送与在硬件键盘上按Ctrl + L相同的输入。
Ctrl+A -> 将光标移动到行首
Ctrl+C -> 中止当前进程
Ctrl+D -> 注销终端会话
Ctrl+E -> 将光标移动到行尾
Ctrl+K -> 从光标删除到行尾
Ctrl+L -> 清除终端
Ctrl+Z -> 挂起(发送SIGTSTP到)当前进程
音量加键也可以作为产生特定输入的特殊键。这里不做过多解释。
4. 基本命令
Termux除了支持apt命令外,还在此基础上封装了pkg命令,pkg命令向下兼容apt命令.apt命令大家应该都比较熟悉了,这里直接简单的介绍下pkg命令:
pkg search 搜索包
pkg install 安装包
pkg uninstall 卸载包
pkg reinstall 重新安装包
pkg update 更新源
pkg upgrade 升级软件包
pkg list-all 列出可供安装的所有包
pkg list-installed 列出已经安装的包
pkg shoe 显示某个包的详细信息
pkg files 显示某个包的相关文件夹路径
目录环境结构
~ > echo $HOME
/data/data/com.termux/files/home
~ > echo $PREFIX
/data/data/com.termux/files/usr
~ > echo $TMPDIR
/data/data/com.termux/files/usr/tmp
~ set 查看所有环境变量
长期使用Linux的朋友可能会发现,这个HOME路径看上去可能不太一样,为了方便,Termux 提供了一个特殊的环境变量:PREFIX
5. 更换Termux清华大学源,加快软件包下载速度
设置默认编辑器
export EDITOR=vi 或
export EDITOR=vim (若未安装vim,先安装:pkg install vim)
编辑源文件
apt edit-sources
将原来的https://termux.net官方源替换为
http://mirrors.tuna.tsinghua.edu.cn/termux
aarch64 为手机的架构,怎么查看呢?输入:uname -m 查看
uname -a 查看版本信息
6. 安装软件前先更新一下:
apt update && apt upgrade
7. 启用外置储存与终端配色
termux-setup-storage
成功拿到存储权限后会在家目录生成storage目录,并且生成若干目录,软连接都指向外置存储卡的相应目录。
ln -s /data/data/com.termux/files/home/storage/shared/tencent/QQfile_recv QQ
生成QQ软链接
终端配色:执行下面这个命令确保已经安装好了 curl。
sh -c "$(curl -fsSL https://github.com/Cabbagec/termux-ohmyzsh/raw/master/install.sh)"
cd termux-ohmyzsh
bash install.sh
输入你想要的字体颜色编号以及字体编号就ok了。
8. 模拟手机root
手机没有root,利用proot工具来模拟某些需要root的环境
pkg install proot
然后终端下面输入:
termux-chroot
即可模拟root环境
9. 封装编辑器
终端下有vim神器,并且官方也已经封装了vim-python,对vim进行了Python相关的优化.
pkg install vim-python -y
10. 解决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
11. 安装nodejs
pkg install nodejs
12. 搭建LAMP
(1)安装MariaDB(MySQL)
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。
pkg install mariadb 安装基本数据 mysql_install_db 启动mariadb服务
启动mariadb报错,根据错误提示在/data/data/com.termux/files/usr/etc下创建my.cnf.d文件夹。
cd /data/data/com.termux/files/usr/etc
mkdir my.cnf.d
然后在:mysql_install_db
mysqld
mysqld启动完成后,这个会话就一直存活,类似与debug调试一样,只有新建会话才可以操作。
mysql -uroot -p
nmap -Pn 127.0.0.1 查看开启端口
修改密码:mysql_secure_installation 修改当前密码,因为当前密码为空,所以这里默认回车。
设置新密码:
其他设置:下面根据个人偏好来进行设置, 没有绝对的要求
Remove anonymous users? [Y/n] Y #是否移除匿名用户
Disallow root login remotely? [Y/n] n #是否不允许root远程登录
Remove test database and access to it? [Y/n] n #是否移除test数据库
Reload privilege tables now? [Y/n] y #是否重新加载表的权限
使用密码登录数据库:mysql -uroot -p
(2)安装apache/nginx
1)编译安装
wget http://www-us.apache.org/dist//httpd/httpd-2.4.35.tar.gz
解压:tar -xzvf httpd-2.4.35.tar.gz
预编译:./configure
预编译报错,根据提示安装依赖:wget http://www-us.apache.org/dist//apr/apr-1.6.5.tar.gz
解压:tar -xvzf apr-1.6.5.tar.gz
报错。
2) 直接下载安装
apt install apache2 -y
修改配置文件:
cd /data/data/com.termux/files/usr/etc/apache2
备份配置文件:
cp httpd.conf httpd.conf.bak
重定向:去掉带#号的内容重定向到httpd.conf中
grep -v "#" httpd.conf.bak > httpd.conf
vim httpd.conf
在末尾添加:ServerName 127.0.0.1:8080
(手机没root,使用80会报错)
将None
改为All
启动服务输入:httpd
杀死进程:kill pid 或 pkill httpd
重启服务:httpd -s reload
关闭服务:httpd -s stop
停止 nginx 服务
这里是直接杀掉占用端口的进程, 具体端口以实际情况为准:fuser -k 8080/tcp
3) 安装nginx
Nginx 是一个高性能的 Web 和反向代理服务器, 它具有有很多非常优越的特性。
apt install nginx -y 安装nginx
尝试下能不能解析默认的index.html主页
这个文件在termux上的默认位置为/data/data/com.termux/files/usr/share/nginx/html/index.html 能解析则不需要修改配置文件。
在proot下启动服务:termux-chroot
nginx
在proot下使用:netstat -nlt
(3)安装php
1) apt install php
自PHP5.4之后 PHP 内置了一个 Web 服务器, 在termux下尝试下 PHP Web Server 的简单使用
编写测试文件
在家目录下建一个www文件夹:mkdir www
在www文件夹下新建一个index.php文件, 其内容为
启动WebServer:
php -S 127.0.0.1:8080 -t www/
浏览器访问效果如下:
2) nginx 解析 PHP
nginx 本身不能处理 PHP,它只是个 web 服务器,当接收到 php 请求后发给 php 解释器处理, nginx 一般是把请求发 fastcgi 管理进程处理, PHP-FPM 是一个 PHP FastCGI 管理器, 所以这里得先安装php-fpm。
安装并配置php-fpm:
apt install php-fpm -y
进入proot环境,cd /etc/php-fpm.d
cp www.conf www.conf.bak
grep -v ";" www.conf.bak > www.conf
vim www.conf 将
改为
保存并退出
3) 配置nginx
在proot环境下, 然后编辑配置文件nginx.conf
vim /etc/nginx/nginx.conf 在里面添加:
location ~ \.php$ {
root /data/data/com.termux/file/usr/share/nginx/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
include fastcgi_params;
}
要修改网站默认路径的话, 只需要修改这两处即可:
1:root /data/data/com.termux/files/usr/share/nginx/html;
2:fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
4. 建立 php 测试文件
在/usr/share/nginx/html目录下新建一个phpinfo.php文件, 其内容是:
phpinfo();
?>
保存并退出
(5)启动 php-fpm 和 nginx
在proot环境下面分别启动php-fpm和nginx。
启动php-fpm出错。原因是php-fpm没有在root下运行
13. 安装tmux
Tmux 是一个优秀的终端复用软件,类似 GNU Screen,但来自于 OpenBSD,采用 BSD 授权。一旦你熟悉了 tmux 后, 它就像一个加速器一样加速你的工作效率。
apt install tmux -y
新建mysql会话
上面介绍的mysqld后会一直卡在那里, 现在尝试使用tmux来管理会话。
tmux new -s mysql
可以看到最下面的提示, 表明现在是在mysql的会话下面操作
启动mysql并断开会话
mysqld
让会话后台运行:
使用快捷键组合Ctrl+b + d,三次按键就可以断开当前会话。登录数据库。
14. 配置聊天神器weechat
安装weechat:apt install weechat -y
进入weechat: weechat
创建服务器: /server add freenode8001 chat.freenode.net/8001
进入服务器: /connect freenode8001
给自己取个名字:/nick yourselfname
/nick a_fei
进入聊天室:/join #qaiu
这里推荐一个比较火的开源项目 openstack 频道:/join #openstack
其他常用命令
/exit 退出weechat聊天室
/close 关闭当前聊天窗口
15. 安装终端地图
一个基于nodejs编写的命令行下的地图.
npm install mapscii -g
mapscii
进入终端地图
方向键 移动:
a和z键 放大缩小
q键 退出
16. 安装inetutils
inetutils集成了许多网络客户和服务程序,主要有,finger, ftp, ftpd, rcp, rexec, rlogin, rlogind, rsh, rshd, syslog,syslogd, talk, talkd, telnet, telnetd, tftp, tftpd, and uucpd。
apt install inetutils
启动ftp:ftp 退出ftp:quit | bye
连接ftp服务器: