La Seconda Partizione è davvero montata?
Di fatto le due opzioni "Move to Sd" e "Create Link" sono (o dovrebbero essere) mutuamente esclusive. O sposto il file .apk sulla SD (prima partizione) o sposto il file .apk e la sua dalvik-cache sulla SD (seconda partizione)...
il fatto che dica "create link" potrebbe essere fuorviante ma significa letteralmente "sposta i file sulla seconda partizione della SD (sottinteso) e crea (dopo) un link che le faccia vedere al loro posto originario (una sorta di ologramma che occupa zero spazio).
Quindi l'opzione "crea Link" dovrebbe effettivamente liberare più spazio dell'opzione "move to SD".
Verifichiamo allora che la seconda partizione sia OK:
codice:
# busybox ls -lh /dev/block/mmcblk*
brw------- 1 0 0 179, 0 Oct 4 16:59 /dev/block/mmcblk0
brw------- 1 0 0 179, 1 Oct 4 16:59 /dev/block/mmcblk0p1
brw------- 1 0 0 179, 2 Oct 4 16:59 /dev/block/mmcblk0p2
verifico proprio la presenza fisica delle partizioni:
mmcblk0 è la scheda SD intera (come se fosse un Hard Disk)
mmcblk0p1 è la prima partizione
mmcblk0p2 è la seconda partizione (se manca devo ricominciare da capo su PC, ecc...)
verifico anche in un altro modo (mi servirà dopo):
codice:
# busybox ls -lh /dev/block/vold/*
brw-r----- 1 0 1015 179, 0 Oct 4 16:59 /dev/block/vold/179:0
brw-r----- 1 0 1015 179, 1 Oct 4 17:00 /dev/block/vold/179:1
brw-r----- 1 0 1015 179, 2 Oct 4 16:59 /dev/block/vold/179:2
il numero 179 (potrebbe cambiare da telefono a telefono) identifica ancora la scheda... lo 0 seguente la scheda intera e 1 e 2 le due partizioni...
Se la seconda partizione esiste adesso verifichiamo che sia "montata" (operativa e funzionante al posto scelto da noi... o da Link2SD)
codice:
# busybox df -h
Filesystem Size Used Available Use% Mounted on
tmpfs 139.7M 12.0K 139.7M 0% /dev
tmpfs 139.7M 0 139.7M 0% /mnt/asec
/dev/stl14 25.1M 48.0K 25.0M 0% /cache
/dev/stl13 180.9M 119.1M 61.8M 66% /data
/dev/stl12 208.4M 165.9M 42.5M 80% /system
/dev/block/vold/179:2
384.2M 66.9M 317.3M 17% /data/sdext2
/dev/block/vold/179:1
1.5G 490.3M 1006.8M 33% /mnt/sdcard
/dev/block/vold/179:1
1.5G 490.3M 1006.8M 33% /mnt/secure/asec
la riga che mi interessa è questa:
codice:
/dev/block/vold/179:2
384.2M 66.9M 317.3M 17% /data/sdext2
vedo che la partizione è montata in /data/sdext2... perfetto
Adesso vediamo che filesystem usa:
di solito il risultato di questo comando è molto lungo... riporto solo la riga che mi interessa:
codice:
/dev/block/vold/179:2 on /data/sdext2 type vfat (rw,relatime,fmask=0000,dmask=0000,allow_utime=0022,codepage=cp437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro)
dove vedo che il filesystem è di tipo "vfat" (cioè FAT32 o FAT16)...
nel tuo caso dovrebbe essere "ext2".
Se arriviamo fin qui senza errori allora il problema può essere nella lettura della quantità di memoria libera, nell'operazione di link (improbabile ma...), un app non convenzionale, boh...
Aspetto solo conferme e poi ci riproviamo!
Nel caso, se non sono indiscreto, qual'è l'app che ti crea questo problema?
(N.B. non sentirti affatto in obbligo di rispondere ovviamente)
Mi piacerebbe provare anche a me per vedere se ottengo lo stesso errore...