Link2SD no funciona en Marshmallow: no existe tal archivo o directorio

9

Debido a mi descontento con la nueva tarjeta SD como almacenamiento interno de Marsmallow, decidí volver a Link2SD, algo que había estado usando en versiones anteriores de Android. Sin embargo, hay un problema. Si intento crear los scripts de montaje para mi tarjeta SD particionada, aparece el siguiente error:

Mount script cannot be created

mount: '/dev/block/vold/179:66'->'/data/sdext2': No such file or directory

¿Alguien sabe cómo hacer que Link2SD funcione en Marshmallow?

Paul Clavier
fuente

Respuestas:

6

El almacenamiento interno de Marshmallow se puede usar mejor con una tarjeta SD de formato mixto, como también explico en mi blog aquí :

http://blog.sam.liddicott.com/2016/02/android-6-semi-adopted-storage.html

Primero, necesitas que adb funcione.

  1. Tener la tarjeta SD insertada y formateada como portátil.
  2. Expulsa tu tarjeta SD del menú Almacenamiento y USB
  3. Use "adb shell" para enumerar su almacenamiento adoptable:

Me gusta esto

$ adb shell sm list-disks adoptable

disk:179_64

disco: 179_64 es mi tarjeta SD que se puede hacer adoptable, quiero un 75% como SD externa:

$ adb shell sm partition disk:179_64 mixed 75

Nota: Su tarjeta puede aparecer con una coma en lugar de un guión bajo, por ejemplo, disco: 179,64 en cuyo caso, eso es lo que escribe:

$ adb shell sm partition disk:179,64 mixed 75
  1. Esto borrará toda la tarjeta SD, dando un 75% como almacenamiento portátil y el resto como almacenamiento interno adoptado.

  2. Reinicia tu teléfono.

  3. En el menú Almacenamiento y USB, seleccione la tarjeta SD (interna) y elija Migrar datos (para que las aplicaciones, donde sea posible, se instalen allí).

  4. Desde Almacenamiento y USB, cambie el nombre del almacenamiento adoptado para que tenga un nombre como Adoptado; de lo contrario, si tiene el mismo nombre que la partición de almacenamiento externo, la vista USB MTP solo puede mostrar el interno

Sam Liddicott
fuente
también debe publicar su respuesta en esta pregunta , es una mejor
combinación
Pero esta solución no es compatible con Link2SD. El sistema de archivos de la partición adoptada es "Otro" cuando se verifica con una aplicación de partición de computadora, por lo que Link2SD no puede reconocer la partición a adoptar (de ahí la pregunta). Sin Link2SD, las aplicaciones inamovibles no se pueden forzar a pasar a la tarjeta SD.
Ooker
2
#! / system / bin / sh
mount -t ext4 -o rw / dev / block / mmcblk1p2 / data / sdext2
mount -t ext4 -o rw / dev / block / vold / 179: 66 / data / sdext2

Puede que tenga que hacer que la línea vold sea:

mount -t ext4 -o rw / dev / block / vold / public: 179: 66 / data / sdext2

Todo depende de cómo dejes que Marshmallow formatee tu tarjeta en el primer arranque.

Use Apps2SD para hacer el guión. Simplemente abra la aplicación, vaya a "Vincular aplicaciones a la tarjeta SD", seleccione su sistema de archivos y listo. Todavía está en desarrollo activo y trabajando. Después de crear el script, puede desinstalar Apps2SD.

syndre
fuente
1

Como otros han insinuado, puede usar Apps2SD para crear el script de montaje y simplemente desinstalarlo cuando haya terminado.

Gili
fuente
Esto funcionó para mí. Y creo que este es el método más fácil de todos.
Preetesh
0

Resolví el problema inicial enumerado aquí con:

cd /dev/block/vold
ln public:179_66 179:66

y luego Link2SD pudo hacer sus trucos; sin embargo, todavía no era útil, y al mover los datos internos de Google Play Music (mp3) a la tarjeta SD, el programa de música siguió fallando.

Eliminar Link2SD después de la desinstalación no es fácil,

mount -o remount,rw /system
mv /system/bin/debuggerd.bin /system/bin/debuggerd
rm /system/etc/init.d/11link2sd
mount -o remount,row /system

luego reinicie, de lo contrario la segunda partición se sigue montando en / data / sdext2

(Por lo tanto, estoy frustrado de que si fusiono mi tarjeta SD como memoria interna, Google Play Music almacenará los mp3 en la memoria interna limitada en lugar de la tarjeta SD)

Sam Liddicott
fuente
Disculpe por una pregunta tan básica. ¿Debo escribir el script anterior para archivar en init.d? Además, ¿podría explicar qué hace el script anterior?
Ganesh Satpute
1
No te molestes, Link2SD todavía no hace nada útil. Vea mi mejor solución en: blog.sam.liddicott.com/2016/02/… que publicaré como respuesta
Sam Liddicott
"Nada útil" es una declaración subjetiva bastante controvertida y radical, por lo que sería mejor si pudiera respaldarla con algunos datos informativos. Gracias.
Adam Spires
1
No es controvertido en absoluto, a menos que contradiga mi reclamo. Pero para responder a su solicitud: no funciona en Android 6, inserta comandos de montaje incorrectos en varios scripts de inicio y aún falla cuando se corrigen esos comandos de montaje.
Sam Liddicott
No quise ser discutidor, solo quise decir que he visto a personas decir que no funciona y que no es compatible, y no he visto a nadie decir que está funcionando.
Sam Liddicott