что то у меня не получается вообще создать на карте андроид( на NN2
а вот и сам ./flash_all_sd.sh
Спойлер :
#!/bin/sh set -e PWD=`pwd -P` BOOT_SIZE=1048576 SYSTEM_SIZE=`expr $(stat -c %s system.img) / 512 + 1` VENDOR_SIZE=`expr $(stat -c %s vendor.img) / 512 + 1` PRODUCT_SIZE=`expr $(stat -c %s product.img) / 512 + 1` ODM_SIZE=`expr $(stat -c %s odm.img) / 512 + 1` CACHE_SIZE=`expr $(stat -c %s cache.img) / 512 + 1` METADATA_SIZE=262144 #CACHE_SIZE=135168 echo "Dreambox Android flash all sdcard script" if [ -z ${1+x} ]; then echo "Usage: $0 [device]" exit 1 fi BLOCK=$1 PART= if echo $BLOCK| grep -q "mmcblk"; then PART=p fi drive_umount() { echo "Umounting device..." for i in {9..1}; do if [ $(mount | grep -c ${BLOCK}${PART}${i}) != 0 ]; then umount -l ${BLOCK}${PART}${i} fi done echo "Done" echo } drive_partition() { # Make partitions, we assume 512 bytes for sector echo "Partitioning $BLOCK device..." sfdisk $BLOCK << EOF ,$BOOT_SIZE,c ,$SYSTEM_SIZE,83 ,$VENDOR_SIZE,83 ,,5 ,$PRODUCT_SIZE,83 ,$ODM_SIZE,83 ,$CACHE_SIZE,83 ,$METADATA_SIZE,83 ,,83; EOF echo "Done" echo } format_partitions() { # format boot partition echo "Formatting boot partition..." mkfs.vfat ${BLOCK}${PART}1 -n boot echo "Done" echo # format cache partition #echo "Formatting cache partition..." #mkfs.ext4 -F ${BLOCK}${PART}7 -L cache #echo "Done" #echo # format metadata partition echo "Formatting metadata partition..." mkfs.ext4 -F ${BLOCK}${PART}8 -L metadata echo "Done" echo # format data partition echo "Formatting data partition..." mkfs.ext4 -F ${BLOCK}${PART}9 -L data echo "Done" echo } dump_images() { # dump system image echo "Dumping system image..." dd if=${PWD}/system.img of=${BLOCK}${PART}2 bs=8M echo "Done" echo # dump vendor image echo "Dumping vendor image..." dd if=${PWD}/vendor.img of=${BLOCK}${PART}3 bs=8M echo "Done" echo # dump product image echo "Dumping product image..." dd if=${PWD}/product.img of=${BLOCK}${PART}5 bs=8M echo "Done" echo # dump odm image echo "Dumping odm image..." dd if=${PWD}/odm.img of=${BLOCK}${PART}6 bs=8M echo "Done" echo # dump cache image echo "Dumping cache image..." dd if=${PWD}/cache.img of=${BLOCK}${PART}7 bs=8M sync echo "Done" echo } copy_boot_files() { # temporary mount boot partition and copy files echo "Copying boot files..." rm -rf /tmp/tmp-boot mkdir /tmp/tmp-boot mount ${BLOCK}${PART}1 /tmp/tmp-boot cp ${PWD}/boot.img /tmp/tmp-boot cp ${PWD}/autoexec.img /tmp/tmp-boot cp ${PWD}/bootlogo.bmp /tmp/tmp-boot sync umount -l /tmp/tmp-boot rm -rf /tmp/tmp-boot echo "Done" echo } echo "Running from: ${PWD}" echo drive_umount drive_partition # wait for automount echo "Waiting for automount" sleep 20 echo "Done" echo drive_umount format_partitions dump_images copy_boot_files # set autoboot env START_ANDROID=`${PWD}/fw_printenv -c ${PWD}/fw_env.config | grep boot_android_from_sdcard -c` START_MMC=`${PWD}/fw_printenv -c ${PWD}/fw_env.config | grep start_mmc_autoscript -c` if [ 0 == `expr $START_ANDROID + $START_MMC` ]; then echo "Updating u-boot environments for autoboot.." ${PWD}/fw_setenv -c ${PWD}/fw_env.config -s ${PWD}/env.txt echo "Done" echo fi echo "Completed"