(Termux)旧手机变Ubuntu服务器

目录

简介

配置termux软件

安装open-ssh

更新SSL

添加密钥

[启动 ssh 服务](#启动 ssh 服务)

查看登录用户名

[查看连接 IP 地址](#查看连接 IP 地址)

设置ssh登录密码

[通过 XShell 连接手机模拟 Linux 系统](#通过 XShell 连接手机模拟 Linux 系统)

[注意:XShell 需要与该手机在同一局域网上才可以进行连接](#注意:XShell 需要与该手机在同一局域网上才可以进行连接)

[手机开启的ssh服务默认端口为 8022](#手机开启的ssh服务默认端口为 8022)

成功连接上!

[通过 手机里面 whoami 命令查看登录用户名](#通过 手机里面 whoami 命令查看登录用户名)

登录用户名

[更换成 Ubuntu 系统](#更换成 Ubuntu 系统)

安装基础软件

查看proot-distro的使用说明

可以查看可安装的Linux系统

[安装 ubuntu-22.04 系统](#安装 ubuntu-22.04 系统)

解决方法:

1、安装openssl1.1

2、发现openssl1.1-tool的package,对它进行安装

​编辑

[3,查看当前目录位置, 一般来说都安装到了/data/data/com.termux/files下](#3,查看当前目录位置, 一般来说都安装到了/data/data/com.termux/files下)

[4,搜索 /data/data/com.termux/files下的 libssl.so.* 所有版本包](#4,搜索 /data/data/com.termux/files下的 libssl.so.* 所有版本包)

5、添加环境变量

6、使当前shell生效

再次尝试安装------------成功

更换为国内镜像

重新尝试安装--------------完美成功

[安装完成,进入 Ubuntu命令](#安装完成,进入 Ubuntu命令)

后期配置

更新软件包

[安装 tmux 、systemd、systemctl、vim、sudo 工具](#安装 tmux 、systemd、systemctl、vim、sudo 工具)

添加用户

修改密码

[赋予sudo 权限](#赋予sudo 权限)

[Ubuntu装 ssh 服务,方便直接进入 Ubuntu 系统](#Ubuntu装 ssh 服务,方便直接进入 Ubuntu 系统)

查看是否安装成功

修改配置

启动

尝试连接

登录成功


Termux是一个强大的终端模拟器,它为Android设备提供了一个类似于Linux的环境。以下是关于Termux的一些关键信息和功能介绍。

简介

Termux是一个开源项目,它允许用户在Android设备上模拟Linux环境,无需Root权限即可使用,它通过APT包管理器自动进行最小安装,用户可以根据需要安装其他软件包。

由于有一些小伙伴无法支付昂贵的服务器租用服务,并且虚拟机安装系统的繁琐,在这里,旧手机通过 termux 也可以作为学习 Linux 服务器的好帮手。

配置termux软件

去 IXCM工作室 下载大佬们帮编译好的 termux 安装包。

官网:IXCM工作室下载站

这里使用最新版 Termux

在旧手机里面安装即可。

安装open-ssh

bash 复制代码
pkg install openssh

如果遇到报错

bash 复制代码
CANNOT LINK EXECUTABLE "ssh-keygen": library "libcrypto.so.3" not found: needed by main executable
CANNOT LINK EXECUTABLE "ssh-keygen": library "libcrypto.so.3" not found: needed by main executable
CANNOT LINK EXECUTABLE "ssh-keygen": library "libcrypto.so.3" not found: needed by main executable
CANNOT LINK EXECUTABLE "ssh-keygen": library "libcrypto.so.3" not found: needed by main executable

更新SSL

bash 复制代码
pkg install openssl

我们可以知道安装成功openssh 服务了。

添加密钥

bash 复制代码
ssh-keygen -A

启动 ssh 服务

bash 复制代码
sshd

查看登录用户名

bash 复制代码
whoami

查看连接 IP 地址

bash 复制代码
ifconfig

设置ssh登录密码

bash 复制代码
passwd

通过 XShell 连接手机模拟 Linux 系统

注意:XShell 需要与该手机在同一局域网上才可以进行连接

手机开启的ssh服务默认端口为 8022

成功连接上!

通过 手机里面 whoami 命令查看登录用户名

登录用户名

输入我们自定义的密码后,即可登录成功!

更换成 Ubuntu 系统

安装基础软件

bash 复制代码
pkg install proot-distro

全部 Y 通过即可。

查看proot-distro的使用说明

bash 复制代码
proot-distro help

可以查看可安装的Linux系统

bash 复制代码
proot-distro list

安装 ubuntu-22.04 系统

bash 复制代码
proot-distro install ubuntu-oldlts

发现报错了。原因如下:

当在termux里使用一些命令时,会提示libssl.so.1.1包找不到。

百度都是常见的linux目录 /usr/local/lib,并不符合termux。

因此,我们要找到termux里的libssl.so.1.1。

解决方法:

1、安装openssl1.1

搜索 openssl1.1 软件包

bash 复制代码
pkg search openssl1.1
2、发现openssl1.1-tool的package,对它进行安装
bash 复制代码
pkg install openssl1.1-tool

全部 Y 即可。

3,查看当前目录位置, 一般来说都安装到了/data/data/com.termux/files下
bash 复制代码
pwd
4,搜索 /data/data/com.termux/files下的 libssl.so.* 所有版本包
bash 复制代码
find /data/data/com.termux/files -name 'libssl.so.*'
5、添加环境变量
bash 复制代码
echo "export LD_LIBRARY_PATH=/data/data/com.termux/files/usr/lib/openssl-1.1" >> ~/.bashrc
6、使当前shell生效
bash 复制代码
export LD_LIBRARY_PATH=/data/data/com.termux/files/usr/lib/openssl-1.1

再次尝试安装------------成功

发现下载速度极慢,这是由于连接的是国外的镜像源。

更换为国内镜像

bash 复制代码
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
apt update && apt upgrade

更换成功。

重新尝试安装--------------完美成功

等待安装即可。

安装完成,进入 Ubuntu命令

bash 复制代码
proot-distro login ubuntu-oldlts

后期配置

更新软件包

bash 复制代码
apt update && apt upgrade

安装 tmux 、systemd、systemctl、vim、sudo 工具

bash 复制代码
apt install tmux && apt install vim && apt install systemd -y && apt install systemctl -y && apt install sudo

添加用户

bash 复制代码
adduser <新用户名>

修改密码

bash 复制代码
passwd <用户名>

赋予sudo 权限

bash 复制代码
usermod -aG sudo <用户名>

Ubuntu装 ssh 服务,方便直接进入 Ubuntu 系统

bash 复制代码
apt-get install openssh-server openssh-client

查看是否安装成功

bash 复制代码
systemctl status ssh
执行 systemctl 遇到的问题
无法找到 systemctl 执行文件
-bash: /bin/systemctl: No such file or directory

解决方法:

1、找到 systemctl 执行文件位置

find / -name 'systemctl'

我们会发现 安装 systemctl相关工具的时候执行文件安装到了**/usr/bin/systemctl** 这里了。

2、将执行文件放置正确位置

cp -r /usr/bin/systemctl /bin/
非systemd 初始化设置

重新执行,我们又看到了报错

System has not been booted with systemd as init system (PID 1). Can't operate.
Failed to connect to bus: Host is down

解决方法:

# apt 更新
apt-get update
 
# 一个一个顺序安装 systemd, systemctl即可
apt-get install systemd -y
apt-get install systemctl -y

重新运行即可成功。

安装成功,但未启动。

修改配置

bash 复制代码
vim /etc/ssh/sshd_config

修改端口

查找:#Port 22

修改为: Port 2222

注意: 端口最好是4位数即以上的端口号,否则容易造成ssh启动失败,这儿Termux上Linux存在的问题。

支持root用户

查找:#PermitRootLogin prohibit-password 或者 #PermitRootLogin yes

修改为:PermitRootLogin yes

支持密码认证

查找:#PasswordAuthentication yes

修改为:PasswordAuthentication yes

启动

bash 复制代码
systemctl start ssh && systemctl enable ssh

或者

service ssh start && service ssh status

尝试连接

登录成功

相关推荐
IDC02_FEIYA7 分钟前
Discuz论坛网站管理员的默认用户名admin怎么修改啊?
服务器·web
xxjkkjjkj11 分钟前
udp_socket
linux·网络
钰爱&13 分钟前
【操作系统】Linux之网络编程(UDP)(头歌作业)
linux·操作系统
勤奋的小王同学~14 分钟前
(计算机网络)期末
服务器·网络·计算机网络
世纪天龙16 分钟前
如何选择服务器
运维·服务器
最后一个bug25 分钟前
如何理解Lua 使用虚拟堆栈
linux·c语言·开发语言·嵌入式硬件·lua
Wang's Blog36 分钟前
Linux: 任务的定时与延期
linux·服务器
熬了夜的程序员1 小时前
Linux 下的 AWK 命令详细指南与示例
linux·运维·服务器
安静读书1 小时前
持续集成与持续部署:CI/CD简介
运维·ci/cd
全栈小51 小时前
【PHP】部署和发布PHP网站到IIS服务器
服务器·开发语言·php