什么?Android上面跑Linux?

什么?Android上面跑Linux?

镜像下载、域名解析、时间同步请点击阿里云开源镜像站

前言

众所周知,现在程序员因为工作、个人兴趣等对各种系统的需求越来越大,部分人电脑做的还是双系统。其中,比较常见的有各种模拟器、虚拟机在windows上面跑Android、Linux,大家估计都习以为常,Android上面跑windows也是Android 13做的一个有趣的新功能:工作虚拟化支持(不是重点,在这就不过多阐述),但是,你知道么,Android上面可以跑Linux了,重要的是,还无需root。接下来我们将介绍这款1万Star的神器——Termux。

什么是Termux?

Termux是一款基于 Android 平台的开源 Linux 终端模拟器,使用 pkg(apt) 进行软件包的管理。最重要的是,它无需 root 权限,因此,绝大多数 Android 都可以运行。 Termux官网链接

Termux能做些什么?

目前来说,它能做一些简单的 Linux 任务:

  • 享受 Bash 和 Zsh
  • 使用 Vim 编辑文件
  • 通过 SSH 访问服务器
  • 使用 GCC 和 Clang 编译代码
  • 使用 Git 检查项目
  • 运行 MySQL,Redis 等服务器

使用方法

什么?Android上面跑Linux?

因为 Termux 是一款 Linux 终端模拟器,因此,在命令的使用方面和 Linux 是一致的。在这里,我将介绍一些针对 Termux 工具的一些使用方法。

初次使用

业内已经有了一种共识,在涉及包管理方面,尽量都会将官方源替换成国内镜像源,Termux 也不例外。初次进入 Termux 后,我们可以使用 阿里云 的 Termux 镜像

$ sed -i 's@^\(deb.*stable main\)$@#\1\ndeb https://mirrors.aliyun.com/termux/ stable main@' $PREFIX/etc/apt/sources.list # 更换源文件
$ pkg up # 更新源文件
$ pkg udpate -y && pkge upgrade # 更新系统及软件

替换为国内镜像后,接下来,需要开启 Termux 的存储权限:

$ termux-setup-storage

执行命令之后,会弹出权限确认窗口,选择「始终允许」即可。

什么?Android上面跑Linux?

pkg 使用命令速记

  • pkg search搜索包
  • pkg install安装包
  • pkg uninstall卸载包
  • pkg update 更新源
  • pkg upgrade 升级软件包
  • pkg shoe显示某个包的详细信息

长按屏幕

什么?Android上面跑Linux?

如果需要对 Termux 中的内容进行复制以及粘贴内容至 Termux,可以通过长按屏幕实现。

额外按键视图

什么?Android上面跑Linux?

可以看到,在正常的键盘上方,还有一盘额外的功能键,分别是:ESC 键,Tab 键,CTRL 键,ALT 键,- 符号,向下以及向上功能键。有了这一行额外视图,可以更加方便地实现 Android 键盘上没有,而电脑键盘上有的功能。

音量+组合

因为 Android 键盘没有电脑键盘上的一些功能按键,此时,我们可以通过按住音量键+,再输入键盘某个字母数字键,可以达到一些功能键的作用。

  • 音量+ Q:显示/隐藏额外按键视图
  • 音量+数字键:Fx(电脑键盘上的数字功能键)
  • 音量+L:|(管道字符)
  • 音量+H:~(波浪字符)
  • 音量+U:_(下划线字符)
  • 音量+P:上一页
  • 音量+N:下一页

一些简单的应用

HTTP Server

有些时候,我们需要将 Android 上的某些文件发送到其他设备(例如笔记本,分享)。以往的解决方案一般是用微信或者 QQ 来作为中转站,现在,可以利用 Termux 搭建一个简单的文件服务器来实现。

$ pkg install python -y # 需要使用 Python
$ ifconfig wlan0 # 查看 Android 在局域网中的 IP 地址(我的为 192.168.2.104)
$ python -m http.server
Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/)...

命令成功运行之后,可以看到输出信息中包含了端口地址(我这里是 8000)。此时,用另外一台处于相同局域网(例如 Wi-Fi)的设备在浏览器地址输入 192.168.2.104:8000 即可访问文件服务器了。

什么?Android上面跑Linux?

看起来像黑客

一提到命令行,怎能少得了那些酷炫的字符如降雨一般,这看起来就很黑客。我们可以通过安装 pkg install cmartix 来实现这种效果。

什么?Android上面跑Linux?

尾言

总得来说,实用性相对较差,操作略有繁琐,不过B格拉满,可以不经意间在程序媛面前露上这么一手,保证收获妹子满满的崇拜眼神,发际线似乎都前移了几分XD

本文转自:https://juejin.cn/post/7078561241756614669

Original: https://www.cnblogs.com/helong-123/p/16067250.html
Author: 萌褚
Title: 什么?Android上面跑Linux?

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/72048/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • GitLab-安装

    先创建三个目录 config, logs, data Original: https://www.cnblogs.com/saryli/p/16116606.htmlAuthor:…

    Linux 2022年8月30日
    0150
  • Java面向对象之各种变量详解

    在Java中一定有很多变量让大家头疼,成员变量、类变量、局部变量等等,今天就来分别认识认识他们吧! Java面向对象之各种变量详解 前言 在 Java语言中, 根据定义变量位置的不…

    Linux 2022年11月7日
    086
  • ubuntu删除源

    删除文件夹/etc/apt/sources.list.d/下的源 删除/etc/apt/sources.list文件中的不必要的东西 Original: https://www.c…

    Linux 2022年8月26日
    0118
  • MD5 加密后的类型(16位大、16位小、32位大、32位小)

    MD5 加密后的位数有两种:16 位与 32 位。16 位实际上是从 32 位字符串中取中间的第 9 位到第 24 位的部分,用 Java 语言来说,即: <span cla…

    2022年8月11日
    0134
  • CentOS 7 yum安装nginx-1.12.0

    CentOS 7 中的 yum 没法直接使用 yum install nginx 这个指令去安装nginx,因为nginx这个服务不是yum库中自带的。图1是官方提供的大致安装步骤…

    Linux 2022年8月30日
    0157
  • 万物皆有始有终: Hawk5即日起停止升级迭代

    从即日起,Hawk将停止升级工作,其版本号将停留在5。 Hawk已经开发和维护6年时间了,它曾经承载了开发者很多的期待。背后也有不少故事和为它付出过的朋友。6年间Hawk拥有了上万…

    Linux 2022年8月26日
    0144
  • 了解一下Linux系统中的load average

    CPU利用率,顾名思义就是对于CPU的使用状况,这是对一个时间段内CPU使用状况的统计,通过这个指标可以看出在某一个时间段内CPU被占用的情况,如果被占用时间很高,那么就需要考虑C…

    Linux 2022年8月24日
    0107
  • 转: 关于 linux free的命令的说明

    前段时间有个项目的用C写的,性能测试时发现内存泄露问题。关于怎么观察内存使用问题,free是很好用的一个命令。 Mem:表示物理内存统计 -/+ buffers/cache:表示物…

    Linux 2022年8月24日
    087
  • Linux下getopt()函数

    最近在弄Linux C编程,本科的时候没好好学啊,希望学弟学妹们引以为鉴。 好了,虽然啰嗦了点,但确实是忠告。步入正题: 我们的主角—-getopt()函数。 英雄不问…

    Linux 2022年8月24日
    0138
  • 页面国际化

    6. 页面国际化 有时,我们的网站会涉及中英文甚至多种语言的切换,所以我们需要将页面国际化。 [En] Sometimes, our website will involve sw…

    Linux 2022年11月8日
    083
  • 狂神说笔记——Git快速入门17

    Git快速入门 1.版本控制 什么是版本控制? 版本迭代,新的版本!版本管理器。 版本控制(Revision control)是一种在开发的过程中用于管理我们对文件、目录或工程等内…

    2022年8月30日
    0171
  • Linux环境下SVN的安装,创建用户以及对应用户的权限设置

    一、SVN安装 yum install subversion :安装svn 2.安装成功后查看svn版本:svn –version 3.创建svn仓库: (1) mkd…

    2022年8月13日
    0200
  • Linux的信号(转)

    信号(Signal)是一种软件中断,比如Ctrl+C的退出命令实质上就是使用了信号。信号在Linux操作系统中提供了一种处理异步事件的方法,可以很好地在多个进程之间进行同步和简单的…

    Linux 2022年8月24日
    0128
  • Ubuntu 16.04将左侧面板置于底部

    ctrl+alt+t打开终端,输入: csharp;gutter:true;gsettings set com.canonical.Unity.Launcher launcher-…

    Linux 2022年8月26日
    0125
  • linux sed

    https://www.runoob.com/linux/linux-comm-sed.html Original: https://www.cnblogs.com/moss_ta…

    Linux 2022年8月26日
    0165
  • [转帖]shell学习之shell执行方式及排错

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com Original: …

    Linux 2022年9月14日
    0129
最近整理资源【免费获取】:   👉 程序员最新必读书单  | 👏 互联网各方向面试题下载 | ✌️计算机核心资源汇总