手机当服务器(Termux)快速入门
手机当服务器(Termux)快速入门
0 简介
相关文档
- Termux 官网
- Github 项目地址
- F-Droid 下载地址
- Termux入门指南(国光)
1 快速入门
前置要求:熟悉常用的linux操作命令
Termux版本:0.118.0
目录标识符:~ $
1.1 基本配置
更换镜像源[选择源(这里选择的是清华源)]
PS:确认(OK)\选择(直接点括号)
~ $ termux-change-repo
更换源完成后执行
~ $ pkg update
安装基本程序(安装过程中需输入Y确认并回车)
~ $ pkg install vim git nmap openssh
配置ssh连接
# 查看账号
~ $ whoami
u0_a000# 设置密码
~ $ passwd# 开启ssh
~ $ sshd# 查看局域网ip
~ $ ifconfig# 局域网ssh连接(默认ssh端口8022)
ssh -p 8022 u0_a000@192.168.1.10
1.2 端口查看
Andorid 10 以下的版本是可以正常使用 netstat 命令
# 查看所有端口
~ $ netstat -an# 查看8022端口的开放情况
~ $ netstat -an | grep 8022
Andorid 10 及以上版本的 Termux 下无法正常使用 netstat -an 命令
# 安装nmap端口扫描神器
~ $ pkg install nmap# 扫描本地端口
~ $ nmap 127.0.0.1
1.3 修改启动问候语
默认的启动问候语
# 修改启动问候语
~ $ vim $PREFIX/etc/motd# 在编辑器中填写自己想要展示的问候语并保存
# 参考问候语_____
|_ _|__ _ __ _ __ ___ _ ___ __| |/ _ \ '__| '_ ` _ \| | | \ \/ /| | __/ | | | | | | | |_| |> < |_|\___|_| |_| |_| |_|\__,_/_/\_\Welcome to Termux(0.118.0)> Search: pkg search <query>> Install: pkg install <package>> Upgrade: pkg upgrade
修改后的效果
1.4 应用程序自启动
由于软件退出后,再次进入时之前的应用程序需重新启动(如 ssh
等 )
# 根目录创建.bashrc
~ $ cd
~ $ touch .bashrc# 编辑自启动脚本
~ $ vim .bashrc
sshd自启动脚本,其他应用程序同理
# 初始化sshd
if pgrep -x "sshd" >/dev/nullthenecho " > sshd started"elsesshd >/dev/nullecho " > sshd start success"
fi
1.5 息屏不断开
前置条件:手机任务栏锁定、取消电量限制策略
termux息屏后会导致ssh断连,应用程序中断等情况,需要设置常驻后台
方式一:命令行开启
# 命令行开启 ~ $ termux-wake-lock
方式二:通知栏按钮开启,出现(wake lock held)即开启成功
未开启,点击
Acquire wakelock
开启已开启,点击
Release wakelock
关闭
2 安装应用程序
2.1 Nginx
安装nginx并启动
# pkg安装nginx
~ $ pkg install nginx# 启动nginx
~ $ nginx
手机浏览器进入127.0.0.1:8080 (局域网内可通过 ip:端口
访问)
查看nginx配置(nginx.conf为nginx默认配置文件)
# 查看nginx文件位置
~ $ nginx -t
nginx: the configuration file /data/data/com.termux/files/usr/etc/nginx/nginx.conf syntax is ok
nginx: configuration file /data/data/com.termux/files/usr/etc/nginx/nginx.conf test is successful# 进入nginx目录路径
~ $ cd /data/data/com.termux/files/usr/etc/nginx/
.../etc/nginx $ ls
fastcgi.conf fastcgi_params koi-utf koi-win mime.types nginx.conf scgi_params uwsgi_params win-utf
更多nginx配置配置查看官方文档
https://nginx.org/en/docs/
2.2 Java
安装jdk,默认只有openjdk17
# 安装jdk
~ $ pkg install openjdk-17# 查看java版本(出现版本信息则安装完成)
~ $ java -version
openjdk version "17-internal" 2021-09-14
OpenJDK Runtime Environment (build 17-internal+0-adhoc..src)
OpenJDK 64-Bit Server VM (build 17-internal+0-adhoc..src, mixed mode)
测试Hello World
# 创建HelloWorld.java文件
~ $ touch HelloWorld.java# 编辑HelloWorld.java文件
~ $ vim HelloWorld.java
HelloWorld.java文件内容,编辑完成后按esc键,输入:wq
保存并退出
public class HelloWorld{public static void main(String... args){System.out.println("Hello World!");}
}
运行HelloWorld.java,在jdk11及之后的版本支持源文件直接运行,不用再执行javac命令了。
# 执行HelloWorld.java
~ $ java HelloWorld.java
Hello World!
Hello World!
成功打印,Java环境配置成功
2.3 Python
安装python,默认为3.10
# 安装python
~ $ pkg install python# 查看python版本
~ $ python -V
Python 3.10.7# 升级pip版本
python -m pip install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple some-package
测试Hello World
~ $ python
Python 3.10.7 (main, Sep 8 2022, 06:55:17) [Clang 14.0.6 (https://android.googlesource.com/toolchain/llvm-project 4c603efb0 on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> print("Hello World")
Hello World
2.4 Nodejs
这里安装长期支持版nodejs-lts
# 安装nodejs
~ $ pkg install nodejs-lts# 安装完成后使⽤如下命令查看版本信息
node -V
npm -V
测试Hello World
# 创建HelloWorld.js文件
~ $ touch HelloWorld.js# 编辑HelloWorld.js文件
~ $ vim HelloWorld.js# 文件内容
console.log('Hello World!');
运⾏HelloWorld.js
~ $ node HelloWorld.js
Hello World!
3 结语
安装其他应用程序可自行探索
若想要公网访问能力,可使用frp、ngork等内网穿透工具
手机当服务器(Termux)快速入门相关推荐
- 5G网络(手机Wifi)快速入门
5G网络(手机Wifi)快速入门 5G不仅涉及光纤.无线甚至卫星通信网络相互整合,还将利用软件定义网络(SDN ).网络功能虚拟化(NFV).移动边缘计算(MEC)和雾计算(Fog Computing ...
- 微信H5手机网页开发—快速入门
序言 随着微信(WeChat)的盛行,一个流行的开发工作也随之诞生--微信公众号开发,而其中最主要的部分,当属微信H5网页开发. 虽然网页开发大家并不陌生,但层出不穷的手机型号,导致了微信网页开发中遇 ...
- 一文快速入门分库分表中间件 Sharding-JDBC (必修课)
书接上文 <一文快速入门分库分表(必修课)>,这篇拖了好长的时间,本来计划在一周前就该写完的,结果家庭内部突然人事调整,领导层进行权利交接,随之宣布我正式当爹,紧接着家庭地位滑落至第三名, ...
- 《嵌入式 Linux应用程序开发标准教程(第2版)》——第1章 Linux快速入门 1.1 嵌入式Linux基础...
本节书摘来自异步社区<嵌入式 Linux应用程序开发标准教程(第2版)>一书中的第1章,第1.1节,作者 华清远见嵌入式培训中心,更多章节内容可以访问云栖社区"异步社区" ...
- 认识AndEngine选自Android 2D游戏引擎AndEngine快速入门教程
认识AndEngine什么是AndEngine 随着Android手机.平板的盛行,Android下的游戏也不断的变得火热.而对于游戏开发有兴趣的同学们,应该也想要学习开发游戏.虽说游戏开发的引擎较多 ...
- Android 2D游戏引擎AndEngine快速入门教程
Android 2D游戏引擎AndEngine快速入门教程 介绍:AndEngine是一款知名的Android 2D游戏引擎.该引擎代码开源,并且可以免费使用.本书详细讲解如何使用AndEngine引 ...
- ArduinoYun快速入门教程第1章ArduinoYun概览
ArduinoYun快速入门教程第1章ArduinoYun概览 本章是全书的开篇,在本章笔者将把Arduino以及Yun的方方面面介绍给大家.其中包括Arduino这个术语的解释.Yun相对其他开发板 ...
- 使用NeMo快速入门NLP、实现机器翻译任务,英伟达专家实战讲解,内附代码
对话式AI是当前AI领域最火热的细分领域之一,其中自然语言处理(NLP)是最为困难的问题之一. 那么,零基础.对会话式AI感兴趣的小伙伴们如何快速入门 NLP领域? 近日,英伟达x量子位发起的NLP公 ...
- python快速编程入门教程-半小时带你快速入门Python编程,Python快速入门教程
1,Introduction to Python (Python入门) 2,Python是什么? Python 官方网站的描述 Python is a programming language tha ...
最新文章
- 【pmcaff】2014年中国移动支付用户报告
- nginx 免安装包
- java线程池 锁_java多线程——锁
- python3用list实现栈
- 前端学习(1320):同步和异步得区别
- 关于大型网站技术演进的思考(三)--存储的瓶颈(3)
- javascript DOM对象转jquery对象
- 制作单机俄罗斯方块游戏心得(二)
- bzoj 3123 可持久化线段树启发式合并
- Windows server 2008 搭建×××服务
- JAVA实现 - 问题 G: 超大型 LED 显示屏
- 传奇java手游_Java手机游戏神灯传奇代码JAVA游戏源码下载
- heic照片格式怎么转换jpg?heic转换成jpg方法分享
- UnicodeTOGB,能够将Unicode串转换成GB码
- 2021年中国研究生数学建模竞赛A题(华为公司命题)——相关矩阵组的低复杂度计算和存储建模
- 如何调用阿里云、百度云API接口
- 课题:shell脚本安装httpd
- 计算机教子好考吗,考进985的孩子:父母都是这样教育孩子,这些方法比刷题管用...
- Speech Separation
- git从一个分支合并到另一个分支