Сборка ядра на примере kindle 3: структура диска и backup

Внимание! Батарея должна быть заряжена, иначе могут быть неприятные глюки.

Бэкап можно сделать несколькими путями:

  • с помощью ATK — просто и работает на «окирпиченом» устройстве
  • через Recovery menu (диск Lab126 Amazon Kindle), монтируя как диск в линухе — требуется специальный адаптер и переходник, работает только на «живом» ядре (статья, статья 1, статья 2)
  • через Recovery menu — можно попасть в меню через кнопку Enter.
  • используя usbnet — нужно ставить jailbreak+sshd
  • используя специальные апдейты (например от siralex) — нужно ставить jailbreak, но достаточно просто. Восстанавливаем через ATK.

Для начала надо рассмотреть структуру диска (fdisk -l):

Disk /dev/sdb: 4001 MB, 4001366016 bytes, 7815168 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 identifier: 0x489339d6
 
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *        7688     1338943      665628   83  Linux     -- rootfs
/dev/sdb2         1338944     1388095       24576   83  Linux     -- ??
/dev/sdb3         1388096     1404479        8192   83  Linux     -- ??
/dev/sdb4         1404480     7815167     3205344    b  W95 FAT32 -- образ диска с FAT32!

А теперь структура, находящяяся ниже 7688 и rootfs:

#image     / start_addr description   / length=dec/hex
#atk-*.bin / 0x00000000 Partition Map / len=1024/0x400
dd if=atk.bin of=/dev/mmcblk0 bs=1024 seek=0
#dcdheader.bin / 0x00000400 DCD Header / len=2048/0x800
dd if=dcdheader.bin of=/dev/mmcblk0 bs=1024 seek=$((1024/1024))
#u-boot.bin / 0x00000C00 Boot Loader / len=263168/0x40400
dd if=u-boot.bin of=/dev/mmcblk0 bs=1024 seek=$((3072/1024))
#uImage / 0x00041000 Linux Kernel / len=3407872/0x340000
dd if=uImage of=/dev/mmcblk0 bs=1024 seek=$((266240/1024))
#*.wbf / 0x00381000 ISIS Waveform / len=262144/0x40000
dd if=k3.wbf of=/dev/mmcblk0 bs=1024 seek=$((3674112/1024))
#rootfs / 0x003C1000 Root filesystem / len=681603072/0x28a07000
dd if=rootfs.img of=/dev/mmcblk0 bs=1024 seek=$((3936256/1024))

 

 

 

Теги: ,

Ваш отзыв