1 votos

¿Cómo puedo ejecutar un script .sh personalizado en cada inicio (sin soporte nativo de init.d)?

Esto parece ser una preocupación general de los jugadores novatos del sistema Android que acaban de rootear sus teléfonos. El método más prevalente puede ser lanzar tu script en /system/etc/init.d. Si la ROM admite init.d entonces Voilá pero no siempre es el caso. Así que

¿Cómo puedo ejecutar mi script personalizado en cada inicio? ¿En qué usuario/grupo se ejecutará mi script si utilizo tu solución?


Agradecemos todo tipo de soluciones.

2voto

Creo que la forma más fácil sería usando la aplicación Kernel Adiutor. Tiene la capacidad de emular init.d Abre la aplicación y desliza desde el borde izquierdo, se revelará un menú, desplázate hasta la sección de herramientas y luego toca en init.d Allí tienes un interruptor para habilitar o deshabilitar el emulador init.d, para dispositivos que no admiten init.d, en la esquina inferior derecha tienes un icono de "más" para agregar scripts que se ejecuten.

0 votos

Buen trabajo sugiriendo KA. Lo intenté pero no sabía qué hacer meses atrás.

1voto

Guillermo Gomez Puntos 423

Desde mi respuesta en otra pregunta, tengo dos métodos aquí.

1. Agregar soporte init.d manualmente editando init.rc

Personalmente nunca he hecho esto, pero puedo decir que

  • Necesitas desempaquetar y volver a empacar tu imagen de arranque. Esto puede no ser muy difícil si puedes aprender del paquete zip de SuperSU.

2. Reemplazar un servicio del sistema (en este caso, el script siempre se ejecutará como root)

Reemplaza un servicio del sistema (en este caso, debuggerd es la mejor elección) binario con tu propio script de shell personalizado. Luego ejecuta start debuggerd para activarlo (efectivo desde el próximo arranque).

Si hay un debuggerd64, asegúrate de reemplazarlo con un script nulo.

1voto

PlanZ Puntos 1

Forma simple (funcionando):

  1. Prepara tus comandos de inicio en un script, por ejemplo /system/xbin/post-boot (establece permisos de ejecución)

  2. Agrega la ruta al script personalizado anterior al final de /system/etc/init.qcom.post_boot.sh

Ejemplo:

# echo /system/xbin/post-boot >> /system/etc/init.qcom.post_boot.sh

¡Listo!

(Si no puedes encontrar el post_boot de qcom (dispositivos Qualcomm), busca cualquier script post_boot)

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X