首页 > 其他分享 >如何用手机为树莓派烧录系统

如何用手机为树莓派烧录系统

时间:2023-08-20 16:12:35浏览次数:42  
标签:树莓 img dd 烧录 dev 手机 sd

声明

手机需要有第三方Recovery(如TWRP)!!!
本文含有大量个人观点,为实践个人总结,不保证正确性,对应相关操作的理解可能也有失偏颇,如有错误,还望大家及时指出

疫情在家,一直没啥事可以做,整理柜子的时候发现有一台吃灰的树莓派,于是想借他消磨一下时间。没带电脑回家,小区也封了,出不去了,有没有可能用手机给树莓派装上系统呢?

教程

Step1 材料准备

已经刷好twrp的手机一台,sd卡一张

如果手机不支持sd卡,还需准备一个读卡器,一个otg转接口

step2 资料下载

下载你想要刷入的系统,如果是img格式,直接用就行了,如果不是img格式,用压缩包形式打开它,把里面img格式的文件捞出备用解压出来

本文假设该文件文件名为sys.img

然后记住改文件的路径

本文假设路径为 /sdcard/Download/sys.img

step3 打开终端,检查分区情况

手机重启进入Twrp,进入“高级->终端”
输入指令检查分区情况

df -h

结果如下(例)

文件系统 容量 已用 可用 已用% 挂载点

/dev/sda1 64G 32G 32G 50 /sdcard

这时插入sd卡,再输入指令检查分区情况

df -h

结果如下(例)

文件系统 容量 已用 可用 已用% 挂载点

/dev/sda1 64G 32G 32G 50 /sdcard

/dev/sdg1 32G 1kb 32G 0 /sdcard1

发现多了一行,这一行就是我们的sd卡,记住他的文件系统(fileSystem)

本文例子中,sd卡所在文件系统为“/dev/sdg1”

Step4 刷入系统

接着我们开始刷入系统

dd bs=1024000 if=/sdcard/Download/sys.img of=/dev/sdg

注意① 这里会等较长时间,看起来像卡主一样,请耐心等待
注意② if=系统镜像的路径
注意③ **of后面不是sd卡所在文件系统!!这里尤其要注意,本文例子中,sd卡所在文件系统为/dev/sdg1,但是of后面是/dev/sdg,没有1,如果你是“/dev/sdh114514”,那么of后面就要是“/dev/sdh”,没有数字!

命令执行结果出来后,就说明刷入成功了
这时拔出sd卡,再重新插入,twrp首页有一个“挂载”,进入之后重新挂载一下sd卡,再进入twrp的文件管理,进入sd卡就能看见你刷进去的文件(boot分区)。

Step5 配置ssh和网络(以树莓派官方系统举例,不同系统方法不同)

进入twrp文件管理,在sd卡所在目录的根目录创建一个叫做“ssh”的文件,这样就开启了ssh

进入twrp文件管理,在sd卡所在目录的根目录新建一个叫做“wpa_supplicant.conf”的文件,编辑他

country=CN
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
    ssid="Wifi名"
    psk="密码"
    key_mgmt=WPA-PSK
    priority=1
}

修改完保存,取出sd卡,插上树莓派通电,就基本OK了

Step6 ssh连接树莓派

树莓派通电后,可以登陆路由器后台看到树莓派的IP
如果你不能进入路由器后台,或者你正在使用热点给树莓派提供网络,可以用termux加nmap的方法扫描局域网ip。

找到树莓派Ip后,使用ssh连接工具连接即可

树莓派默认账号
用户名:pi
密码:raspberry

常见问题

AndRoid Shell中dd命令的bs参数不支持单位

bs=1024000 #默认单位为b,1024000就是1M
bs=1M #在Android shell中并不支持这种写法

Termux可以用dd命令,为什么非要用TWRP的终端

我不知道,理论上termux是可以的,但是我的termux不能正确识别出sd卡所在分区,TWRP可以。后来我在网上查到了相关的教程,虽然不是termux,但也是用别的shell软件,应该是可行的(需要root来装busybox)

待补充

探索历程

起初,

我想通过termux,运行linux版的烧录工具,我在网上搜索了一下,确实有,但是是x86和x64平台的软件,而手机是arm64的(有些手机是armhf的,x86和x64的手机基本没有)
然后我想到模拟x86的运行环境,来运行烧录软件,结果是,软件运行起来了,但是sd卡没法带到模拟环境中去,软件识别不出sd卡,这个方案基本就作废了。

Plan B,

我去QQ群里问了一下,一个群友给出了他的思路,使用安卓版的wine来运行Windows版的烧录软件,我觉得应该可行,去wine官网下载了最新版的Wine For Android。Emmm....结果嘛,不支持我的安卓版本,这个方法我也就没试。

然后,

我基本要放弃了,感觉看不到什么希望(也因为这个操作在网上找不到任何相关的教程,没有人造轮子),就去水群了(bushi。结果群大佬一句话点醒梦中人。Android Shell是有dd命令的,对哦,dd命令可以用来烧录系统啊。(但是我没深入接触过这个命令,便在网上开始学习)

最后,

翻阅了很多资料,最后也是掌握了dd命令的用法,开始实践。
基本就是格式化sd卡所在分区,然后用下面命令烧录系统

dd bs=1024000 if=镜像路径 of=sd卡分区路径

中间遇到了一些小问题,我会在常见问题中指出

标签:树莓,img,dd,烧录,dev,手机,sd
From: https://www.cnblogs.com/orzmiku/p/17644124.html

相关文章

  • 手机技巧:推荐一款手机省电、提升流畅度APP
    今天给大家推荐一款手机省电、提升流畅度APP,感兴趣的朋友可以下载一下! 软件详情 黑阈app是一款非常实用的系统优化类手机APP。使用它能够禁止软件后台运行耗电,既能帮你省电还能守护手机安全。它对于阻止软件自启、互相唤醒有着非常明显的效果,可以显著提升安卓手机的续航和流畅性......
  • 树莓派二驱动智能小车组装
    复现up主:杨坤树莓派爱好者基地的https://www.bilibili.com/video/BV1pW411J7WG?vd_source=7f1982c56a437c7b00c3695687b7086d树莓派小车,稍微调整了一下连接的方式,做成后发现跟自己最终要实现的目标效果有很大的偏差,所以打算升级车型,但是这个形状的小车的已经做出来了,不记录一下有......
  • 树莓派连接蓝牙遥控,控制播放音乐
    采用的树莓派zerow,根据按键切换音乐#!/usr/bin/envpython#-*-coding:utf-8-*-#[NEW]DeviceEC:22:05:15:24:0DRMT-EC220515240Dimporttimefrombluepy.btleimport*frombinasciiimporthexlifyimportstructfromMusicimport*classNotifyDelegate(De......
  • 【HarmonyOS】鸿蒙应用获取华为帐号手机号码步骤(API7及以下)
    ​【写在前面】本文主要介绍使用API7及以下版本开发HarmonyOS应用时,通过华为帐号SDK和云侧接口获取手机号码的主要开发步骤,注意:开发过程中集成的华为帐号SDK仅支持API7及以下版本的HarmonyOS应用。 【前提准备】1、HarmonyOS应用已申请获取手机号码的权限,申请权限文档请参考......
  • Android实战:APP换肤功能,并自动适配手机深色模式
    Android换肤功能已不是什么新鲜事了,市面上有很多第三方的换肤库和实现方案。之所以选择腾讯的QMUI库来演示APP的换肤功能,主要原因:1、换肤功能的实现过程较简单、容易理解;2、能轻松适配Android10提供的DarkMode(深色模式);3、还能白嫖QMUI的各种组件、效果(这才是重要的,......
  • 微信抢红包代码在手机上可以使用的
    在手机上使用微信抢红包代码,可以通过以下步骤实现:打开手机的应用商店,搜索并下载一个支持Lua编程语言的代码编辑器,比如"LuaEdit"、"ZeroBraneStudio"等。在编辑器中创建一个新的Lua脚本文件,并将以下代码复制粘贴到文件中:functionclick(x,y)touchDown(0,x,y)mSl......
  • 基于tpshop开发tpshop多商户源码,tpshop商城源码,tpshop b2b2c源码-支持手机端+商家+
    tpshop多商户源码,tpshop商城源码,tpshopb2b2c源码-支持手机端+商家+门店+分销+淘宝数据导入+APP+可视化编辑tpshop商城源码算是thinkphp框架里做的比较早比较好的源码了,写法简明友好面向程序猿。这是一款前几年的版本虽然后台看着好了些,丝毫不影响功能的完整使用。前几年这......
  • 树莓派配置清华源和WiringPi
    在找树莓派小车的零件的时候大多都是卖整套的,自己觉得太贵,索性就自己买零件按照up主:杨坤树莓派爱好者基地的【【类型(教程、树莓派)】树莓派制作遥控小车教程(看了就会)】https://www.bilibili.com/video/BV1pW411J7WG?vd_source=7f1982c56a437c7b00c3695687b7086d造型和走线拼装了一......
  • 树莓派Raspbian安装PYQT5
     安装PYQT5.(树莓派Raspbian下pip3installPyQt5是无法正常安装的。)https://zhuanlan.zhihu.com/p/498682983 准备工作。pipinstallwheelsudoapt-getupdate Pip3installsip可直接用官方仓库安装。 sudoaptinstall-ypython3-pyqt5额外组件sudoaptin......
  • uniapp,微信小程序获取用户手机号
    1.获取手机号的按钮<buttonv-if="!mobile"class="btns"style="margin-top:-100rpx;"open-type="getPhoneNumber" @getphonenumber="getPhoneNumber">授权手机号码</button>2.获取手机号的函数getPhoneNumber()getPhoneNu......