Montar 2a partición (y que se vea) en microSD

Inewer_es

Simdualero de Bronce
Mensajes
12
Puntos
138
Hola a tod@s;

Bueno, después de llevar varios días dando vueltas por el foro sin encontrar ningún hilo abierto sobre el tema que me preocupa, y tras haber participado con un par de aportes en otro par de hilos que nada tenían que ver con la cuestión que me gustaría resolver, me "animo" a abrir mi "propio" tema con la esperanza de que algún miembro de este foro, bién sea de este teléfono o de otra marca, pero con los suficientes conocimientos, me ayude y/u oriente, siempre que eso sea posible, para poner solución a mi inquietud, que la verdad, aunque mis conocimientos al respecto son bastante, por no decir muy limitados, intuyo que para alguien con la instrucción y experiencia suficiente en "programación androide" no le representará mayor problema colaborar conmigo.

Asi pues, tras este pequeño preámbulo, paso a exponer mi consulta, que consiste en lo siguiente:

Resulta que me gustaria que mi teléfono, un iNew V8 Plus - MTK6592M, me mostrara en el panel "Ajustes" >>"Almacenamiento, de manera permanente la "existencia" y obviamente también, la capacidad y el espacio disponible en la segunda partición de cualquiera de las dos microSD que actualmente dispongo y que voy alternando según mis necesidades puntuales. Estas tarjetas son una microSD Samsung original de 32Gb de clase 6, que es la que utilizo habitualmente, con una segunda partición de alrededor de unos ~8Gb en formato ext4, y otra microSD de 64Gb, también de las mismas características que la anterior (marca y clase), salvo por el tamaño y formato de la primera y segunda partición, que es de alrededor de unos ~32Gb/NTFS para la primera partición, y aproximadamente otros tantos ~32Gb/ext4, para la segunda partición, pero que por motivos prácticos, inserto y utilizo sólo cuando viajo o me desplazo fuera de mi ciudad, bién sea por motivos lúdicos o profesionales, ya que en ella "cargo" con los mapas de varios navegadores, otras aplicaciones gráficas con archivos bastante grandes, etc, etc...

Bien, a pesar de todo esto, y aunque al principio tuve mis más y mis menos con el formateado de la segunda partición de la tarjeta "pequeña", al final conseguí averguar y subsanar el origen del problema, ahora todo funciona correctamente, salvo por un detalle, nimio si se quiere, pero que me gustaría resolver.

Se trata de hacer que mi sistema operativo (KitKat 4.4.2; ROM stock ligeramente modificada/optimizada) monte/reconozca "efectiva y visualmente" la/s segunda/s particiones de mis dos tarjetas microSD externas. Y digo que monte y reconozca "efectiva y visualmente" por lo siguiente. En este mismo momento que estoy escribiendo este post, mi teléfono, con su subsiguiente S.O está reconociendo la segunda partición de la tarjeta que está insertada, la "pequeña" de 32Gb, pero no me lo indica en el panel "Ajustes">> "Almacenamiento" y si debería mostrarlo. Sin embargo, la segunda partición si es visible en otros paneles de información de almacenamiento de otras aplicaciones "ajenas" al sistema.
Para demostrarlo, a continuación os muestro varias capturas de pantalla de ese panel de "Almacenamiento" nativo que no refleja fielmente la realidad, junto a los "pantallazos" de los paneles de información de almacenamiento de las aplicaciones "ajenas" que si son capaces de mostrar esa información que "existe" y es real como la vida misma...

La primera y segunda captura son del panel de Android (no cabía todo en una sola), la tercera es la de ES File Explorer, la cuarta es de Link2SD, y la quinta y sexta captura de esta serie, las de Roehsoft Partition Toolkit SD, donde en una se muestra esquemáticamente la composición de la microSD, y en la otra, los formatos de archivo que soporta mi teléfono, que afortunadamente son casi todos, incluyendo el NTFS y el exFat.

Screenshot_2015-08-25-20-33-42.png
Screenshot_2015-08-25-20-33-58.png


Screenshot_2015-08-25-20-22-03.png


Screenshot_2015-08-25-20-22-26.png


Screenshot_2015-08-25-20-21-42.png
Screenshot_2015-08-25-20-26-06.png


Como veréis, salvo en las dos primeras capturas (las de Android), en el resto SI se puede ver la existencia real de la segunda partición, con su nombre o denominación - sdext2 -, su capacidad total y su espacio ocupado y el espacio libre restante. Además, se puede ver también en la segunda imágen cómo Android muestra el tamaño total, unos ~22Gb aproximadamente, que ya es el que es, así como el espacio ibre restante, algo más de 15Gb, que también es correcto, de la primera partición de la microSD, pero no dice ni pío de los ~8Gb de la segunda partición, que para Android por lo visto no existe...

Hasta aquí todo más o menos bien, o regular para mi gusto.

Mi deseo sería que Android "montara" realmente esa segunda partición al arrancar el dispositivo, con lo que esa segunda partición sería visible siempre en el panel nativo de Ajustes >>Almacenamiento. Pero intuyo que no se ve en ese panel y si en los demás, porque actualmente, realmente no es Android quien monta la segunda partición, sino que presumo que es la aplicación Link2SD, o más bien, y casi con toda seguridad, es la aplicación FolderMount quien lo hace, puesto que ésta es la más reciente de este tipo que he instalado y hasta que no lo hice y enlacé con ella un par de carpetas intrascendentes ubicadas en: /emulated/0/sdcard/Android/data/"aplicación_X" con su respectivo par creado para la ocasión en la segunda partición, cuya ruta es: /data/sdext2/ esa "barra" de información acerca de la existencia y tamaño total de sdext2, indicando sus espacios en uso y disponible que muestra ES File Explorer, no la mostraba como se puede ver en la tercera imágen, no asi en el panel de información de almacenamiento de Link2SD (cuarta imágen), donde siempre, desde que particioné la tarjeta, siempre reflejó esa partición y sus "propiedades".

Asi pues, creo que el problema radica en quién, dónde y cuando monta esa segunda partición. Desde luego, Android no la monta, al menos no desde su tabla natural de particiones, tal y como debería ser. Intentaré explicarme, como pueda, ya que como dije al principio, no es éste precisamente un tema que yo domine mucho, más bien al contrario, pues me suelo liar bastante con estos menesteres.

Veamos, a ver si al menos voy bien encaminado...
A diferencia de otras versiones de Android, creo, si no estoy mal informado, KitKat no tiene una partición que use como memoria o almacenamiento "interno" y otra partición de la memoria interna que utilice como "sdcard" tal y como era típico ver en Jelly Bean y anteriores. Ahora, esa memoria interna es una sola, y su tamaño total viene determinado por la configuración, digamos hexadecimal o binaria, del o los archivo/s EBR y que componen junto con otros archivos no menos "misteriosos", las características definitorias de la ROM. Luego, ese espacio "total", se divide a su vez en una serie de otras particiones más pequeñas, cada una diseñada para albergar su función específica, como lo pueden ser las particiones "boot", "system", "cache", "dalvik" etc, y la más "importante" para el usuario, que sería "data", la cual, a su vez, contiene otro espacio, un tanto "confuso" denominado "emulated", que recrea la "ilusión' de un espacio de almacenamiento en modo de "sdcard0", pero que en realidad "no existe", porque como bien se denomina, es una emulación y en realidad esa "sdcard0" no es tal, sino que es un gran pedazo (que no partición) de la misma partición "data", en definitiva, un lío, y que obviamente se destina para ser usado y ocupado con una variedad de datos, siendo así mismo de acceso, uso y propiedad mixto entre el sistema, algunas aplicaciones que almacenan allí parte de sus datos no vitales, y el usuario con sus cosas...

Es por eso, que a causa de ese "reparto" del espacio total de la memoria interna, y en base a su primigénio y "novedoso" diseño en este apartado de KitKat respecto a sus antecesores en cuanto a la estructura de la memoria interna, haciendo que toda sea una, pero a su vez, dividida en pequeñas "subparticiones" (imprescindibles por otro lado para que esto funcione...) y dejando "el resto", que no es tal, sino que lo parece, para almacenar ya cositas más triviales, tipo fotos, musica y otr@s, así como datos no vitales de algunas aplicaciones...

Eso explica con toda seguridad el caso de mi teléfono, que de un espacio de ROM declarado de 16Gb, recién sacado de la caja "sólo" disponía de 13 y pico Gb libres.
Pero ese no es el problema. Mi problema, si es que hay problema, porque no sé si ya lo dije antes, pero de momento todo funciona perfectamente, incluso las aplicaciones que están enlazadas en la segunda partición de la microSD mediante Link2SD, responden bien y sin lags (y las que lo están con FolderMount, también), y el teléfono se muestra estable y de momento tampoco no sufre lags ni titubeos que puedan considerarse ni mínimamente fuera de lo normal. El problema, decía más arriba, creo que lo tengo en la estructura y jerarquía de la tabla de particiones del sistema.
En mi caso, la "ruta" de la carpeta "sdext2" que representa la segunda partición de mi tarjeta está ubicada en: /system/data/ y se encuentra dentro de /data. Osea que su ruta es: /system/data/sdext2.

Nos vamos acercando... :wink:

Sin embargo, esa carpeta "sdext2" no tiene su "par" por decirlo de alguna manera en la carpeta /mnt Es decir, no existe o no tiene su correspondiente enlace simbólico o "symlink" hacia o entre esa carpeta "sdext2" y la carpeta "/mnt"

Por tanto, yo supongo que por ahí vienen "mis males", puesto que las carpetas que si tienen su "symlink" en la carpeta "/mnt" resulta que, "oh, casualidad" Android si las monta al arrancar, o sobre la marcha, según necesidad, como pueda ser con el USB/OTG por ejemplo, cuyo "symlink" se encuentra dentro de la carpeta "/mnt/media_rw"
Y también son esas particiones, o por lo menos, algunas de ellas, que también residen o están enlazadas simbólicamente en la citada carpeta "/mnt" ("sdcard", "sdcard2" y "media_rw") las que sí se reflejan de manera permanente y en tiempo real (como cuando se activa o desactiva algún dispositivo o host extraíble) en el panel "Ajustes" >>"Almacenamiento", y también, a su vez prueba que en "/mnt" está todo o casi todo el "kid" de la cuestión, por el hecho de que desde "Ajustes" >>"Almacenamiento" nos da la opción de desactivar (en definitiva, desmontar) y que dicho sea de paso es siempre muy importante recordar hacer uso de esa opción antes de retirarlos, para no corromper irremisiblemente nuestra microSD o Pendrive, o cualquier otro dispositivo de almacenamiento extraíble de estado sólido (SS o Solid State)
Esto de la corrupción y/o pérdida de datos al desmontar sin deshabiltar primero no afecta tanto (quizás nada) a los medios de almacenamiento "magneto/electro-mecánicos" (HDD's IDE/SATA que en algún momento pudieran ser conectados al teléfono vía OTG a través de un hub que asi lo permitiera)

Ver capturas de pantalla a continuación:

Screenshot_2015-08-26-00-17-46.png

Screenshot_2015-08-25-22-14-24.png

Screenshot_2015-08-25-22-19-02.png


En la primera captura de esta serie, que corresponde a la ruta "/system/data/" se aprecia, al final de la imágen, la carpeta "sdext2", que pertenece a la segunda partición de la microSD.

Quiero aclarar aquí que la carpeta "sdcard2", bajo "sdcard" que se ve en la segunda imágen, pertenece a la primera partición de la microSD. También aclaro que la carpeta "sdcard1" que se aprecia en la tercera imágen de esta serie de capturas, y que nos muestra el contenido de la carpeta "media_rw", pertenece también a la primera partición de la microSD, tal vez porque en esa partición también hay contenido audiovisual en distintas carpetas, y que algunas aplicaciones hacen uso de ellas para depositar sus datos y/o contenidos (distintas cámaras de foto y video que tengo instaladas, editores de fotos e imágenes, etc) que Android considera que tiene que montar como partición de audiovisuales (media) con permisos de lectura y escritura (rw)...

Entonces, visto lo visto, y tras un "googleo" bastante intensivo, también en inglés, para intentar hallar información al respecto, y una vez recopilada y más o menos analizado todo lo que me ha parecido más fiable y veraz bajo mis modestas "entendederas" en cuanto a este respecto se refiere, y dada mi nula experiencia previa en el manejo de ningún tipo de código (salvo el xml... :wink: ) para crear scripts, ni tampoco con el manejo del Emulador de Terminal para crear órdenes de ejecución, a no ser eso si que al menos para esta ocasión algún alma caritativa me quiera adiestrar un poquito, llego a las siguientes conclusiones:

1) El método de modificar -en este caso añadir- líneas de código al archivo "vold.fstab" no me sirve porque mi sistema (KK 4.4.2) no trabaja bajo ese principio y/o parámetros (más bien creo que eso debe ser válido para Jelly Bean y anteriores) y por tanto, tampoco dispongo de esos archivos "vold.xxxx", al menos éstos no están en la ruta que se supone que deberían estar, según los diversos tutoriales que he podido examinar.

2) La siguiente alternativa supongo yo que sería intentar enlazar simbólicamente las carpetas /"system/data/sdext2" y "/mnt".
Pero el problema que se me plantea es cómo, pues no creo yo que valga hacer un "symlink" normal y corriente por ejemplo con un explorador de archivos un poco "powerful", tipo "RootExplorer" o similar, así como el que enlaza la Galería al Escritorio... Estamos hablando de archivos bastante, por no decir muy importantes del sistema, y digo yo que habrá que hacer algo más, ¡supongo yo, vamos!
Y si se hace; ¿cómo se hace?

3) Otra opción que se baraja por ahí es crear un script, creo que bastante sencillo por lo que he podido ver y por lo poco que entiendo, para que mediante ese script, Android monte al arrancar esa carpeta "sdext2" que ahora reside en "/system/data".
Pero los ejemplos que he visto no son exactamente lo que yo necesito, y por tanto, no me vale con "copiar y pegar" alguno de los scripts de ejemplo que he visto por la red, donde sea que se "pegue" semejante "cosa"... Digo yo que tal script para que se ejecute tal acción debería elaborarse con una estructura y con un contenido y una sintaxis determinados, en virtud de lo que queramos hacer, dónde, como, cuando y de qué manera, y colocarlo y/ o hacerlo colocar en el lugar adecuado, bien sea "a mano" o con la herramienta adecuada... Pero como dije antes, mi experiencia con scripts es absolutamente nula, asi que necesitaría ayuda de principio a fin para elaborarlo, y lo no menos importante... ¡que funcione y no se pete otra cosa, o se brickee el teléfono!

4) Por último, y no por ello será la forma más fácil de hacerlo, pero seguramente sí será la más "elegante", y presumo que también la más conveniente, aunque también bastante peligrosa si no se hace bien, es introduciendo una instrucción al sistema para que la ejecute mediante el uso del Emulador de Terminal, o "Terminal Emulator", pero otra vez me encuentro tropezando con la misma piedra: "No tengo ni papa", como se suele decir, salvo que alguien que sepa (pero que sepa de verdad, no vayamos a liarla...) y quiera ayudarme, se estudie el tema, me pregunte lo que necesite saber si en este post no he puesto los datos preliminares necesarios, y en base a eso y a lo que se tenga que hacer con el emulador, tenga la bondad de hacerme, o enseñarme a hacer una "plantillita" o "chuleta" con el código a entrar en el terminal, y cómo no, con un escueto tutorial de introducción y/o aprendizaje para su uso, junto con unas breves recomendaciones en cuanto a la aplicación más adecuada a descargar para tal fin para hacerlo "in-situ" desde el teléfono, o si por el contrario, es mejor, aconsejable, más seguro o se debe hacer si o si desde el PC.

Así pues, este post ha llegado a su fin. Si hay alguien por aquí con la experiencia y conocimientos suficientes (yo creo que si, insisto, incluso para mi limitado conocimiento del tema, ni siquiera yo veo que sea algo muy complicado, lo que ocurre es que debido a esa ignorancia mía, si que me dan bastante respeto "enmierdarme" con todos esos asuntos tan "oscuros" yo solito...)
Decía, que me enrrollo más que una persiana, que si por aquí hay alguien que "controle" lo suficiente y me quiera ayudar, ya sabe, que conteste a este hilo que he abierto y ya iremos "posteando" sobre el tema. Soy todo ojos... ¡y dedos! :wink:

Espero vuestra inestimable colaboración.

Gracias.

Saludos.
 
Última edición:
Hola @Inewer_es , que mas me gustaría a mi que poder devolverte el favor y ayudarte con tu problema, pero no dispongo de los conocimientos necesarios. En un caso como el tuyo necesitas de un cocinero experto que te diga si es posible lo que pides y como ejecutarlo. Así que voy a citar a mis colegas expertos a ver si alguno puede echarte una mano:

@Xancin

@avecilla

@Amadeus

@MANOWARACERO

Son nuestros maestros cocineros y seguro que alguno puede ayudarte.
Suerte:up:
 
Hola @margal.r;

Gracias por responder. Si, efectivamente, mi problema, y el propósito del post va dirigido a "despertar" el interés colaborativo de algun miembro de esta comunidad que sea bien "geek"... ¡y el resto es palabrerío del mío para "hacer bulto"!
Pero no sé si en vez de "despertar" a alguien, más bien se me dormirán con semejante ladrillako... :wink:

En fin, esperaremos a ver... y si no, en todo caso, a estos señores que me apuntas; ¿cómo se les puede contactar, si es que hay que contactar con ellos? ¿a través de mensaje privado? ¿o publicando el post en cada uno de los foros por donde ellos acostumbren a estar más a menudo? ¿o ya "vendrán" ellos solos y se pasarán por aquí?.

En fin, ya me dirás algo, y si no, ya estoy mentalizado para esperar y tener paciencia...

Gracias de nuevo.

Saludos.
 
Última edición:
Siempre andamos por todas partes. Cuando tenga un momento me lo leo todo...es que no se muy bien que deseas conseguir

Sonríe, estas vivo
 
Sería que lo reconozca en el menú ajustes, me parece entender. Pero si un navegador de archivos avanzado lo reconoce, creó que android lo monta bien. Lo del menú ajustes es otro tema, ojo que lo mismo no leí bien, es que voy a todo trapo.
 
Hola, @Xancin y @avecilla.

Sí, leéroslo bien, y cuando más o menos podáis vislumbrar alguna cosa, nos ponemos al ataque, si queréis, claro...

avecilla; para que la cosa fuera como a mi me gustaría, creo que debería existir un enlace simbólico -que por ahora no existe- entre la carpeta de la segunda partición que se encuentra dentro de /system/data y la carpeta de "montaje" /mnt

Espero vuestras analíticas al "problema" y vuestras autorizadas opiniones, a ver si entre todos podemos esclarecer y ponerle remedio a este detallito.

Gracias a los dos.

Saludos.
 
Última edición:
Yo no sabría como ayudarte la verdad que desde que en kitkat cambiaron los archivos vold.fstab ando bastante perdido con lo de las particiones y no tengo ni idea.
Asi algo rápido que se me ocurre pero no se si podría funcionar seria desde el root explorer /storage y si dices que te sale la partición darle,editandole los permisos,como a las apps pero tampoco se cuales habría que darles,porque de esto no tengo mucha información.
 
Hola Amadeus;

Gracias por tu aporte. Pienso que cualquier idea puede ser útil, y la tuya en este caso es posible que lo sea si la llevo a la práctica tomando antes algunas precauciones. Me explicaré.

En efecto, actualmente en mi dispositivo y tal como se aprecia en la siguiente captura de pantalla, no aparece en /storage la carpeta "sdext2" perteneciente a la segunda partición de mi tarjeta microSD.

Screenshot_2015-08-28-08-50-24.png


Así, en un primer "flash mental" se me ocurre que, si ubico, es decir, muevo la carpeta "sdext2" desde su localización actual en /system/data hacia /storage , tal vez podría "funcionar" para el propósito que persigo, que como ya dije en el post que inició este hilo, no es otro que permitir la visualización de la segunda partición en el panel "Almacenamiento" en "Ajustes". De esta forma, me imagino yo que si la segunda partición apareciera visible en ese panel de información de almacenamiento, se daría por sentado que Android reconoce la segunda partición de la tarjeta externa como algo "propio", y tal vez así se montaría siempre de forma automática desde el inicio del sistema sin tener que darle al sistema operativo ninguna instrucción particular -mediante script u otro medio- para que lo haga, por decirlo de alguna manera, de forma inducida o extraordinaria.

Por lo tanto, y como la "operación" en principio no parece tener mayor dificultad que mover la carpeta "sdext2" desde su directorio /system/data actual hacia /storage , pues intentaré probarlo. Eso sí, se me ocurre que antes de mover la carpeta sin más, debería antes desenlazar desde Link2SD (y también ese par "a prueba" que lo están mediante la app FolderMount) todas las aplicaciones que actualmente tengo enlazadas en la segunda partición de la microSD. Esto por una parte, y por la otra, después de haber desenlazado las aplicaciones, irme al recovery y hacer un backup previo al "movimiento" de la carpeta "sdext2" desde su ubicación actual a la nueva localización en /storage. Luego, sólo quedaría reiniciar, cruzar los dedos y "rezar algo rapidito" mientras se recrea la bootanimation, y si pasa de ahí y no se me brickea el teléfono, ver que cambios se han producido tras el cambio en el panel "Ajustes" >>"Almacenamiento".
De este modo, y suponiendo que todo hubiera ido OK, tal vez ya se mostraría la segunda partición en el panel de información de almacenamiento de Android, y es posible que en base a esto, también se hubiera creado de manera "autónoma" y sin recurrir a otras "astucias" el correspondiente enlace simbólico de la carpeta "sdext2" entre su nueva ubicación en /storage y /mnt. Es posible, pues parece tener su lógica, pero nunca se sabe...

En fin, lo probaré y ya os comentaré. No obstante, si a algún otro usuario se le ocurre/sabe otra manera de poder hacer esto, que no se corte y que comente.

Gracias de antemano.

Saludos.
 
Última edición:
Hola @margal.r

Gracias por tu recomendación. Así lo haré de aquí en adelante.

En estos detalles se aprecia bien claramente mi bisoñez como usuario en el mundo de los foros de internet...

Gracias de nuevo.

Saludos.
 

Del blog

¿Ha terminado la locura de añadir tantas cámaras a los móviles?

  • Si

  • No

  • No lo se

  • Ya me gustaría...

  • Ya te gustaría...


Los resultados solo son visibles tras votar.
Atrás
Arriba