我有一个嵌入式系统,我想读取它的nand闪存,并将其写回另一个系统的nand闪存。我有权访问设备上运行的Linux系统的根目录。该系统是基于AM3874的,我也可以访问它的JTAG。我的问题是:
1-是否可以通过以下方式完成此操作:以root身份登录系统并将nand闪存数据写入SD卡,然后一个新系统将其写回nand闪存?
2-如果上述问题的答案是肯定的,我需要哪些程序和软件?
3-如果答案是否定的,我是否可以使用JTAG接口读取NAND Flash并将其写入另一个设备?
发布于 2012-10-25 03:04:42
您可以使用dd命令将整个设备或分区复制到文件中。
示例:
dd if=/dev/mtd/mtd4 of=/mnt/sdcard/system.img bs=4096同样,您也可以将文件复制到设备。
编辑:
当然,这只适用于在linux中有设备驱动程序的NAND闪存。
如果您已在闪存中装载了文件系统,则可以使用fd或mount命令查找正确的设备名称。这样:
~ # df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/root 53504 13580 39924 25% /
tmpfs 25600 68 25532 0% /tmp
/dev/mmcblk0p1 77077 67089 722524 92% /mnt/test
~ # dd if=/dev/root of=/mnt/test/root.img bs=4096
13376+0 records in
13376+0 records out
~ # ls -l /mnt/test/root.img
-rw-r--r-- 1 root root 54788096 Oct 26 13:17 /mnt/test/root.img
~ #发布于 2012-10-25 03:04:12
您可以在Linux中使用dd命令来读取第一个系统上的设备。在目标系统上,您需要在写出NAND闪存之前卸载它上的所有文件系统。您可以完全从ramfs或SD卡上的文件系统运行吗?如果您能够卸载它,dd应该允许您写回内容。
如果可能,您可能希望在使用dd复制NAND之前卸载源系统上的NAND,这样就不会复制活动文件系统。
你只需要复制这些文件吗?如果是这样的话,从第一个设备创建一个tarball,然后在另一个设备上解包是一种选择吗?
https://stackoverflow.com/questions/13055748
复制相似问题