旧手机变为linux服务器之Mobian

介绍

我上一台手机是小米的mix2s,因为用了三年多了,也有一些毛病,存储也不太够,所以我就换手机了,我这台小米mix2s就成为了备用机,但用到的时候很少,我就想着能不能刷成linux,我找到了一篇文章:在骁龙(835 845 855等)设备通过UEFI运行Archlinux我要刷ubuntu,其实步骤差不多,只是rootfs用的是ubuntu,因为本人技术有限,没刷成,我就想着看有没有现成的,然后就找到两个适合我手机型号的开源系统,分别是

其中postmarketOS使用Alpine Linux,而Mobian使用Debian GNU/Linux作为其开发和运行环境。

postmarketOS上适配小米mix2s设备的是社区某个大佬移植,测试版,不是稳定版,功能很少,我用过postmarketOS,bug挺多的。

而mobian相比于postmarketOS,适配小米mix2s的功能更多,所以我使用了mobian。

在对应官网上查看支持的设备型号,看有没有支持自己型号的手机,在选择对应的系统,尽量选择稳定版(Main)的,测试版(Testing)的bug较多

除了这些支持的设备,可以在github上面找找,应该能找到非官方移植支持的其它设备,例如红米2刷Mobian体验原生Linux及软件安装问题处理[ 手机刷LINUX系列]为红米6 Pro移植mobian

Mobian简介

Mobian是一个社区驱动的项目,它基于Debian GNU / Linux操作系统设计,专为支持ARM架构而开发。作为一个非官方移植的操作系统,Mobian致力于在智能手机、平板电脑、单板计算机等设备上提供一种开放、自由和隐私保护的替代操作系统。

Mobian采用了GNOME桌面环境和Phosh用户界面,并集成了各种自由和开源应用程序,如Firefox浏览器、电话、信息、媒体播放器等。这样,用户可以方便地实现日常任务和消费需求。此外,Mobian还强调安全性和隐私性,为用户设备数据提供匿名性和私密性保障。通过添加各种安全控件和软件特性,Mobian确保用户在使用其操作系统时都有充分的保障和安全。

尽管Mobian是一个非官方移植,但已经获得了广泛的关注和支持。它由自愿参与的开发者和社区成员共同维护,不受任何公司或组织的控制。对于需要一个符合自己需求的操作系统的ARM设备用户来说,Mobian是一个令人兴奋的选择。

准备

刷镜像前要确保已经解了BL锁,解BL锁方法上网一搜随便都能找到,这里是我搜到一篇小米的:【玩机教程】小米手机详细官方解BL锁🔒教程

安装方法

mobian有支持我的设备,直接按官方方法刷入即可

下载镜像

SDM845

下载最新的版本,最新版本是debian12

安装adb-fastboot

首先电脑要安装adb-fastboot,这里我们下载windows版的

解压,进入解压的目录,打开platform-tools文件夹,可以看到有adbfastboot的exe文件,把整个platform-tools文件夹拖到你的任意盘里(建议弄个专门放工具的目录tools)

添加环境变量,这样我们就方便使用adbfastboot命令了,环境变量参数就是platform-tools文件夹的路径,例如E:\tools\platform-tools

刷入镜像

官方文档

我下载的目前最新的20230521包,是解压下载的tar.gz包,然后进入文件夹,在当前目录上面的路径显示框中输入cmd,然后回车即可。

如果不同型号也是骁龙845的,看官方文档来确定手机的代号,小米mix2s的代号是polaris

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#检查设备是否连接
fastboot devices

#刷入boot分区
fastboot flash boot mobian-sdm845-phosh-20230521.boot-polaris.img

#刷入system分区
fastboot flash system mobian-sdm845-phosh-20230521.boot.img

#刷入userdata分区
fastboot -S 100M flash userdata mobian-sdm845-phosh-20230521.rootfs.img

#清除缓存文件
fastboot erase dtbo

重启完就能使用mobian了

登录

默认用户:mobian

默认密码:1234

基础配置和使用

换源

1
sudo vim /etc/apt/sources.list
1
2
3
4
5
6
7
8
9
#中科大源
deb https://mirrors.ustc.edu.cn/debian/ bookworm main contrib non-free non-free-firmware
deb-src https://mirrors.ustc.edu.cn/debian/ bookworm main contrib non-free non-free-firmware
deb https://mirrors.ustc.edu.cn/debian/ bookworm-updates main contrib non-free non-free-firmware
deb-src https://mirrors.ustc.edu.cn/debian/ bookworm-updates main contrib non-free non-free-firmware
deb https://mirrors.ustc.edu.cn/debian/ bookworm-backports main contrib non-free non-free-firmware
deb-src https://mirrors.ustc.edu.cn/debian/ bookworm-backports main contrib non-free non-free-firmware
deb https://mirrors.ustc.edu.cn/debian-security/ bookworm-security main contrib non-free non-free-firmware
deb-src https://mirrors.ustc.edu.cn/debian-security/ bookworm-security main contrib non-free non-free-firmware

登录 root

1
sudo -i

下面的命令我都是用root用户进行,命令失败注意看权限

修改密码

1
passwd root
1
passwd mobian

更新源

1
apt update && apt upgrade -y

设置

设置firefox浏览器为中文

1
apt install firefox-esr-l10n-zh-cn -y 

安装基础工具

1
apt install cmake make wget curl git gcc g++ clang python3-pip openssh* lrzsz neofetch htop -y

允许root用户ssh远程登录

1
echo "PermitRootLogin yes " >> /etc/ssh/sshd_config | echo "PasswordAuthentication yes " >> /etc/ssh/sshd_config
1
systemctl restart sshd

安装docker

安装 apt 依赖包,用于通过 HTTPS 来获取仓库。

1
apt install apt-transport-https ca-certificates gnupg2 software-properties-common -y

添加 Docker 的官方 GPG 密钥:

1
curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/debian/gpg | apt-key add -

添加源

1
vim /etc/apt/sources.list.d/docker.list
1
2
3
#中科大源
deb [arch=arm64] https://mirrors.ustc.edu.cn/docker-ce/linux/debian bookworm stable
#deb-src [arch=arm64] https://mirrors.ustc.edu.cn/docker-ce/linux/debian bookworm stable
1
apt update

warning

会出现以下warning:

W: https://mirrors.ustc.edu.cn/docker-ce/linux/debian/dists/bookworm/InRelease: 密钥存储在过时的 trusted.gpg 密钥环中(/etc/apt/trusted.gpg),请参见 apt-key(8) 的 DEPRECATION 一节以了解详情。

解决warning

1
apt-key list

找到docker的公钥指纹,复制后八个字符0EBFCD88(不包括空格)

导入 /etc/apt/trusted.gpg.d 目录下专用文件中的 GPG 密钥:

这里是新创建了一个文件 docker.gpg

1
apt-key export 0EBFCD88 | gpg --dearmour -o /etc/apt/trusted.gpg.d/docker.gpg

安装 Docker Engine-Community

1
apt install docker-ce docker-ce-cli containerd.io -y

配置镜像加速

1
vim /etc/docker/daemon.json

加入以下内容:

1
2
3
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn/"]
}
1
systemctl daemon-reload && systemctl restart docker

安装Zerotier-One

用脚本安装zerotier,脚本会将你的系统识别为buster,所以可以手动安装zerotier

1
vim /etc/apt/sources.list.d/zerotier.list

添加下面内容:

1
deb http://download.zerotier.com/debian/bookworm bookworm main
1
apt update
1
apt install zerotier-one -y

直接把mobian变为kali

安装Kali Linux的工具集

Kali Linux 2019.03开始对默认工具集进行重大更改,默认工具集将分为三个主要类别:

  • kali-linux-default,其中包含用于渗透测试的基本工具
  • kali-linux-large,具有更广泛的渗透测试工具集
  • kali-linux-everything,所有黑客工具

添加kali源

1
vim /etc/apt/sources.list.d/kali.list

添加以下内容:

1
2
3
#中科大源
deb https://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
deb-src https://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib

添加kali公钥

1
curl -fsSL https://archive.kali.org/archive-key.asc | apt-key add - 
1
apt update

warning

会出现以下warning:

W: https://mirrors.ustc.edu.cn/kali/dists/kali-rolling/InRelease: 密钥存储在过时的 trusted.gpg 密钥环中(/etc/apt/trusted.gpg),请参见 apt-key(8) 的 DEPRECATION 一节以了解详情。

解决warning

1
apt-key list

找到kali的公钥指纹,复制后八个字符7D8D0BF6(不包括空格)

导入 /etc/apt/trusted.gpg.d 目录下专用文件中的 GPG 密钥:

这里是新创建了一个文件 kali-linux.gpg

1
apt-key export 7D8D0BF6 | gpg --dearmour -o /etc/apt/trusted.gpg.d/kali-linux.gpg
1
apt update

这样就可以安装一些kali的的工具集了

1
apt search kali-linux

例如安装kali-linux-default

1
apt install kali-linux-default -y

默认的工具集里面有些工具需要GUI,例如burpsuite,手机不好操作,所以我就没有安装了,只挑了几个工具安装

安装一些kali工具

1
apt install sqlmap nmap metasploit-framework set -y