Tengo un script bash luks
que utilizo en Android para montar/montar dispositivos encriptados, que se puede llamar en un emulador de terminal con
su -c "luks ..."
El script funciona bien para la primera parte, excepto en el tiempo de montaje, que en el script que hago con:
busybox mount /dev/mapper/${vol_arg} ${mount_path}
A pesar de que obtengo exitcode 0 de este comando, el dispositivo no está montado. La línea de comando
su -c "mount /dev/mapper/${vol_arg} ${mount_path}"
tampoco funciona en el emulador de terminal aunque no muestra ningún error ( df
no muestra el dispositivo). Cuando intento ejecutarlo de nuevo, obtengo mounting failed: device or resource busy
. Si luego intento
su -c "umount ${mount_path}"
También recibo cant't umount...: device or resource busy
. ¿Qué ocurre?
Sin embargo, el punto REALMENTE extraño aquí es que, si yo SSH
a la tablet como Root con el mismo emulador de terminal, el comando
mount /dev/mapper/${vol_arg} ${mount_path}
monta el dispositivo normalmente (??!!). Además, si ejecuto el comando
'luks ...'
como SSHd Root, también funciona perfectamente, incluso montando el dispositivo.
¿Por qué el montaje funciona si se ejecuta como SSH Root, y no a través de su -c
?
Aún más extraño es el hecho de que el su -c
la cosa funciona bien en Samsung Android 4.1.2, pero no en Cyanogenmod 11 (4.4.2)...
¿Quizás la gente de cyanogenmod introdujo algún bug feo?
¿Pistas?
¡¡Gracias!!
L.
0 votos
Ahora esto es gracioso: después de montar a través de SSH, el usuario Root ve el contenido del volumen en la carpeta
${mount_path}
, según se desee, mientras que otros usuarios/apps ven el contenido anterior del${mount_path}
¡¡!! Parece que las rutinas de montaje de Cyanogenmod están rotas.0 votos
¿Ni una sola respuesta...?