Här är de råa mtd-partitionerna, "size" är i hex.
TWKSYSTM t ex är 0x10400000 = 272 629 760 bytes / 1024 / 1024 -> 260MB decimalt (så jag ljög när jag sade 256 MB förut
)
Kod:
# cat /proc/mtd
dev: size erasesize name
mtd0: 00400000 00004000 "misc"
mtd1: 00800000 00004000 "kernel"
mtd2: 00400000 00004000 "boot"
mtd3: 00800000 00004000 "recovery"
mtd4: 10000000 00004000 "system"
mtd5: 10400000 00004000 "backup"
mtd6: 07400000 00004000 "cache"
mtd7: 20000000 00004000 "userdata"
mtd8: 10400000 00004000 "twksystm"
mtd9: 94400000 00004000 "user"
#
Formaterade o klara (de som är monterade)
Kod:
# busybox df -h
Filesystem Size Used Available Use% Mounted on
tmpfs 143.4M 32.0k 143.4M 0% /dev
tmpfs 143.4M 0 143.4M 0% /mnt/asec
tmpfs 143.4M 0 143.4M 0% /mnt/obb
/dev/block/mtdblock7 503.8M 54.9M 423.3M 11% /data
/dev/block/mtdblock8 227.4M 178.3M 43.9M 80% /system
/dev/block/mtdblock6 112.3M 5.5M 101.0M 5% /cache
/dev/block/vold/31:9 2.3G 61.5M 2.3G 3% /mnt/sdcard
/dev/block/vold/31:9 2.3G 61.5M 2.3G 3% /mnt/secure/asec
I detta fallet är inget sd-kort installerat och som man ser monteras då "user" som "fake-sdkort" på 820.
Kuriosa: "twksystm" var ursprungligen betydligt mindre och hette "kpanic". Eftersom vi inte är så intresserad av kernel panic dumps on "oops" så stängde jag av den funktionen, utökade partionen rejält och "snodde" den alltså på vad jag själv tyckte var ett listigt sätt, för att hålla partitions-numreringen intakt.
Problemet är annars att vid recovery-booten så gäller den gamla partitions-tabellen fortfarande, och det gäller att hålla tungan rätt i min när man pillar med detta. Därför är det inte HELT okomplicerat att utöka /data (userdata) i en simpel update.img, eftersom den inte kan formateras korrekt förrän EFTER recoveryn körts...
Men det är absolut inte omöjligt på något sätt.
Själv skulle jag nog föreslå att någon skriver en trevlig GUI-app som begär root-rättigheter och sedan, när användaren aktiverar denna, monterar en katalog på /data/app t ex såhär:
"busybox mount -o bind /mnt/sdcard/customapps /data/app".
Helst ska det ju göras tidigt i booten, men om du är linux-admin löser du detta utan problem (init är patchad som sagt och stödjer exec
)