虚拟 Debian 环境

您可以通过 FIRERPA 附加模块创建可在安卓内使用的完整 Debian 环境,类似 Termuxandrodeb 提供的功能。您可以在此环境使用 apt 安装软件以及进行代码编译,同样,您可以在此环境中自行编译及使用 BPF 相关程序。它是一个近乎完整的、运行于安卓设备上的 Linux 环境。

提示

该 Debian 环境只包含基础的软件包,您需要使用 apt 自行安装 git、python3 等常用命令。

安装环境

您可以在项目的发布页面中找到 lamda-mod-debian-arm64-v8a.tar.gz(请根据您的机器架构下载对应的安装包)。下载完成后,打开远程桌面,将下载的文件拖动上传到设备之中(我们默认您没有修改过远程桌面的文件上传目录),随后进行如下安装操作。本安装操作无需重复进行。

提示

您在远程桌面上传的文件默认会在 ~/uploads 目录下。

tar -C ~/modules -xzf ~/uploads/lamda-mod-debian-arm64-v8a.tar.gz

执行完命令后即完成了安装操作,下面介绍如何进入系统。

进入环境

安装完相关环境的文件系统后,我们可以执行命令进入虚拟 Debian 环境。Debian 环境已安装到 ~/modules/debian,您可以执行如下命令进入 Debian 交互式终端。

debian /bin/bash

如果只需要执行一次命令,例如执行 id 命令,您可以这样使用:

debian /bin/bash -c id

注意

同时只支持一个实例进入虚拟环境。如果在执行 debian /bin/bash 后仍保持该会话,您在其他终端再次执行此命令将返回错误。请退出先前的 debian 会话后再尝试。

进阶使用

我们将介绍一个简单的进阶用法。完成后,您可以在环境中运行 SSH 服务,或运行 Python 脚本,并且不再受会话数量的限制。首先执行如下命令进入虚拟环境。

debian /bin/bash

此刻您应该处在虚拟环境之中,跟随我们继续执行下面的命令。

apt update
apt install -y openssh-server procps python3 python3-pip python3-dev
echo 'PermitRootLogin yes' >> /etc/ssh/sshd_config
echo 'StrictModes no' >> /etc/ssh/sshd_config
mkdir -p /run/sshd
# 修改 root 密码
echo root:lamda|chpasswd
# 退出 debian 环境
exit

现在该执行命令来启动我们的 SSH 服务器了。

debian /usr/sbin/sshd -D -e

上面的命令会占用当前终端(卡住)。为避免这种情况,您也可以使用内置的定时任务,使 SSH 服务随 FIRERPA 服务自启动。接下来,请执行 crontab -e,并在其中写下如下规则并重启 FIRERPA 服务或设备。关于定时任务的使用文档您也可以查看 定时任务 章节。

@reboot debian /usr/sbin/sshd -D -e >~/sshd.log 2>&1

现在获取本设备 IP 地址,随后在您电脑上执行如下命令并输入密码 lamda 即可登录。

ssh root@192.168.x.x

您可以继续发挥各种奇思妙想,创造无限可能。它就是一个小型 Linux 服务器。