A在闪存驱动器上有根文件系统(文件系统-包含文件夹结构和内容的图像)。闪存驱动器使用UBI作为底层文件系统--数据块映射到文件中的方式,就像您说要使用ext4时那样)。
rootfs on / type rootfs (rw)
ubi0:root on / type ubifs (rw,sync)当将物理驱动器作为第一个参数时,我知道如何使用dd进行备份(例如。而不是rootfs,而是一个/dev/sda),但是这里我不知道如何在当前的场景中处理驱动器(rootfs的路径是什么)。
如何检测footfs或ubi0:root对应的文件?
发布于 2017-08-11 17:55:55
如果您想备份/还原UBIFS分区,请使用UBI挂载中的dd创建UBI映像,然后使用mtd的ubiupdatevol程序进行还原。
例子-
制作图像:
dd if=/dev/ubi0_0 of=/save_loc/rfs1.ubi卸载目标分区:
umount /.rfs2将图像还原到目标分区:
ubiupdatevol /dev/ubi1_0 /save_loc/rfs1.ubi重新装入重新闪烁的分区:
mount -t ubifs -o compr=zlib,ro ubi1:rootfs /.rfs2编辑:要澄清如何查找要命名的ubi#,请运行mtd 'ubinfo':
ubi0
Volumes count: 1
Logical eraseblock size: 126976 bytes, 124.0 KiB
Total amount of logical eraseblocks: 960 (121896960 bytes, 116.2 MiB)
Amount of available logical eraseblocks: 0 (0 bytes)
Maximum count of volumes 128
Count of bad physical eraseblocks: 0
Count of reserved physical eraseblocks: 80
Current maximum erase counter value: 288
Minimum input/output unit size: 2048 bytes
Character device major/minor: 250:0
Present volumes: 0
Volume ID: 0 (on ubi0)
Type: dynamic
Alignment: 1
Size: 874 LEBs (110977024 bytes, 105.8 MiB)
State: OK
Name: rootfs
Character device major/minor: 250:1发布于 2014-04-15 17:58:34
安装在rootfs上的/是一个内存中的文件系统,它通常只包含安装“真实”根文件系统所需的工具,并在完成之后被清空。rootfs的初始内容是从存储在内核二进制文件内部或旁边的initramfs映像加载的,并由引导加载程序加载。
flash上的根文件系统是ubi0:root。这是一个三层系统:
(对于这个答案的其余部分,我从来没有实际使用过UBI。)
ubi0:root卷由的参数ubi模块或ubiattach实用程序创建。这不是块设备,因为UBI级别和上面的文件系统之间的接口比“在这个位置写入这个字节”要复杂得多。您可以使用创建只读块设备。命令在UBI之上使用ubiblock命令,然后将- something备份如下
ubiblock --create /dev/ubi0_0
cat /dev/ubi0_0 >backup
ubiblock --remove /dev/ubi0_0https://unix.stackexchange.com/questions/124677
复制相似问题