Pulsa aquí para quitar la publicidad.

Aumentar capacidad de almacenamiento interno?

Tema en 'Procesador Mediatek' iniciado por KripXP, 6 Jul 2011.

  1. KripXP

    KripXP Simdualero de Bronce

      20
      3
      5 Jun 2011
      Hola. Recientemente he flasheado mi TOPS A1 con Android (usando new_update_2.2_TOPSA1.zip) pero debido a que la memoria ROM es de 256MB, me he encontrado con un problema de espacio en /data...

      Ahora mismo el teléfono lo tengo de la siguiente manera:
      CODE, HTML o PHP:
      Filesystem           1K-blocks      Used Available Use% Mounted on
      tmpfs                    97560        12     97548   0% /dev
      tmpfs                    97560         0     97560   0% /mnt/asec
      /dev/block/mtdblock8    122880    106516     16364  87% /system
      /dev/block/mtdblock12    56576     42180     14396  75% /data
      /dev/block/mtdblock9     61440      4960     56480   8% /cache
      /dev/block/mtdblock1      3072      1512      1560  49% /nvram
      /dev/block/mtdblock6      1152      1152         0 100% /system/secro
      /dev/block/vold/179:2   520056     63054    457002  12% /data/sdext2
      /dev/block/vold/179:1  1431752    277776   1153976  19% /mnt/sdcard
      /dev/block/vold/179:1  1431752    277776   1153976  19% /mnt/secure/asec
      El caso es que aunque estoy usando link2SD para llevarme todo lo que puedo a la SD, contenido de la dalvik-cache incluido, y por eso link2SD me parece tan interesante, me encuentro con que la dalvik-cache sigue siendo de casi 25MB:
      CODE, HTML o PHP:
      24.4M   /data/dalvik-cache
      drwxrwx--x system   system            2011-07-06 17:15 dalvik-cache
      Las dos alternativas que yo veo, aunque cualquier sugerencia es bienvenida, son:

      - Mover la Dalvik-cache a /cache: Necesitaría ejecutar el siguiente script (o algo similar si es que tiene algún fallo... ya que como no lo puedo probar, no lo sé) durante el arranque. El uso de init.d parece que no funciona en Android así que tendría que meterlo en el init.rc. El problema es que init.rc va incrustado en el boot.img y aunque lo he intentado, no consigo desempaquetarlo, editarlo y reempaquetarlo de nuevo. En realidad, no consigo lo primero, esto es, desempaquetarlo.



      Enlaces Patrocinados: (regístrate o inicia sesión y no te molestarán más)

      CODE, HTML o PHP:
      #!/system/bin/sh
      #
      # Move dalvik-cache to /cache
      
      if [ ! -d /cache/dalvik-cache ]
      then
      	busybox rm -rf /cache/dalvik-cache /data/dalvik-cache
      	mkdir /cache/dalvik-cache /data/dalvik-cache
      fi
      
      busybox chown 1000:1000 /cache/dalvik-cache
      busybox chmod 0771 /cache/dalvik-cache
      
      # bind mount dalvik-cache
      busybox mount -o bind /cache/dalvik-cache /data/dalvik-cache
      busybox chown 1000:1000 /data/dalvik-cache
      busybox chmod 0771 /data/dalvik-cache
      - Cambiar tamaño de las particiones: Sacar algunos MG de /dev y algunos otros de /cache y cederlos a /data. Esta sugerencia quizá es una completa locura ya que no tengo ni idea de si se puede o no hacer, y ni siquiera cómo se haría.

      En fin, a ver si se os ocurre algo.

      Gracias.
       
    • KripXP

      KripXP Simdualero de Bronce

        20
        3
        5 Jun 2011
        Por si a alguien pudiese servirle...

        De momento no he encontrado la forma de desempaquetar/reempaquetar el boot.img, y dado que no puedo modificar el init.rc, he aplicado el siguiente script sobre /system/etc/install-recovery.sh. Resulta que este script se ejecuta durante la ejecución del init.rc (al menos en el kernel de mi teléfono). Me di cuenta de ello tras instalar la aplicación link2sd que también hace uso de este truco:

        CODE, HTML o PHP:
        #!/system/bin/sh
        
        #############################
        # Move dalvik-cache to /cache
        #############################
        
        if [ ! -d /cache/dalvik-cache ]
        then
        	rm -r /cache/dalvik-cache /data/dalvik-cache
        	mkdir /cache/dalvik-cache /data/dalvik-cache
        fi
        
        chown 1000:1000 /cache/dalvik-cache
        chmod 0771 /cache/dalvik-cache
        
        # bind mount dalvik-cache
        mount -o bind /cache/dalvik-cache /data/dalvik-cache
        chown 1000:1000 /data/dalvik-cache
        chmod 0771 /data/dalvik-cache
        
        # remove debugger memory dumps
        rm /data/tombstones/*
        rm /data/anr/*
        Es importante dar permisos 755 al script para que se ejecute durante el arranque, claro:
        CODE, HTML o PHP:
        ls -l /etc/install-recovery.sh
        -rwxr-xr-x root     root          602 2011-07-17 11:30 install-recovery.sh
        Ciertamente preferiría haber hecho esto mismo sobre una partición EXT2/3/4 en la tarjeta SD para no ocupar espacio en /cache, pero resulta que el kernel que estoy usando no soporta este tipo de FS (mi gozo en un pozo :TT TT:smile::

        CODE, HTML o PHP:
        cat /proc/filesystems
        nodev   sysfs
        nodev   rootfs
        nodev   bdev
        nodev   proc
        nodev   tmpfs
        nodev   debugfs
        nodev   sockfs
        nodev   pipefs
        nodev   anon_inodefs
        nodev   inotifyfs
        nodev   devpts
        nodev   ramfs
                vfat
                msdos
                yaffs
                yaffs2
        Pero en fin, por lo menos he liberado una cantidad razonable de memoria en la partición /data a costa de la /cache:

        CODE, HTML o PHP:
        Filesystem                Size      Used Available Use% Mounted on
        tmpfs                    95.3M     12.0K     95.3M   0% /dev
        tmpfs                    95.3M         0     95.3M   0% /mnt/asec
        /dev/block/mtdblock8    120.0M     99.0M     21.0M  82% /system
        /dev/block/mtdblock12
                                 55.3M     15.2M     40.1M  27% /data
        /dev/block/mtdblock9     60.0M     23.5M     36.5M  39% /cache
        /dev/block/mtdblock1      3.0M      1.5M      1.5M  49% /nvram
        /dev/block/mtdblock6      1.1M      1.1M         0 100% /system/secro
        /dev/block/vold/179:2
                                507.9M     81.5M    426.3M  16% /data/sdext2
        /dev/block/mtdblock9     60.0M     23.5M     36.5M  39% /data/dalvik-cache
        /dev/block/vold/179:1
                                  1.4G    569.0M    832.3M  41% /mnt/sdcard
        /dev/block/vold/179:1
                                  1.4G    569.0M    832.3M  41% /mnt/secure/asec
        Ahora es cuestión de seguir sacando a SD mediante link2SD todos los .apk, .dex y librerías de las nuevas aplicaciones que vaya instalando. Si además hay algo en las cachés (/data/data/) que crece demasiado, siempre puedo sacarlo manualmente a la SD mediante un symlink.

        De todos modos, en mis breves ratos libres, seguiré investigando el asunto del empaquetado/desempaquetado de los .img que tan intrigado me tiene.
         
        • Me Gusta Me Gusta x 2
        • PureMod

          PureMod Simdualero de Diamante

          • Veteran@
          2.872
          1.056
          31 Ago 2010
          Android World
          GRACIAS por aportar! :up:
           
        Verificación:
        Borrador guardado Borrador eliminado

        Compartir esta página

        Galletas! Nos obligan a informar que utilizamos cookies (como casi todas las webs). Al continuar navegando aceptas su uso.