Link2SD: error al montar /dev/block/vold/179:66 en /data/sdext2: no existe tal archivo o directorio

Estoy usando un Xperia Z5 Compact E5823 rooteado con la última ROM de Android 6.0.
Estoy tratando de usar una segunda partición con Link2SD, pero hasta ahora siempre obtengo el mismo error "No existe tal archivo o directorio":

Error de secuencia de comandos de montaje

No se puede crear el script de montaje.

montaje: error al montar /dev/block/vold/179:66 en /data/sdext2: no existe tal archivo o directorio

Para formatear mi tarjeta microSD he usado GParted bajo Debian con ext2, 3y 4, siempre como partición primaria. También he usado la recuperación TWRP para formatear esta segunda partición. Con esto solo he probado ext3, que mi Debian reconoce como ext2y parece que no hay manera de elegir que tipo de partición (supongo que tienen primaria por defecto). Con TWRP también podría probar, ext4pero preferí la primera publicación aquí.

Veo una /data/sdext2carpeta con la ayuda de un explorador de archivos raíz. Esta carpeta está vacía.

El "archivo" /proc/partitionsmuestra una 179 66 2000000 mmcblk1p2entrada, que corresponde a la segunda partición de mi tarjeta SD externa.

Link2SD tiene permisos de superusuario y su script de montaje /data/data/com.buak.Link2SD/init-link2sd.shse ve así:

set +e
echo "$(fecha) montaje..." > $LOG
sleep 2
mount -t ext2 -o rw /dev/block/vold/179:66 /data/sdext2 1>>$LOG 2>>$LOG

mount -t ext2 -o rw /dev/block/mmcblk1p2 /data/sdext2 1>>$REGISTRO 2>>$REGISTRO

montar >> $LOG
echo "$(fecha) montaje terminado" >> $LOG
chmod 773 /data/dalvik-cache

¿Intentó comentar la primera instancia de mounten el script y ver si funciona?
¿Quieres comentar set +e?
No, para comentar mount -t ext2 -o rw /dev/block/vold/179:66 /data/sdext2 1>>$LOG 2>>$LOG.
Lo pruebo y te cuento :)
¡Guau! ¡Eso parece hacer el truco casi por completo! Lo único insatisfactorio es que recibo una advertencia de montaje en cada arranque, que dice que la segunda partición no estaba montada en el arranque, pero después mis aplicaciones vinculadas "no son reconocidas por el sistema todavía". Entonces tengo la opción de Reinicio rápido, Cancelar o Recrear scripts de montaje...
Lo siento, pero nunca usé Link2SD. Será mejor que esperes a alguien que sea más experto en eso.
OK. ¡gracias por la ayuda!

Respuestas (2)

Puede usar la aplicación "Apps2SD" para montar una segunda partición (después de eliminarla y usar Link2SD). ( No lo use si solo usa 1 partición es sdext2 ) Si usa Android 6.0 y usa la segunda partición y "Almacenamiento adoptable" use "Root Explorer" vaya a la ruta "/etc/apps2sd-mountscript.sh" edítelo . Debido a que usa 2 particiones, entonces use por defecto si crear es "dev/block/ mmcblk1p1 /data/sdext2", lo cambia a "dev/block/ mmcblk1p2 /data/sdext2" (yo uso Sony M4 aqua dual)

En la versión nueva de Apps2SD, puede volver a montar ext2 cambiando mmcblk1p1 en el cuadro de diálogo a mmcblk1p2 no puede tener éxito, ¡así que no edite manualmente!
En la versión nueva de Apps2SD, puede volver a montar ext2 cambiando mmcblk1p1 en el cuadro de diálogo a mmcblk1p2 puede tener éxito para que no edite manualmente.

¡Este error fue muy difícil de rastrear! Me tomó un tiempo volver a abordarlo y esto es lo que descubrí y cómo resolverlo.

Un poco sobre mmcblk_p_

  1. Las tarjetas SD son especiales en cuanto a su sufijo de "partición de bloque", es decir, la -blk*p*parte.
  2. Para el usuario, los números en el sufijo -blk*p*están, en la práctica, determinados por el sistema en el que está montada la tarjeta.
  3. El script de Link2SD es sensible a la correspondencia del sufijo de partición "interno" de la tarjeta microSD ( -p*) y su "externo"/"montado" en algún sistema. (Así, el No such file or directory).

Solución

Para que el script de montaje predeterminado de Link2SD tenga éxito, debe eliminar y volver a hacer la tabla de particiones de la tarjeta microSD (con GParted o similar) y luego hacer sus dos (o más) particiones, siendo la segunda un ext2sistema de archivos. Esto generará una correspondencia en los números de sufijo -p*de su "segunda ext2partición" tanto en la tarjeta como en el sistema.

Fondo

Bueno, noté que cada vez que un SDcad obtiene una nueva partición, el último índice en el sufijo -blk*p_"avances". La tarjeta microSD en cuestión se ha particionado más de tres veces sin restablecer su tabla de particiones. ¡Esa tarjeta no tiene "interna" -p2a pesar de que el núcleo de Android la trata como tal! (¡¿Difícil, eh?!) Parece que el núcleo de Android solo toma la cantidad de particiones existentes para crear las /proc/partitionsdirecciones en lugar de la cantidad total de particiones que se haya hecho bajo una tabla de particiones existente.

Información extra

Link2SD garantiza que su segunda ext2partición no se mostrará en su PC cuando conecte su dispositivo a través de USB. ¡Esto es cierto para Windows pero desafortunadamente no es cierto para GNU+Linux! Windows no reconoce ext2los sistemas de archivos. GNU+Linux lo hace. Como consecuencia, algunas aplicaciones pueden tener problemas para recuperar información de archivos /data/sdext2.

Finalmente

La última versión de Link2SD en PlayStore es 4.3.4 del 21.06.2018 y ubica su script de montaje en /data/data/com.buak.Link2SD/files.

Además, para obtener más información, visite el sitio oficial de Link2SD .