o sistema embarcado não é mais inicializado por meio do eMMC - Falha ao desembalar o Initramfs: lixo no arquivo compactado [fechado]

1

Eu tenho o Arch linux em várias placas integradas que são semelhantes ao Odroid C2. Para resolver um problema no arquivo DTB, escrevi dtb.img para / dev / dtb do eMMC por meio do comando:

dd if="/boot/dtb.img" of="/dev/dtb" bs=262144 status=none && sync

Isso resultou na tabela de partições do eMMC sendo corrompida. Eu não consigo mais inicializar do eMMC. Durante a inicialização do eMMC, recebo erros em alguns lugares.

Eu tenho uma imagem de backup de 4 meses que posso usar para reconstruir esse sistema. Como devo proceder para a reconstrução da partição de inicialização a partir de uma imagem de backup, de modo que eu não perca a partição EXT4 / dev / data?

Registros relevantes da inicialização via eMMC que falham:

[2.157928@0] Unpacking initramfs...
[2.157940@0] Initramfs unpacking failed: junk in compressed archive
[5.135966@2] emmc: delay[6]= 3375 padding= 5, bidx=3
[5.135968@2] emmc: delay[7]= 2875 padding= 1, bidx=2
[5.135970@2] emmc: calibration result @ 0: max(3875), min(2875)
[5.135973@2] emmc: line_delay =0x84854056, max_cal_result =3875
[5.135975@2] emmc: base_index_max 3, base_index_min 2
[5.135980@2] emmc: clk 200000000 SDR mode tuning start
[5.136278@2] emmc: rx_tuning_result[0] = 10
[5.136491@2] emmc: rx_tuning_result[1] = 10
[5.136701@2] emmc: rx_tuning_result[2] = 10
[5.136934@2] emmc: rx_tuning_result[4] = 10
[5.136936@2] emmc: best_win_start =4, best_win_size =4
[5.136938@2] emmc: adj_win_start 5
[5.136940@2] emmc: sd_emmc_regs->gclock=0x1000245,sd_emmc_regs->gadjust=0x2007
[5.136943@2] emmc: gclock =0x1000245, gdelay=0x84854056, gadjust=0x2007
[5.137014@2] emmc: new HS200 MMC card at address 0001
[5.141476@2] emmc: clock 200000000, 8-bit-bus-width
[5.141708@2] mmcblk0: emmc:0001 AWPD3R 14.5 GiB 
[5.141819@2] mmcblk0boot0: emmc:0001 AWPD3R partition 1 4.00 MiB
[5.141927@2] mmcblk0boot1: emmc:0001 AWPD3R partition 2 4.00 MiB
[5.142038@2] mmcblk0rpmb: emmc:0001 AWPD3R partition 3 4.00 MiB
[5.142728@1]  mmcblk0: unknown partition table
[5.143254@2] [mmc_read_partition_tbl] mmc read partition OK!
[5.143255@2] add_emmc_partition
[5.143409@1] [mmcblk0p01]           bootloader  offset 0x000000000000, size 0x000000400000 
[5.143531@1] [mmcblk0p02]             reserved  offset 0x000002400000, size 0x000004000000 
[5.143647@1] [mmcblk0p03]                cache  offset 0x000006c00000, size 0x000020000000 
[5.143764@1] [mmcblk0p04]                  env  offset 0x000027400000, size 0x000000800000 
[5.143882@1] [mmcblk0p05]                 logo  offset 0x000028400000, size 0x000002000000 
[5.143999@1] [mmcblk0p06]             recovery  offset 0x00002ac00000, size 0x000002000000 
[5.144116@1] [mmcblk0p07]                  rsv  offset 0x00002d400000, size 0x000000800000 
[5.144236@1] [mmcblk0p08]                  tee  offset 0x00002e400000, size 0x000000800000 
[5.144355@1] [mmcblk0p09]                crypt  offset 0x00002f400000, size 0x000002000000 
[5.144479@1] [mmcblk0p10]                 misc  offset 0x000031c00000, size 0x000002000000 
[5.144597@1] [mmcblk0p11]            instaboot  offset 0x000034400000, size 0x000020000000 
[5.144720@1] [mmcblk0p12]                 boot  offset 0x000054c00000, size 0x000002000000 
[5.144836@1] [mmcblk0p13]               system  offset 0x000057400000, size 0x000040000000 
[5.144953@1] [mmcblk0p14]                 data  offset 0x000097c00000, size 0x00030c200000 
[7.528113@2] UDF-fs: bad mount option "data=ordered" or missing value
[7.533304@2] List of all partitions:
[7.537253@2] b300        15267840 mmcblk0  driver: mmcblk
[7.544342@2]   b301            4096 mmcblk0p1 
[7.550153@2]   b302           65536 mmcblk0p2 
[7.554602@2]   b303          524288 mmcblk0p3 
[7.560638@2]   b304            8192 mmcblk0p4 
[7.566567@2]   b305           32768 mmcblk0p5 
[7.572389@2]   b306           32768 mmcblk0p6 
[7.578165@2]   b307            8192 mmcblk0p7 
[7.583837@2]   b308            8192 mmcblk0p8 
[7.589418@2]   b309           32768 mmcblk0p9 
[7.594886@2]   b30a           32768 mmcblk0p10 
[7.600250@2]   b30b          524288 mmcblk0p11 
[7.605580@2]   b30c           32768 mmcblk0p12 
[7.610882@2]   b30d         1048576 mmcblk0p13 
[7.616163@2]   b30e        12781568 mmcblk0p14 
[7.621396@2] b360            4096 mmcblk0rpmb  (driver?)
[7.626623@2] b340            4096 mmcblk0boot1  (driver?)
[7.631776@2] b320            4096 mmcblk0boot0  (driver?)
[7.636883@2] b380        15558144 mmcblk1  driver: mmcblk
[7.641942@2]   b381           98304 mmcblk1p1 720e0863-01
[7.648518@2]   b382         7766016 mmcblk1p2 720e0863-02
[7.653879@2] No filesystem could mount root, tried:  ext3 ext2 ext4 cramfs vfat msdos iso9660 udf btrfs
[7.661669@2] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(179,14)
[7.668121@2] CPU: 2 PID: 1 Comm: swapper/0 Not tainted 3.14.29-g70e9c2a-dirty #1

Nesses registros, parece que as informações da tabela de partição estão lá. O mmcblk0p14 deve ser usado para rootfs, já que estava funcionando antes deste incidente.

Os comandos "fdisk -l" e "parted -l" retornam a seguinte saída:

[root@alarm pankaj]# fdisk -l
------------------------------
Disk /dev/mmcblk0: 14.6 GiB, 15634268160 bytes, 30535680 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk /dev/mmcblk0rpmb: 4 MiB, 4194304 bytes, 8192 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk /dev/mmcblk0boot1: 4 MiB, 4194304 bytes, 8192 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk /dev/mmcblk0boot0: 4 MiB, 4194304 bytes, 8192 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk /dev/mmcblk1: 14.9 GiB, 15931539456 bytes, 31116288 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x720e0863

Device         Boot  Start      End  Sectors  Size Id Type
/dev/mmcblk1p1 *      2048   198655   196608   96M  b W95 FAT32
/dev/mmcblk1p2      198656 15730687 15532032  7.4G 83 Linux

[root@alarm pankaj]# parted -l
-----------------------------------
Error: /dev/mmcblk0rpmb: unrecognised disk label
Model: Generic SD/MMC Storage Card (sd/mmc)                               
Disk /dev/mmcblk0rpmb: 4194kB
Sector size (logical/physical): 512B/512B
Partition Table: unknown
Disk Flags: 

Error: /dev/mmcblk0boot0: unrecognised disk label
Model: Generic SD/MMC Storage Card (sd/mmc)                               
Disk /dev/mmcblk0boot0: 4194kB
Sector size (logical/physical): 512B/512B
Partition Table: unknown
Disk Flags: 

Error: /dev/mmcblk0boot1: unrecognised disk label
Model: Generic SD/MMC Storage Card (sd/mmc)                               
Disk /dev/mmcblk0boot1: 4194kB
Sector size (logical/physical): 512B/512B
Partition Table: unknown
Disk Flags: 

Error: /dev/mmcblk0: unrecognised disk label
Model: MMC AWPD3R (sd/mmc)                                                
Disk /dev/mmcblk0: 15.6GB
Sector size (logical/physical): 512B/512B
Partition Table: unknown
Disk Flags: 

Model: SD SL16G (sd/mmc)
Disk /dev/mmcblk1: 15.9GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: 

Number  Start   End     Size    Type     File system  Flags
 1      1049kB  102MB   101MB   primary  fat32        boot
 2      102MB   8054MB  7952MB  primary  ext4
    
por Curious101 30.06.2018 / 20:57

0 respostas