¿Puedo usar ext4 en mi tarjeta SD en un teléfono no rooteado?

Sé que en un teléfono rooteado, es razonablemente normal crear una pequeña partición ext4 para que la use App2SD, pero no estoy preguntando sobre ese caso: tengo un HTC Desire no rooteado que ejecuta Froyo, y me gustaría formatear toda mi tarjeta SD como ext4 en lugar de FAT. Soy consciente de que esto significará que las PC con Windows no podrán usar la tarjeta, pero todas mis PC ejecutan Linux, por lo que deberían estar bien. ¿El teléfono podrá acceder y usar la tarjeta en este caso?

No creo que puedas. especialmente porque froyo usa FAT para su implementación apps2sd.
Creo que tendrías que cambiar las opciones de montaje de la tarjeta SD, lo que requeriría rootear.

Respuestas (5)

ext4 debería ser compatible si tiene una actualización a Android 2.3 o 3.0 (veo que su publicación es anterior a las versiones 2.3 y 3.0...).

... y cuando se agrega btrFS a Android, tiene una buena opción de montaje ",ssd" con nivelación de desgaste, etc. que ext4 no tiene... y más velocidad que ext4 ahora, especialmente si usa ",compress =lzo" O ",space_cache" en fstab (pero no use compresión CON la opción space_cache, solo use 1 o el otro o de lo contrario se ralentiza en algunos puntos de referencia), y esa velocidad viene a pesar de la suma de verificación btrFS de todos datos (no solo de las revistas, como lo hace ext4). :-)

Solo una actualización de 2017: creo que esto realmente solo es válido si tiene un dispositivo rooteado, desafortunadamente.
Solo una actualización de 2021, todavía no funciona en Android 10. También probé una memoria USB con formato XFS, todavía nada.

De hecho, tenía mi tarjeta SD en ext4 y la monté permanentemente en el momento del arranque (tengo root en mi teléfono).

El mayor problema fue que las aplicaciones no esperan la verificación de permisos en /sdcard, pero extX lo impone (no hay opción de montaje al respecto). Entonces, si una aplicación almacena, por ejemplo, algún audio allí y llama a otro subcomponente para reproducirlo, falla.

Lo mismo es cierto para las fotos (la cámara las toma, algunos previsualizadores podrían querer acceder a ellas).

Puede corregir esto manualmente, pero debe ejecutar después de cada nuevo archivo creado... Habría una buena solución real para esto, pero requiere una modificación del sistema: deje que las aplicaciones se ejecuten con umask (002) en lugar de 022. Android es UPG (Grupos privados de usuarios), por lo que no hay gran daño al hacerlo. – Ahora las aplicaciones pueden elegir si quieren exponer archivos a otros configurando el grupo en "tarjeta sd" o no. Esto también se sumaría a una separación forzada donde las aplicaciones lo deseen.

Obtenga permisos fijos usando FUSE o sdcardfs: android.stackexchange.com/a/217936/218526 . Pero esta respuesta no es para teléfonos no rooteados.

Parece que la respuesta es "no" :(. Estaba preguntando porque tengo una nueva tarjeta para colocar en el teléfono, así que pensé en intentarlo, no funcionó. Cuando le pedí al teléfono que monte su tarjeta, va directamente a decir "Es seguro quitar la tarjeta SD".

Oh bien.

Por favor, respalde su respuesta de alguna manera o elimínela.
forum.xda-developers.com/showthread.php?t=2424900 explica que vold es una especie de obstáculo
@JasonPlutext ahora hay vold parcheado disponible.

Respuesta corta: no .

Aunque en Android 5 cat /proc/filesystemsse muestra que ext4es compatible, parece que solo FAT32y exFAT (FAT64)son compatibles en dispositivos no rooteados. Intenté montar una tarjeta micro SD de 64 GB como exFAT sin éxito.

Puede formatear fdisksu tarjeta a FAT32 (los archivos de más de 4 GB no son compatibles):

$ fdisk -H 224 -S 56 /dev/mmcblk0

  • deliminar partición anterior
  • nnueva partición, luego seleccione la principal py el sector predeterminado comience, por ejemplo, para2048
  • tconfigurado cpara FAT32
  • (aquí puede guardar algunos sectores yendo al modo experto xy moviendo el inicio de la partición b)
  • wescribir cambios

Luego formatee a FAT32, usando su número de sectores reservados ( 2048)

$ mkfs.vfat -F 32 -s 32 -R 2048 -v /dev/mmcblk0p1

  • -F 32para FAT32
  • -s 32tamaño del clúster expresado como sectores, por lo que 32 x 512 bytes = clústeres de 16 KB
  • -R 2048número de sectores reservados

De esta manera, la tarjeta de 64 GB se puede montar usando FAT32, no logré encontrar ningún formato que funcionara para exFAT o ext4.

Por favor, respalde su respuesta de alguna manera o elimínela.
@Masi, ¿podrías ser más específico? He intentado formatear la tarjeta SD a ext2, ext3, ext4, fat32 y exfat. Probado en Android 5.0 y solo funcionaba fat32. Android tiene opciones muy limitadas para iniciar sesión en dispositivos no rooteados. ¿Qué quieres que haga?
Acabo de hacer una instalación completa del sistema de una nueva Rom en ext4. El teléfono usó el modo de recuperación (TWRP 2.8.x). No hay sistema operativo en absoluto en el teléfono. Su imagen de recuperación debe ser compatible con ext4. Por favor, háganos saber el suyo e intente actualizarlo. Recomiendo TWRP 3.0.2.
@Masi La pregunta es sobre Android predeterminado no rooteado. Supongo que estás usando un sistema operativo rooteado.
No, estoy usando Android no rooteado.
@Masi Ok, no estoy seguro de lo que estás tratando de probar. Logró instalar el sistema operativo en ext4, pero la pregunta es sobre el montaje de una tarjeta SD. Entonces, ¿cuál es tu punto?
Sí, puede usar ext4 en la tarjeta SD.
@Masi bueno, ¿podría respaldar esa afirmación con algo más específico?

Probé LineageOS 14.1 (android 7.1.2), es compatible con sdcard (tf-card) formateada en ext4. Aunque formatea sdcard a vfat por defecto, si no haces ningún parche. La forma más fácil es formatear la tarjeta sd con ext4 usando un adaptador de tarjeta sd usb externo, luego inserte la tarjeta sd en el teléfono con LineageOS instalado.

Eso se debe a vold parcheado . No funcionará en ROM de stock.