yocto recuperação do sistema embedded-linux

0

Eu trabalho com o Yocto Poky 1.7.3 em um imx6DL e estou tentando implementar uma recuperação do sistema. Eu posso inicializar o sistema tanto a partir do NAND quanto do cartão SD, mas o sistema "principal" reside no NAND. Em caso de corrupção, minha idéia era inicializar o sistema a partir do SD e depois substituir o Sistema de Arquivos na NAND pelo localizado no SD. O cartão SD possui 2 partições, uma para a inicialização e outra que contém o sistema de arquivos (rootfs.ubifs).

O que eu tentei foi:

mount /dev/mmcblk0p2 /mnt
dd if=/mnt/rootfs.ubifs of=/dev/mtd3 bs=4096

mas quando eu refundo meu sistema eu obtenho uma sequência muito longa (692 vezes exatamente) dos seguintes erros:

UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 691:0, read 64 bytes
UBI error: ubi_io_read: error -74 (ECC error) while reading 4096 bytes from PEB 691:4096, read 4096 bytes

e no final:

UBI error: vtbl_check: bad CRC at record 15: 0xd2799447, not 0xf116c36b
Volume table record 15 dump:
    reserved_pebs   0
    alignment       0
    data_pad        0
    vol_type        0
    upd_marker      0
    name_len        0
    name            NULL
UBI error: vtbl_check: bad CRC at record 15: 0xd2799447, not 0xf116c36b
Volume table record 15 dump:
    reserved_pebs   0
    alignment       0
    data_pad        0
    vol_type        0
    upd_marker      0
    name_len        0
    name            NULL
UBI error: process_lvol: both volume tables are corrupted
UBI error: ubi_attach_mtd_dev: failed to attach mtd3, error -22
UBI error: ubi_init: cannot attach mtd3
UBIFS error (pid 1): ubifs_mount: cannot open "ubi0:rootfs", error -19
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
CPU1: stopping
CPU: 1 PID: 0 Comm: swapper/1 Not tainted 3.10.17imx6dl-ilux-00.00.007 #1
[<80013974>] (unwind_backtrace+0x0/0xec) from [<80011594>] (show_stack+0x10/0x14)
[<80011594>] (show_stack+0x10/0x14) from [<80012ba0>] (handle_IPI+0x108/0x118)
[<80012ba0>] (handle_IPI+0x108/0x118) from [<80008558>] (gic_handle_irq+0x58/0x5c)
[<80008558>] (gic_handle_irq+0x58/0x5c) from [<8000dd00>] (__irq_svc+0x40/0x70)
Exception stack(0xa8097f50 to 0xa8097f98)
7f40:                                     a8097f98 3b9aca00 60217e3e 00000002
7f60: 80874114 808740c8 81136130 00000001 5ecee2a6 00000002 a8096000 00000000
7f80: 00000017 a8097f98 00000009 80428f64 00000113 ffffffff
[<8000dd00>] (__irq_svc+0x40/0x70) from [<80428f64>] (cpuidle_enter_state+0x54/0xe4)
[<80428f64>] (cpuidle_enter_state+0x54/0xe4) from [<804290b0>] (cpuidle_idle_call+0xbc/0x154)
[<804290b0>] (cpuidle_idle_call+0xbc/0x154) from [<8000ece4>] (arch_cpu_idle+0x10/0x54)
[<8000ece4>] (arch_cpu_idle+0x10/0x54) from [<80059788>] (cpu_startup_entry+0x100/0x14c)
[<80059788>] (cpu_startup_entry+0x100/0x14c) from [<105ff564>] (0x105ff564)

Existe alguma instrução para substituir o sistema de arquivos corretamente?

Obrigado

    
por Enrico 16.05.2018 / 12:59

0 respostas