ataola

V1

2022/06/15阅读:13主题:极客黑

少年,为什么要去换不锈钢脸盆呢?

在我很小的时候,曾听闻路边的喇叭说,破了烂了不用的手机不要丢,也不要拿给小孩玩,都可以换不锈钢脸盆,统统可以换不锈钢脸盆,我蠢蠢欲动地拿起大哥大试了下,嗯,真的可以换不锈钢脸盆的,中国人不骗中国人。 随着社会的发展,技术的更新迭代,人们现在用的手机功能越来越丰富,我开始犹豫了,还换不换脸盆呢?最终我找到了一种和过去的手机和解的办法,我不换了,我准备结合termux这个软件把它打造成一换迷你型服务器,

                                     ------题记

需求介绍:

结合termux(把它当Linux用吧)其实可以做很多事情,但我只关注于楼下这几个需求点

  • 有一台还能用的又不常用的手机
  • 偶尔会学点Python,所以需要一个Python的环境
  • 还需要有个Node的环境,我好长一段时间吃饭都靠它了
  • 偶尔会学点Shell脚本,好在这个环境天然就在
  • 偶尔会学点数据库,所以需要一个Mariadb、Redis环境
  • 偶尔会学点Nginx,所以需要一个Nginx服务器
  • 终端敲命令自然少不了vim,我希望它能够好用一点
  • 还有一大堆辅助工具,比如说wget、curl、git啥的

termux下载安装教程

此处省略阉割版Android投胎转世Android1000个字教程。如果你不是原生Android的话,那你需要去网上下载对应的termux.apk安装包了:),可以搜下酷安或者F-Droid去下载下

这里以Redmi Note 7为例,我们打开手机进入到首页,然后打开相册边上的Google Play商店。

141655133238_.pic.jpg
141655133238_.pic.jpg

搜下关键词termux,然后点击安装,顺便把它楼下的termux:API也安装下,它有很多辅助的功能,有些还挺好玩的。 151655133238_.pic.jpg

到这里,关于安装这块就告一段落。

termux环境配置教程

首先是换源这件事

早年间,一股神秘的东方力量横空出世,刹那间风云四起,访问一些网站可能有点慢或者访问不了,所以需要切回国内的源,本文用的是清华源,有兴趣你也可以用科大源。 这里你懒一点就直接一把复制粘贴到命令框里面,然后执行pkg update

mkdir -p $PREFIX/etc/apt/sources.list.d/

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

当然你也可以用vi或者vim去编辑对应的源文件 执行 vi $PREFIX/etc/apt/sources.list.d/ 然后粘贴楼下这句话

deb https://mirrors.tuna.tsinghua.edu.cn/termux/termux-packages-24 stable main

后面两个源也是按照这个同理的,为了鼓励读者动手,我就不动手往下写了:)

一些常用的工具集合

这里的话,我大致是这样思考的,首先,网络这块肯定是需要一个好用一点的编辑器 , 然后是一些下载命令、再然后免不了做版本控制,还有一些编译需求,大致需要装的包也就差不多了 pkg install vim curl wget git cmake -y, 这里-y表示不需要确认了,你直接装吧。

shell环境搭建和配置

颜值即正义,zsh结合oh-my-zsh用起来舒服点,我就配置zsh了,执行命令 sh -c "$(curl -fsSL https://github.com/Cabbagec/termux-ohmyzsh/raw/master/install.sh)" ,默认的主题文件夹在.oh-my-zsh/themes,你可以选一个你喜欢的主题,我选的是robbyrussell这个主题,比较简约好看, 要换主题的话vim ~/,zshrc搜一下ZSH_THEME,然后更换成你想要的主题就好了。 我们希望终端输入命令有提示,这个时候需要装个插件是autosuggestions。执行git clone git://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions 然后 vim ~/.vimrc , 找到插件的配置,把刚才装的插件带上如下:plugins=(..., zsh-autosuggestions)

按键好像有些少,这里可以进行相关的扩展,执行命令 vim ~/.termux/termux.properties,然后粘贴楼下的的内容

extra-keys = [ \
 ['ESC','|','/','HOME','UP','END','PGUP','DEL'], \
 ['TAB','CTRL','ALT','LEFT','DOWN','RIGHT','PGDN','BKSP'] \
]

python环境搭建和配置

python2已经被抛弃了,可以不用管直接上python3吧,不过作为是安装教程嘛,还是提及一下。

python2的安装 pkg install python2 -y python3的安装 pkg install python2 -y

升级下pip

python2 -m pip install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple some-package

python -m pip install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple some-package

这里可以选用jupyer notebook作为学习工具,具体的安装如下:

apt install libclang libclang-dev
apt install libzmq libzmq-dev
pip3 install jupyter -i https://pypi.tuna.tsinghua.edu.cn/simple some-package
pip3 install jupyterlab -i https://pypi.tuna.tsinghua.edu.cn/simple some-package

nodejs环境搭建和配置

这里我们安装的是长期稳定版本pkg install nodejs-lts

Mariadb环境搭建和配置

pkg install mariadb

redis环境搭建和配置

pkg install redis

nginx服务器搭建和配置

pkg install nginx

内网环境共享

需要安装openssh,执行命令pkg install openssh ,然后执行sshd,就可以了,通过whoami查看当前用户名称,默认端口是8022, 密码的话可以通过passwd进行设置。

➜  ~ ssh u0_a274@192.168.1.101 -p 8022
The authenticity of host '[192.168.1.101]:8022 ([192.168.1.101]:8022)' can't be established.
ED25519 key fingerprint is SHA256:xOzm0vQnd9DssNNDuFJ66S88UyVELTwrUgbSrtOgRkA.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '[192.168.1.101]:8022' (ED25519) to the list of known hosts.
u0_a274@192.168.1.101's password:

Welcome to Termux!

Communities: https://termux.org/community
Gitter chat: https://gitter.im/termux/termux
IRC channel: #termux on libera.chat

Working with packages:

 * Search packages:   pkg search <query>
 * Install a package: pkg install <package>
 * Upgrade packages:  pkg upgrade

Subscribing to additional repositories:

 * Root:     pkg install root-repo
 * X11:      pkg install x11-repo

Report issues at https://termux.org/issues

➜  ~
6771655301055_.pic.jpg
6771655301055_.pic.jpg

思考

  • 为什么会有安装termux的想法?

主要是不太想换不锈钢脸盆那,然后线上的云服务器无力支付抚养,所以就慢慢地去了解,发现termux刚好满足需求可以做这件事。

  • 为什么只选Python和nodejs环境?

额,这个你看个人需要吧,用到什么搞什么,像java、c++、go、php都是可以的,楼主脚本写的多一点,就装这两个吧。

  • 为什么没有装mongodb?

mongodb需要的依赖在新版里没有,我看了很多github和stackoverflow的帖子,都不太行,我放弃了。。。。。。

  • 什么样的场景使用?

事情是这样子的,有的时候我可能画完画,或者看完电影,看了下时钟还有一两个小时就12点了,我就不是特别想开电脑了,这个时候我会打开termux玩玩,当然手机屏幕本身不大,如 楼上的教程所示,我是用我家的ipad pro连接到termux上的,这样看着写着舒服多了,毕竟我看电影也是ipad上看的哈哈哈,一气呵成。图中所示的ipad软件是iTerminal Pro(40块钱),我建议你再贴20块钱,买它的组合套装,包括iNetTools和iTransfer。 6781655301055_.pic.jpg

相关资料

分类:

后端

标签:

操作系统

作者介绍

ataola
V1