使用Termux的日常琐碎

索引

      • 一、参考文档:
      • 二、琐碎记录:
        • Termux的获得方式:
        • 如何换源:
        • 安装并启动SSH服务:
        • 从PC登录Termux终端
        • 架设web环境
          • 1、Apache+PHP+MariaDB
            • 1.1安装和配置
            • 1.2关于如何在Termux下绑定80端口到web服务
          • 2、phpmyadmin的安装和配置
            • 2.1 Termux下安装phpmyadmin(待修改)
            • 2.2 Phpmyadmin的配置(暂割)
        • 脚本自启动

一、参考文档:

  1. Part1 官方文档
  • Termux官网
  • Termux官网Wiki
  • Termux清华镜像使用帮助
  1. Part2 参考博文
  • Termux 高级终端安装使用配置教程 (国光大佬)
  • 安卓免ROOT部署私有云 (参考国光)
  • Termux,Nginx+php+KodExplorer用浏览器管理手机文件
  • nginx php配置_玩转Termux:手把手教你在手机上安装php与nginx(可能来自WX公号)

二、琐碎记录:

Termux的获得方式:

截至当前,F-droid换清华源是比较不错的获得渠道。通过此渠道也可以较为方便的获得Termux-API、Termux-Widget、Termux-boot等Add-On。

如何换源:

在较新版的 Termux 中,官方提供了图形界面(TUI)来半自动替换镜像,推荐使用该种方式以规避其他风险。 在 Termux 中执行如下命令

termux-change-repo

UI中预置了清华源的地址。选择并确认即可。一般确认之后自动update,没有的话人工update一下。

pkg update

安装并启动SSH服务:

也可以不用SSH也可以在手机屏幕上直接操作,但小屏幕+触摸键盘的体验实在不佳。

  • 安装OpenSSH
 pkg install openssh
  • 设置登录密码:
  passwd
  • 开启SSH服务进程:
sshd

由于华为等主流系统对后台进程的限制比较严格,一般在自动关屏后会停止ssh连接。所以需要在“启动管理”等设置中,给Termux赋予“允许后台活动”等权限,方可保持SSH连接。

从PC登录Termux终端

  • 手机Wifi设置里,查看一下手机的ip地址。或者直接在Termux下用ifconfig查询。 查询用户名:whoami。以上两项用于SSH登录。
    需要注意,这里openssh给打开的端口不是22,是8022。pkg install一个nmap,然后敲 nmap 127.0.0.1可以看到,8022端口开着个叫oa-system的服务。嗯哼哼,深得我意。
  • SSH在 linux下终端直接搞就好。Win下Powershell也可。如果需要GUI工具,可用PuTTy/SecureCRT等。 Sftp用Filezilla比较不错,Linux/Win下均有GUI工具,比较适合老夫这种外行兼懒人使用。
  • 命令
ssh XXX.XXX.XXX.XXX -p 8022

登录Termux时此处其实不用给定用户名,如需要登录特定用户,使用如下命令

ssh USER@XXX.XXX.XXX.XXX -p 8022

架设web环境

1、Apache+PHP+MariaDB
1.1安装和配置

这里主要参考 “参考文档”部分 Part2.Item2。Item1国光大佬的教程中,由于PHP版本变化,某些配置也需要随之更改。Item2的时点为2021.5,我使用的时点在2021.10,后期如有版本变更,可以参照Item2中的办法进行修改。以下为引用部分:

 **LAMP的搭建**
 
是指 Linux+Apache2+Mysql+PHP 虽然国光事实上给出了很简单的用LNMP环境部署可道云的方法......至于我的折腾嘛, "因为我想这么做"
pkg install php
pkg install mariadb
pkg install apache2
pkg install php-apache
这几个安装完成后应该检查一下服务是否正常运行,但我不想写了...

**配置Apache解析PHP**

首先我们变更一下工作目录:
cd $PREFIX
    cd:change directory,$PREFIX是termux特有的缩写,是这个目录: /data/data/com.termux/files/usr/
用vim打开配置文件:
vim etc/apache2/httpd.conf
vim的操作对我这种没用过的人稍微麻烦点,不过靠百度基本也能搞定:
    按esc回到"正常模式",该模式下右下角显示一个"行,列"坐标以及目前光标在文档中的进度. 不可输入,但可以通过kjhl完成光标上下左右操作,更复杂的暂时也用不到按'i'进入"输入模式",该模式下正常输入文本,输入结束后记得'esc'进入正常模式,这里不能用手机输入法了的剪贴板输入......按':'进入"命令模式",我使用中遇到需要的命令只有
        'wq':保存并退出'q':不保存退出,不确定自己是不是敲错什么东西的时候用'nyy'复制本行及以下共若干行,n是行数,不加n就是本行'ndd'剪切同上'p'粘贴,这里粘贴是读取的vim的缓存区,也不能读取手机输入法的剪贴板......按'/'进入检索模式,输入要检索的内容,记得大小写敏感...
        
首先 / 检索默认首页,没记错应该是这样:

  DirectoryIndex index.html

把index.php添加进首页,所以就变成

  DirectoryIndex index.php index.html


继续检索下面这两行:
LoadModule mpm_worker_module libexec/apache2/mod_mpm_worker.so
#LoadModule mpm_prefork_module libexec/apache2/mod_mpm_prefork.so
注意#号,这个表示注释,这一行不执行,我们把这两行都转换一下状态,变成这样
#LoadModule mpm_worker_module libexec/apache2/mod_mpm_worker.so
LoadModule mpm_prefork_module libexec/apache2/mod_mpm_prefork.so
在这两行下面,我们顺便再添加一下PHP模块:
LoadModule php_module /data/data/com.termux/files/usr/libexec/apache2/libphp.so 

  SetHandler application/x-httpd-php
 

    这里国光的教程里是php7模块php7_module,载入的是libphp7.so,但是我2021-05-02安装时是PHP8了,照教程试了报错,用ls /data/data/com.termux/files/usr/libexec/apache2 命令发现目录下只有一个libphp.so文件,改了之后又提醒没有php7_module,抱着试试看的态度改成php_module 结果能跑了...那就这样吧
然后就可以:wq保存退出了~
**测试PHP**

在termux里准备下测试,直接复制粘贴过去,会在网站根目录生成一个php网页:

echo '' > $PREFIX/share/apache2/default-site/htdocs/index.php

启动apache:

apachectl start

然后访问http://127.0.0.1:8080,应该能看到一个PHP信息页

到这一步,就完成所有准备工作,可以准备安装nextcloud了~
1.2关于如何在Termux下绑定80端口到web服务

我这里有一个小小的纠结,无论用Apache还是Nginx,默认listen的端口都是8080。如何改用80端口呢?记录尝试过程如下:

  • 直接修改Apache的配置文件,listen 80然后启动服务。报错权限不足,不能绑定80端口。用su提升权限后,敲命令提示:not found
  • 爬了爬博文,确定是环境变量没有带过去。于是su --help查看参数,选了几个参数测试,结果无效。
  • 接着爬文,发现Termux的su命令截至当前,是带不过去环境变量的。但用tsu命令可以解决。那么修改完conf后如此这般启动服务,80端口就可以bind了。
pkg install tsu
tsu
apachectl
2、phpmyadmin的安装和配置
2.1 Termux下安装phpmyadmin(待修改)

外行爱热闹,phpmyadmin是一定要有的。先把ANMPP里的复制过来试一下------果然报错。Sorry,My bad. 这是脚后跟替我做的决定。蛮干不行那就pkg装一个:

pkg install phpmyadmin

安装过程一切顺利,但是…怎么用呢?这样吗?

phpmyadmin

返回not found

Github的这个页面给出了答案:把默认安装位置下的phpmyadmin整个目录复制到Apache站点根目录。访问127.0.0.1/phpmyadmin看结果。

  • 默认安装位置在这里data/data/com.termux/files/usr/share/
  • Apache站点根目录data/data/com.termux/files/usr/share/apache2/default-site/htdocs/

至此phpadmin已经可以使用。

2.2 Phpmyadmin的配置(暂割)

脚本自启动

这里用到一个插件Termux Boot,用法参见Termux Wiki

你可能感兴趣的:(Android相关,Termux,android)