首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何备份嵌入式Linux rootfs?

如何备份嵌入式Linux rootfs?
EN

Stack Overflow用户
提问于 2015-02-18 23:41:38
回答 1查看 1.1K关注 0票数 0

我有一个工作良好的嵌入式Linux环境,我想保存rootfs部分,然后用空的nand闪存其他新板。

所以,我尝试的是。从barebox (在引导kernell之前),我将/dev/nand0.root.bb放到我的PC的tftp服务器上。

然后,我尝试在rootfs.ubifs中将其重命名,并在合适的位置从另一个(和一个新的)板上调用"update -t rootfs“脚本。

大小不同: 17301504原始rootfs.ubifs 264630784 /dev/nand0.root.bb

问题是系统未正确启动。

这里有人是这样工作的吗?我需要帮助..。

EN

回答 1

Stack Overflow用户

发布于 2015-09-04 20:55:09

维克奈特

你应该以不同的方式来做这件事。UBI文件系统不同于nand闪存上的其他镜像(MLO、barebox、内核),甚至不同于硬盘镜像。因此,不能只使用nand0.root.bb分区上的cp来复制它。这就是为什么你的新系统不能正确引导的原因。

不幸的是,我也在寻找一个解决方案来做到这一点,但我只知道另一个方向(从ubifs图像复制到flash)也不能像这样做。

我认为你应该首先在你的光盘箱里准备好UBI工具( ubiattach,ubiformat)。如果你不这样做,也许可以为你的系统寻找一个支持的光盒版本,并将其刷新(当然是在备份旧版本之前)。这是我之前遇到的问题之一。如果你知道如何编译一个完全适合你的系统,那么进入menuconfig,你应该能找到正确的ubi命令。

但是,使用此命令时,我认为方法可能是将/dev/nand0.root.bb作为新的字符设备附加到系统,如下所示:

代码语言:javascript
复制
ubiattach /dev/nand0.root
UBI: attaching mtd0 to ubi0
...
...

当你想要将一个新的图像闪存到nand时,至少是这样的。它创建了一个/dev/ubi0节点。不幸的是,我尝试了一下,但在下面的mount命令上失败了,只是为了测试是否正确地创建了它:

代码语言:javascript
复制
mount /dev/ubi0 /mnt/rootfs
mount: bad file number

因此,即使挂载失败,我也认为这不是创建镜像的正确方式,但可能是指向它的正确方向。也许其他人知道完整的解决方案?

Zoli

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28587563

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档