| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> linux开发板系统备份 -> 正文阅读 |
|
[系统运维]linux开发板系统备份 |
前言? ? ? ? 前不久从淘宝上淘来了一块二手的linux开发板,芯片AM3354,板载4GBMMC和512MBDDR3。内部烧录的是安卓2.3系统。正好最近想学Linux,就打算把它改成linux系统试试。试之前,肯定得把原系统备份一下,给自己留条后路。 ? ? ? ? 板子预留有SD卡槽,所以我们可以使用外部SD卡备份系统。 开始? ? ? ? 首先找到板子上得LOG串口,接好线,使用USB转TTL接入电脑。打开串口工具,我这里用的CRT。上电,在上电瞬间狂点“↓”键,进入Uboot模式。 ? 当你看到这样子,说明进入了Uboot模式了。因为我板子上的存储使用的MMC,所以使用MMC指令去读取内容。 一、读取分区大小1、我们首先下发
确保我们目前处于板载mmc,而不是外插的SD卡。 ?2、下发
获取mmc信息,确保我们切换成功了。 3、下发
获取存储分区? ?可以看到我的mmc被分为三个分区, 第一个分区起始扇区63,每一个扇区512字节,则大小为144522*512B~=70.5M,类型为0c(FAT32) 第二个分区起始扇区144585,大小为947835*512B~=462.8M,类型为83(ext4) 第三个分区起始扇区1092420,大小为6538455*512B~=43192.6M,类型为0c(FAT32) 说明:一般第一个分区存放着Uboot、Kenerl等,第二分区存放文件系统,第三个分区为用户数据等 4、SD分区 有了以上信息,我们就可以找一张比它大的SD卡去备份系统了。首先我们下载一个DiskGenius.exe,去对我们的SD卡分区。 注意每个分区尽量大于等于原有分区,上图分区一,我是因为知道原有分区内容的大小。 5、系统拷贝 (1)将SD卡插入开发板的卡槽,按照上面的方法进入系统uboot。 (2)切换到板载MMC
(3)读取分区一内容
?80000000是指内存DDR3的地址,3F即分区一起始扇区63的十六进制,2348A即分区一的扇区数量 当显示OK,说明读写完成。 (4)切换到SD卡
?(5)确定SD卡分区
可以看到,我们SD的分区一起始扇区也是63 (6)写入SD卡
? ?正常是拷贝多少写入多少,但我这一里分区一只有1F5C9(128457的十六进制),便只写入1F5C9 当看到OK时,便可以将开发板断电,取出SD卡,插入电脑查看。其中FAT32分区可以在WINDOWN上直接用文件管理器查看,但EXT4便只能在DiskGenius或Linux中查看。 ? 后续按照此方法,拷贝后面的分区二、分区三的内容,要注意每次拷贝不要超过内存的大小,比如我这里的内存只有512M,就每一次只能拷贝小于512M的内容。 我要拷贝的扇区大于512M怎么办?分多次拷贝就行,注意每一次拷贝和写入的起始扇区加上前一次拷贝的长度即可。 以上为个人经验,如有错误,欢迎指正。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/16 3:14:20- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |