¿Es posible cambiar el tamaño de las particiones?
Sí, es teóricamente posible, pero es posible que no funcione en su dispositivo. Si estás dispuesto a arriesgarte con tu dispositivo (si algo va mal, puede quedar brickeado hasta que encuentres lo que le pasa), adelante. Además, esta modificación no se recomienda para los principiantes. También hay que tener en cuenta que con esto se restablecerá de fábrica el dispositivo (todos los datos de las aplicaciones desaparecerán). Necesitarás:
- Un dispositivo rooteado con recovery personalizado
- Conocimiento básico del funcionamiento del BAD
- Conocimientos básicos sobre el funcionamiento de las particiones y las tablas de partición
- Paciencia y tiempo, ya que esto podría (y tendrá) probablemente algunos obstáculos ya que eres un principiante y estos tutoriales no están hechos para tu dispositivo específico.
He redimensionado con éxito mi partición utilizando este tutorial en XDA Sin embargo, me salté algunos pasos en el camino, ya que estaban dirigidos a diferentes dispositivos (teléfonos Xperia), por lo tanto, no todos los pasos son compatibles.
Es posible que este tutorial no sea compatible con su dispositivo, así que proceda con precaución
Intentaré resumir brevemente lo que ocurre en ese tutorial. Qué vamos a hacer:
- Haremos una copia de seguridad de todos los archivos presentes en la tarjeta SD interna (esto es opcional)
- Eliminaremos
/sdcard
partición (que es interna, emulada "tarjeta SD"), y borraremos /data
partición (que es donde se almacenan los datos del teléfono, incluidas las aplicaciones)
- A continuación, crearemos nuevos
/sdcard
y /data
particiones, pero esta vez, se redimensionarán para que tengas más espacio para las aplicaciones.
- Si antes hicimos una copia de seguridad de la tarjeta SD, ahora restauraremos el contenido original de la SD interna
Asumo que has trabajado con ADB y que tienes un custom recovery presente en tu dispositivo (si no cumples estos requisitos, familiarízate con ellos antes de continuar)
Bien, antes de empezar, necesitarás descargar fs-utils.zip desde esta página de XDA . Son utilidades del sistema de archivos que utilizaremos más adelante. Descomprime este archivo y colócalo en una carpeta, en algún lugar de la tarjeta SD externa (por ejemplo, /sdcard/fs-utils) Además, activa la "depuración USB" en tu teléfono, que se encuentra en "Opciones de desarrollador" en los dispositivos más recientes, o en "Aplicaciones" en los dispositivos más antiguos.
Copia de seguridad de archivos desde la tarjeta SD interna (opcional)
Bien, esto es bastante sencillo, copias los archivos de la memoria interna a donde quieras (es decir, PC, tarjeta SD externa).
Editar la tabla de particiones
Aquí es donde se vuelve complicado, así que asegúrate de que todo funciona antes de empezar, y asegúrate de que tu teléfono tiene suficiente batería (por si acaso).
- Entra en la recuperación de tu teléfono.
- Conectar con el ADB
-
Ejecute los siguientes comandos
umount /storage
parted /dev/block/mmcblk0
print
Esto debería imprimir la tabla de particiones, como:
Number Start End Size File system Name Flags 1 131kB 2228kB 2097kB TA 2 2228kB 3801kB 1573kB Boot 3 3801kB 5374kB 1573kB Boot2 4 6291kB 27.3MB 21.0MB Kernel 5 27.3MB 28.3MB 1049kB TZ 6 29.4MB 32.5MB 3146kB modemst1 7 33.6MB 36.7MB 3146kB modemst2 8 37.7MB 40.9MB 3146kB fsg 9 40.9MB 46.1MB 5243kB ramdump 10 46.1MB 54.5MB 8389kB ext4 apps_log 11 54.5MB 71.3MB 16.8MB FOTAKernel 12 71.3MB 2120MB 2049MB ext4 System 13 2120MB 2620MB 500MB ext4 Cache 14 2620MB 5692MB 3072MB ext4 Userdata 15 5692MB 15.6GB 9942MB ext4 SDCard
En este ejemplo, Userdata
partición está en el puesto 14, y SDCard
está en el 15º. Observe cómo el Userdata
comienza en 2620MB, y termina en 5692MB, y SDCard
comienza donde Userdata
termina, y termina en 15,6GB. Marca estos números, ya que los usaremos cuando creemos las nuevas particiones.
Siguiendo este ejemplo, eliminaremos estas particiones:
rm 14
rm 15
Ahora, calculamos los nuevos tamaños de las nuevas particiones. Aviso: Necesitas tener la tarjeta SD emulada en tu sistema, no la quites completamente, está codificada en el sistema, y quitarla podría romper la funcionalidad del dispositivo.
Por ejemplo, si queremos aumentar el tamaño del Userdata
a 6000MB, simplemente sumamos 6000MB a 2620MB (donde comienza la partición), para obtener la posición donde termina la partición. En ese caso, terminaría en 8620MB. SDCard
sigue después del Userdata
Así que comienza en 8620MB y termina en 15,6GB.
Así que, después de calcular las tallas, entramos:
mkpartfs logical ext2 2620 8620 (change the numbers for your device)
name 14 Userdata
mkpartfs logical ext2 8620 15.6GB (again, change the numbers)
name 15 SDCard
quit
Ahora, el espacio está asignado para estas nuevas particiones, pero aún no están correctamente formateadas. Así que, en tu recovery, formatea tu tarjeta SD interna (sdcard0 o como se llame).
Ahora, en ADB, navega a la carpeta de la tarjeta SD externa, donde se encuentran los fs-utils:
cd /sdcard/fs-utils (change as appropriate)
Después, introduzca estos comandos, uno por uno:
tune2fs -j /dev/block/mmcblk0p14
tune2fs -O extents,uninit_bg,dir_index /dev/block/mmcblk0p14
e2fsck -fpDC0 /dev/block/mmcblk0p14
Ahora, las particiones están formateadas.
Ya puedes reiniciar el teléfono.
Intenta escribir algo en la SDCard, sólo para comprobar si tienes permisos de escritura en ella, y si no los tienes, entra (vía ADB):
su
chown -R 2800:2800 /mnt/media_rw/sdcard0
Eso debería solucionar el problema.
Después de esto, puede restaurar los archivos respaldados en su tarjeta SD.
Dado que este es mi primer post en la comunidad, animo a los usuarios a que editen y amplíen este post según sea necesario.