百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 优雅编程 > 正文

红米2刷postmarketOS体验原生Linux「 手机刷LINUX系列」

sinye56 2025-01-23 20:33 7 浏览 0 评论

继上次完成小米6体验Ubuntu Touch原生Linux系统之后,现在想用红米2来体验postmarketOS原生Linux系统。postmarketOS基于Alpine Linux,将真正的Linux系统装到Android手机,类似Ubuntu touch,不是chroot也不是proot更不是Android,就是纯Linux。PostmarketOS支持的旧手机型号比较多。作为原生的完整Linux系统,可玩性很不错。国内最佳的刷机设备是红米2:功能支持全、没有BootLoader锁刷机简单、价格便宜刷坏不心疼。

红米2增强版拥有2G RAM和 16G ROM 和晓龙410处理器,作为手机早已过时,但是作为一台ARM服务器则绰绰有余。


红米2手机详细参数参考以下链接:

https://www.mi.com/hongmi2/specs



红米2跟红米2A有啥区别?

1、 从外观看,红米2A和红米2并没有区别。

2、 从参数上看,红米2A和红米2主要的区别在于采用的CPU不同。红米2A采用联芯L1860C四核1.5GHz的处理器,红米2采用的是高通64位骁龙410四核1.2GHz处理器。


需要刷机工具

手机:2+16G的高配电信版紅米2 (wt88047),四核Cortex-A53,1.2GHZ的主频

SD卡:红米2手机增加扩展32G储存卡

电脑:Ubuntu 20.04,预先装好ADB和Fastboot等工具


刷机

1.进入fastboot模式

关机情况下,电源键+音量减进入fastboot模式,因为红米2 发行的年代尚且不流行BL锁,所以无需考虑解锁问题。

2. 刷入postmarketOS系统

2.1 检查是否刷入了最新固件

使用了安卓版本为5以上的MIUI可以跳过此步骤。

使用了安卓版本为4的的MIUI请更新固件,(不过更简单的方式是线刷一个安卓5的MIUI)下载红米 2稳定版刷机包 MIUI9

小米 ROM参考下载链接:

1、所有小米型号刷机包

https://xiaomirom.com/series/

红米 2 (wt88047) 国行版 Fastboot 线刷包 & Recovery 卡刷包 ROM

https://xiaomirom.com/rom/redmi-2-redmi-2-pro-wt88047-china-fastboot-recovery-rom/

红米 2/2A (wt86047) 国行版 Fastboot 线刷包 & Recovery 卡刷包 ROM

https://xiaomirom.com/rom/redmi-2-redmi-2-pro-wt86047-china-fastboot-recovery-rom/

2、固件下载地址:

wt86047-firmware_20161223.zip

https://androidfilehost.com/?fid=4349826312261681356

wt88047-firmware_V9.2.5.0.LHJMIEK.zip

https://androidfilehost.com/?fid=4349826312261681357

lineage-14.1-20171216_124058-UNOFFICIAL-wt88047.zip

https://androidfilehost.com/?fid=673791459329070105

lineage-17.1-20200527-UNOFFICIAL-wt88047.zip

https://androidfilehost.com/?fid=4349826312261820071

DOT-N-v1.1-20171127-wt88047-OFFICIAL.zip

https://androidfilehost.com/?fid=889964283620768777

红米2有增强&标配区分,小米给红米2挺多个设备名。增强(官方5.1) wt86047(移动)、wt88047(联通&电信)。

不知道的话,打开设置,导航到“手机信息”,并记下“型号”标题下方的型号。

2014811, 2014812, 2014817 2014818, 2014819, 2014821 :wt88047.

2014813, 2014112 : wt86047.

2.2 安装lk2nd作为2nd bootloader

虽然小米已经给我们提供了一个默认的bootloader,但是还需要安装自定义的bootloader 来给运行linux环境提供更多硬件支持,因此需要安装lk2nd

Github项目地址:lk2nd,请在github的release页面里下载lk2nd-msm8916.img 文件

https://github.com/msm8916-mainline/lk2nd/releases/tag/0.12.0

建议安装最新版lk2nd,因为0.9版本只开放了单CPU,而0.11版之后才能开启全部四核心。

刷入lk2nd指令如下:

fastboot flash boot lk2nd-msm8916.img

fastboot reboot


没问题的话,重启后手机会显示如下的画面:
lk2nd的主界面


2.3 刷入 postmarketOS

固件下载地址:
https://images.postmarketos.org/bpo/v22.06/xiaomi-wt88047/

这里有三个ROM 随便选一个下载即可,反正最后也使用终端和手机进行交互,GUI不是很重要。



三种UI如下图所示:


重启后手机显示lk2nd界面,重新连接到电脑的fastboot,在电脑的命令行中执行如下的fastboot指令刷入ROM。

fastboot flash userdata 20220720-1335-postmarketOS-v22.06-phosh-18-xiaomi-wt88047.img

fastboot erase system

fastboot reboot

备注1:lk2nd 0.10.0 版本之后,不需要再刷入传统的*-boot.img文件,所以可以考虑跳过刷入该文件。

刷机完成后,重启手机,进入系统!

安装软件

1.解锁手机进入图形界面

postmarketOS提供的默认用户名:user 密码 147147 PIN 147147,使用该密码解锁手机即可进入系统





2.开启SSH Server

postmarketOS 默认不开启sshd,因此我们需要手动开启,在手机上的终端机软件中输入如下的指令:

sudo service sshd start #开启SSH Server 服务

sudo rc-update add sshd # 开机启动SSHD 服务

sudo vi /etc/ssh/sshd_config

3. 包管理器apk

postmarketOS使用apk作为包管理

换源前首先看一下PostmarketOS的Alpine Linux版本(cat /etc/alpine-release),目前的PostmarkOS的内核版本应该是3.16.1:


然后编辑源配置文件

sudo vi /etc/apk/repositories

增加源地址

http://mirrors.aliyun.com/alpine/v3.16/main

http://mirrors.aliyun.com/alpine/v3.16/community

http://dl-cdn.alpinelinux.org/alpine/v3.16/main

http://dl-cdn.alpinelinux.org/alpine/v3.16/community

http://mirrors.sjtug.sjtu.edu.cn/alpine/v3.16/main

http://mirrors.sjtug.sjtu.edu.cn/alpine/v3.16/community

http://mirrors.sjtug.sjtu.edu.cn/alpine/edge/main

http://mirrors.sjtug.sjtu.edu.cn/alpine/edge/community

http://mirrors.sjtug.sjtu.edu.cn/alpine/edge/testing

替换源地址后,更新一下

sudo apk update

sudo apk upgrade -a

4.安装Bash并设为默认终端

PostmarkOS默认的Bash为ash,为了更好的使用选择更熟悉的Bash作为默认终端

root:x:0:0:root:/root:/bin/ash

root:x:0:0:root:/root:/bin/bash

user:x:10000:10000:Linux User,,,:/home/user:/bin/ash

user:x:10000:10000:Linux User,,,:/home/user:/bin/bash


5.安装docker到32G扩展储存卡上。

给旧手机安装linux,主要目的就是利用docker来运行各种容器应用。

5.1 SD卡硬盘格式化

先将SD卡插到Ubuntu电脑,将SD卡格式化为ext4.。再插回红米手机插槽。

mke2fs -t ext4 /dev/sda1


使用df -h命令查看SD卡磁盘,postmarketOS已经自动挂载。


5.2安装docker

sudo apk add docker #安装docker

sudo service docker start #启动docker服务

sudo rc-update add docker default #设置docker为自启动


5.3 迁移Docker存储

? 暂停 Docker

sudo service docker stop

? 移动 Docker 存储数据

? 创建新的链接

ln -s /run/media/user/feecf391-4c76-4195-b470-218313dbc2d4/tmp/docker /var/lib/docker

? 重启 Docker

sudo service docker start


备注2:postmarketOS中的docker可能会因为防火墙的原因导致docker的端口无法通过外部访问。

正确解决这个问题的手段是通过配置防火墙规则允许docker通信,但是省事的方法是鉴于手机服务器的用途,直接停用防火墙。

sudo service nftables stop

sudo rc-update del nftables

6.安装docker版zerotier组成虚拟局域网。

#安装docker版zerotier

docker run --name zerotier-one --device=/dev/net/tun --net=host \

--cap-add=NET_ADMIN --cap-add=SYS_ADMIN \

-v /run/media/user/feecf391-4c76-4195-b470-218313dbc2d4/tmp/zerotier-one:/var/lib/zerotier-one zyclonite/zerotier

#开启虚拟网卡,载入tun网络模块
modprobe tun

lsmod | grep tun

#加入网络,使用此命令后要到zerotier官网设置允许加入的连接

docker exec zerotier-one zerotier-cli join db64858feda76a29

#查看信息

docker exec zerotier-one zerotier-cli info

docker exec zerotier-one zerotier-cli status

#查看网络状态

docker exec zerotier-one zerotier-cli listnetworks

参考链接:
https://github.com/zyclonite/zerotier-docker


7.安装speedtest-x测速docker工具。

运行容器 docker run -d -p 9001:80 -it badapple9/speedtest-x

参考链接:
https://hub.docker.com/r/badapple9/speedtest-x


在wifi连接下,测速则只有25兆左右。


8.支持USB连接电脑还可以直接共享电脑网络。



总结

当然PostmarketOS也有缺点,比如安装docker比较慢,关机麻烦(电源键关不了),以及安卓的经典2按键会失效(Liunx确实没这玩意)。

后续我还会刷个Modian系统,这个也是基于PostmarketOS的驱动完成的项目。

参考资料:

[Linux] 红米2 安装 postmarketOS(基于 Alpine Linux)及后续玩法

原文链接:
https://blog.csdn.net/Franklins_Fan/article/details/125588287

红米2刷PostmarketOS打造ARM服务器(完全篇)

https://post.smzdm.com/p/aqm8ov77/

捡垃圾 篇二:红米2安装PostmarketOS体验原生Linux

https://post.smzdm.com/p/aox8w99r/

原创性声明:

1.请支持原创文章。

2.转载需要在文章开头或结尾注明来源信息:头条号PVE虚拟NAS专家。

3.若发现未经授权转载者,一律举报。毕竟原创不易,感谢您对头条号PVE虚拟NAS专家的认可和理解。

4.如果文章对你有所帮助,请点个关注和喜欢,请多多支持!我们一起在学习过程中分享经验!

相关推荐

程序员:JDK的安装与配置(完整版)_jdk的安装方法

对于Java程序员来说,jdk是必不陌生的一个词。但怎么安装配置jdk,对新手来说确实头疼的一件事情。我这里以jdk10为例,详细的说明讲解了jdk的安装和配置,如果有不明白的小伙伴可以评论区留言哦下...

Linux中安装jdk并配置环境变量_linux jdk安装教程及环境变量配置

一、通过连接工具登录到Linux(我这里使用的Centos7.6版本)服务器连接工具有很多我就不一一介绍了今天使用比较常用的XShell工具登录成功如下:二、上传jdk安装包到Linux服务器jdk...

麒麟系统安装JAVA JDK教程_麒麟系统配置jdk

检查检查系统是否自带java在麒麟系统桌面空白处,右键“在终端打开”,打开shell对话框输入:java–version查看是否自带java及版本如图所示,系统自带OpenJDK,要先卸载自带JDK...

学习笔记-Linux JDK - 安装&配置

前提条件#检查是否存在JDKrpm-qa|grepjava#删除现存JDKyum-yremovejava*安装OracleJDK不分系统#进入安装文件目...

Linux新手入门系列:Linux下jdk安装配置

本系列文章是把作者刚接触和学习Linux时候的实操记录分享出来,内容主要包括Linux入门的一些理论概念知识、Web程序、mysql数据库的简单安装部署,希望能够帮到一些初学者,少走一些弯路。注意:L...

测试员必备:Linux下安装JDK 1.8你必须知道的那些事

1.简介在Oracle收购Sun后,Java的一系列产品就被整合到Oracle官网中,打开官网乍眼一看也不知道去哪里下载,还得一个一个的摸索尝试,而且网上大多数都是一些Oracle收购Sun前,或者就...

Linux 下安装JDK17_linux 安装jdk1.8 yum

一、安装环境操作系统:JDK版本:17二、安装步骤第一步:下载安装包下载Linux环境下的jdk1.8,请去官网(https://www.oracle.com/java/technologies/do...

在Ubuntu系统中安装JDK 17并配置环境变量教程

在Ubuntu系统上安装JDK17并配置环境变量是Java开发环境搭建的重要步骤。JDK17是Oracle提供的长期支持版本,广泛用于开发Java应用程序。以下是详细的步骤,帮助你在Ubuntu系...

如何在 Linux 上安装 Java_linux安装java的步骤

在桌面上拥抱Java应用程序,然后在所有桌面上运行它们。--SethKenlon(作者)无论你运行的是哪种操作系统,通常都有几种安装应用程序的方法。有时你可能会在应用程序商店中找到一个应用程序...

Windows和Linux环境下的JDK安装教程

JavaDevelopmentKit(简称JDK),是Java开发的核心工具包,提供了Java应用程序的编译、运行和开发所需的各类工具和类库。它包括了JRE(JavaRuntimeEnviro...

linux安装jdk_linux安装jdk软连接

JDK是啥就不用多介绍了哈,外行的人也不会进来看我的博文。依然记得读大学那会,第一次实验课就是在机房安装jdk,编写HelloWorld程序。时光飞逝啊,一下过了十多年了,挣了不少钱,买了跑车,娶了富...

linux安装jdk,全局配置,不同用户不同jdk

jdk1.8安装包链接:https://pan.baidu.com/s/14qBrh6ZpLK04QS8ogCepwg提取码:09zs上传文件解压tar-zxvfjdk-8u152-linux-...

运维大神教你在linux下安装jdk8_linux安装jdk1.7

1.到官网下载适合自己机器的版本。楼主下载的是jdk-8u66-linux-i586.tar.gzhttp://www.oracle.com/technetwork/java/javase/downl...

window和linux安装JDK1.8_linux 安装jdk1.8.tar

Windows安装JDK1.8的步骤:步骤1:下载JDK打开浏览器,找到JDK下载页面https://d.injdk.cn/download/oraclejdk/8在页面中找到并点击“下载...

最全的linux下安装JavaJDK的教程(图文详解)不会安装你来打我?

默认已经有了linux服务器,且有root账号首先检查一下是否已经安装过java的jdk任意位置输入命令:whichjava像我这个已经安装过了,就会提示在哪个位置,你的肯定是找不到。一般我们在...

取消回复欢迎 发表评论: