Termux

Termux是一个Android终端模拟器和Linux环境应用程序,可直接运行而无root安装。自动安装了最小的基本系统-使用APT软件包管理器可以使用其他软件包。

安全的。 使用OpenSSH的ssh客户端访问远程服务器。Termux在漂亮的开源解决方案中将标准软件包与精确的终端仿真相结合。

功能打包。 在Bash,fish或Zsh和nano,Emacs或Vim之间选择。通过您的短信收件箱中的Grep。使用curl访问API端点,并使用rsync将联系人列表的备份存储在远程服务器上。

可定制的。 通过Debian和Ubuntu GNU / Linux已知的APT软件包管理系统安装所需的软件包。为什么不从安装Git并同步您的点文件开始呢?

可探索的。 您是否曾经坐在公交车上,想知道tar到底接受了哪些参数?Termux中提供的软件包与Mac和Linux上的软件包相同-在手机上安装手册页,并在一个会话中阅读手册,而在另一个会话中进行实验。

附带电池。 您能想象比读书线驱动的Python控制台更强大,更优雅的袖珍计算器吗?最新版本的Perl,Python,Ruby和Node.js均可用。

准备扩大规模。 连接蓝牙键盘,并在需要时将设备连接到外部显示器-Termux支持键盘快捷键并具有完整的鼠标支持。

可修补的。 通过使用Clang编译C文件进行开发,并使用CMake和pkg-config构建您自己的项目。如果您遇到困难并需要调试,则GDB和strace均可用。

Termux下载

Termux官网:
https://termux.com/

官网推荐下载地址:
https://f-droid.org/packages/com.termux/

该版本需要 Android 7.0 及以上版本。我使用华为P9和坚果R1都可以正常使用。

2021年8月25日补充: 低于Android 7.0的机型,可以尝试使用老版本的。实测android 6可以使用
https://download.csdn.net/download/lxyoucan/21516104

SSH远程管理

为了操作方法,我建议使用电脑ssh连接手机中的 termux来操作,连接方法见:
安装openssh

apt update
apt install openssh

启动sshd服务

sshd

这样手机上就安装好了 ssh并启动了服务。

设置自动启动ssh服务

echo "sshd" >> ~/.bashrc

手机查看当前用户名

whoami

我的显示结果为:

u0_a100

注意这个用户名每个人是不一样的。

手机查看当前ip

ifconfig -a

我的手机当前的ip为 :192.168.2.108
修改密码

passwd

我这里设置的密码 termux2021,密码你可以自行设置
pc连接ssh
命令如下:

ssh -p 8022 u0_a100@192.168.2.108

或者你也可以使用xshell,Termiux之类的工具远程。
输入我新设置的密码 termux2021,成功进来啦!!!

设置自动启动ssh服务

echo "sshd" >> ~/.bashrc

至此我们ssh服务就配置完成了,后面我们就可以用电脑通过ssh来玩安装在手机中的linux了。

安装Linux发行版

Termux提供了一个proot-distro软件包,用于管理Termux内部的Linux发行版。据说几乎没有性能损失。

您可以通过执行以下命令安装该实用程序
安装proot-distro

pkg install proot-distro

目前,它支持以下发行版:
Alpine Linux(别名:alpine)-最小的可用发行版。
Arch Linux(别名:archlinux)
Debian 10 Buster(别名:debian-buster)
Kali Nethunter(别名:nethunter)-当前只有最小的构建。
Ubuntu 18.04 / 20.04(别名:ubuntu-18.04 / ubuntu-20.04)
要安装发行版,只需运行以下命令(假设已安装proot-distro):

# 查询支持哪些发行版本
proot-distro list1
proot-distro install <alias>

我安装的 是archlinux,如下命令:

proot-distro install archlinux

archlinux大概需要下载600M左右的文件,执行时间看你的网速了。如果想下载一个较小的发布版本可以试试其他的,比如:proot-distro install ubuntu-20.04只需要下载25M左右。见:《玩转手机中的linux系统termux并搭建java开发环境》https://blog.csdn.net/lxyoucan/article/details/113831014。安装alpine会更小,只需要2.5M左右。

命令执行结果如下:

~ $ proot-distro install archlinux
[*] Installing Arch Linux...
[*] Downloading rootfs tarball...% Total    % Received % Xferd  Average Speed   Time    Time     Time  CurrentDload  Upload   Total   Spent    Left  Speed
100   646  100   646    0     0    551      0  0:00:01  0:00:01 --:--:--   551
100  549M  100  549M    0     0  1119k      0  0:08:22  0:08:22 --:--:-- 1964k[*] Checking integrity, please wait...
[*] Extracting rootfs, please wait...
[*] Writing '/data/data/com.termux/files/usr/var/lib/proot-distro/installed-rootfs/archlinux/etc/profile.d/termux-proot.sh'...
[*] Writing resolv.conf file (NS 1.1.1.1/1.0.0.1)...
[*] Writing hosts file...
[*] Registering Android-specific UIDs and GIDs...
[*] Running distro-specific configuration steps...
gpg: /etc/pacman.d/gnupg/trustdb.gpg: trustdb created
gpg: no ultimately trusted keys found
gpg: starting migration from earlier GnuPG versions
gpg: porting secret keys from '/etc/pacman.d/gnupg/secring.gpg' to gpg-agent
gpg: migration succeeded
gpg: Generating pacman keyring master key...
gpg: key CD1AFEBD84DEF5CA marked as ultimately trusted
gpg: directory '/etc/pacman.d/gnupg/openpgp-revocs.d' created
gpg: revocation certificate stored as '/etc/pacman.d/gnupg/openpgp-revocs.d/5BE44E190E37181EE9000E0FCD1AFEBD84DEF5CA.rev'
gpg: Done
==> Updating trust database...
gpg: marginals needed: 3  completes needed: 1  trust model: pgp
gpg: depth: 0  valid:   1  signed:   0  trust: 0-, 0q, 0n, 0m, 0f, 1u
==> Appending keys from archlinuxarm.gpg...
==> Locally signing trusted keys in keyring...-> Locally signing key 69DD6C8FD314223E14362848BF7EEF7A9C6B5765...-> Locally signing key 02922214DE8981D14DC2ACABBC704E86B823CD25...-> Locally signing key 9D22B7BB678DC056B1F7723CB55C5315DCD9EE1A...
==> Importing owner trust values...
gpg: setting ownertrust to 4
gpg: inserting ownertrust of 4
gpg: setting ownertrust to 4
==> Updating trust database...
gpg: marginals needed: 3  completes needed: 1  trust model: pgp
gpg: depth: 0  valid:   1  signed:   3  trust: 0-, 0q, 0n, 0m, 0f, 1u
gpg: depth: 1  valid:   3  signed:   1  trust: 0-, 0q, 0n, 3m, 0f, 0u
gpg: depth: 2  valid:   1  signed:   0  trust: 1-, 0q, 0n, 0m, 0f, 0u
Generating locales...en_US.UTF-8... done
Generation complete.
checking dependencies...
:: base optionally requires linux: bare metal supportPackages (5) diffutils-3.7-3  linux-firmware-20200721.2b823fc-1  mkinitcpio-28-1  mkinitcpio-busybox-1.31.1-1  linux-aarch64-5.8.0-1Total Removed Size:  711.25 MiB:: Do you want to remove these packages? [Y/n]
:: Running pre-transaction hooks...
(1/1) Removing linux initcpios...
:: Processing package changes...
(1/5) removing linux-aarch64                                                            [###################################################] 100%
(2/5) removing mkinitcpio                                                               [###################################################] 100%
(3/5) removing mkinitcpio-busybox                                                       [###################################################] 100%
(4/5) removing diffutils                                                                [###################################################] 100%
(5/5) removing linux-firmware                                                           [###################################################] 100%
:: Running post-transaction hooks...
(1/3) Reloading system manager configuration...Skipped: Current root is not booted.
(2/3) Arming ConditionNeedsUpdate...
(3/3) Updating module dependencies...
[*] Installation finished.Now run 'proot-distro login archlinux' to log in.

就这么简单,我们竟然在手机上安装了archlinux,当初我在vmware中安装archlinux可是费了好大劲的。
《2021年vmware安装archlinux》
https://blog.csdn.net/lxyoucan/article/details/115226297

现在已经安装完成了archlinux,怎么进入archlinux呢?
进入archlinux

proot-distro login archlinux

执行结果如下:

~ $ proot-distro login archlinux
[root@localhost ~]#

出现了root和#的标识了,这意味着我们现在可以为所欲为了!

切换国内源

使用说明
编辑 /etc/pacman.d/mirrorlist ,在文件的最顶端添加

Server = https://mirrors.ustc.edu.cn/archlinuxarm/$arch/$repo

详细了解见:
https://mirrors.ustc.edu.cn/help/archlinuxarm.html#id1

使用pacman安装软件之前先更新一下系统

#更新系统,不然可能安装软件报错
pacman -Syyu

archlinux安装软件

以安装vim为例

pacman -S vim

neofetch

pacman -S neofetch

安装设置中文

查看当前语言环境

echo $LANG

查看当前系统是否有中文语言包

locale -a

如果没有中文语言包

vim /etc/locale.gen

查看文件中是否有zh_CN.UTF-8在文件中增加一行

zh_CN.UTF-8 UTF-8

配置完成以后运行:

locale-gen

生成 locale。
向 /etc/locale.conf 输入内容

echo 'LANG=zh_CN.UTF-8'  > /etc/locale.conf

然后,修改/etc/environment(在文件的末尾追加):

LANG="zh_CN.UTF-8"
LANGUAGE="zh_CN:zh:en_US:en"

/etc/environmen这一步加不加实测效果一样,我不清楚为什么这里的环境变量没有生效,反正还是加一下放心一些吧。

手动执行一下export LANG=zh_CN.UTF-8

这里我们输入date查看时间,发现已经有中文了。

[root@localhost ~]# date
2021年 05月 13日 星期四 07:48:25 UTC

重启进的时候发现还是英文的,那我把就把LANG设置放进环境变量里吧。

#这里环境变量根据自己的环境来,如果是zsh才放到zsh的配置文件中
vim /etc/bash.bashrc

在底部增加:

export LANG=zh_CN.UTF-8

手机熄屏ssh断开问题

以华为p9为例,当我用电脑连接手机的ssh时,手机一熄屏过了几秒后,ssh就自动断开了。怎么解决呢?
打开通知栏:

ACQUIRE WAKELOCK 点击后会成如下的样子。

这样手机熄屏后,Termux也可以正常在后台运行啦!但是即使这样用久了还是会被系统杀掉,怎么解决我还不太清楚,实在不行就亮屏呗。

总结


我的5年前的华为P9又能发光发热啦!虽然屏已碎,继续服役。
废弃的手机,拿来做个轻量级的服务器也不错。省电还没有噪音!甚至像我一样,在手机上做一些简单的代码的编写一点压力没有。

都看到这里了,不如点个赞喽!

android手机用Termux安装archlinux相关推荐

  1. android_ android apk analyzer(libchecker apk分析器):分析Android手机上已安装的app(库/基础组件分析/开发技术)/从酷安市场下载安装包

    android apk analyzer(libchecker apk分析器):分析Android手机上已安装的app(库/基础组件分析/开发技术-) download app(apk) Releas ...

  2. 电脑管理android手机版下载安装,airdroid下载

          AirDroid 是一款功能强大的安卓手机管理软件,通过airdroid(安卓手机管理软件)可以让你在PC浏览器来管理Android手机的应用,可以管理你的手机通讯录,媒体的传输,应用升级 ...

  3. Android手机的驱动安装

    Android手机连接电脑时,一般情况下,电脑会自动搜索并安装相应的驱动,但如果自动搜索安装不成功,就需要我们手动来安装.以下是手动安装流程: 1.去手机官网下载对应机型的USB驱动,如有必要,进行解 ...

  4. Android手机提示“未安装应用程序”

    用eclipse调试应用时,遇到了这个问题,网上给出的解决方案倒是挺多,但似乎一个都没奏效,而且我手机也重启了,还是有问题,郁闷ing- 然后看到一篇文章指出,可能不是签名和SD的卡问题,而是我们自己 ...

  5. Android手机免root安装Linux+图形化

    最近在家呆久了无聊就想把家里闲置的旧手机拿来折腾,经过几天总算差不多了!本来想着使用linux deploy的但是这个软件需要ROOT,而现在手机基本不支持root,我的手机又是华为的(华为的都关闭了 ...

  6. 无线智能插座Android手机客户端软件安装

    该无线智能插座的Android手机客户端软件的详细安装过程如下所示(以博主的nova5i手机为例): (1)首先打开Android Studio开发工具中的工程开发项目 (2)利用手机充电数据线,将充 ...

  7. android手机nfc功能安装,小米6怎么使用NFC功能?小米手机NFC功能使用教程

    NFC设置 在手机中找到设置-更多连接方式-打开NFC 在默认钱包中,默认为使用小米钱包,可以使用MI pay,小米公交卡 当然,你也可以选择其他的:使用HCE钱包.使用SIM卡钱包 NFC共享 在更 ...

  8. android手机nfc功能安装,Android手机NFC分享功能实测-头条网

    图一.二 名片.网址分享 温馨提示:传送文件时双方手机需处于未锁屏状态,并开启手机的NFC和Android Beam功能,有些手机的设置菜单中找不到Android Beam,是因为其功能已经内置在系统 ...

  9. android 手机调试app安装失败(无法安装)处理办法

    关键步骤: 1.安装adb.Downloads - ADB Shell 2.查找设备号:adb devices -l(小写L),第一列就是 3.adb -s 设备号 uninstall app名称 详 ...

  10. android 手机usb 驱动安装

    连上手机 1.查看你的设备(有!号的)的ID号:   1)右键单击[我的电脑] -> 属性 -> 设备管理器   2)右键单击[有问号的设备] -> 属性 -> 详细信息 -& ...

最新文章

  1. 双十二自动刷淘宝能量,这个脚本你值得拥有
  2. c#往结构体里面读数据_结构体内存对齐,这回给你彻底搞会!
  3. 源码安装libjpeg-turbo1.2.1,无root权限
  4. 博主应邀参加YOCSEF虚拟化技术论坛
  5. 未检测到正确安装的网络适配器_电脑网络适配器有感叹号怎么解决?
  6. 2020计算机软考笔试题目,2020年计算机软考信息系统项目管理师巩固练习题及答案...
  7. js数组获取index_想自学JS吗?想提升JS底层原理吗?76张脑图带你彻底搞懂原生JS...
  8. Understanding Bootstrap Of Oracle Database
  9. 详解iMazing保障数据安全的设置
  10. c语言标识符等价类测试,c语言基础测试题--牧码南山招新检测题
  11. java mysql tree_java面試題:你了解mysql的B+TREE索引嗎?
  12. .gen格式文件读取,完成兰伯特和墨卡托投影转换
  13. 计算机硬盘能改成移动硬盘,旧硬盘怎么改装成移动硬盘
  14. 电子基础元器件——电阻器
  15. 天翼云携手华为,强强联合,共创数据存储新生态
  16. python能在ipad上运行吗_如何用iPad运行Python代码?
  17. 全球程序员收入出炉!北京收入排入全球第十
  18. LeetCode题解(1079):活字印刷(Python)
  19. 服务器appcrash的问题怎么修复,win7的ie出现APPCRASH问题怎么处理?
  20. kali虚拟机安装及配置

热门文章

  1. 树的递归思维:自顶向下、自底向上
  2. String类12个常用的方法
  3. 对讲机写频教程以(TCL-HT9为例)
  4. 基站的小区号256变换
  5. GB28181学习之路——eXosip获取IP和端口
  6. OpenCms创建网站过程图解
  7. 《信号与系统》(吴京)部分课后习题答案与解析——第五章(PART3)(系统)
  8. 【编译原理总结】由正则式构造等价的DFA并将其最小化
  9. 政务型CMS内容管理系统
  10. TCP/IP常见攻击手段