3 votos

Cómo ejecutar un script .sh (comandos iptables) al iniciar

Estoy usando LineageOS 18.1

Cuando estaba en LOS 16, solía editar el archivo /system/etc/init.d/00banner y poner mis comandos iptables allí, por ejemplo:

#!/system/bin/sh
sh -c 'iptables -A OUTPUT -m owner --uid-owner 10195 -d 203.205.255.78/23 -j REJECT'

Todos los comandos iptables que ponía ahí solían ejecutarse al iniciar el teléfono. Pero en LOS 18.1, el directorio /system/etc/init.d/ fue descontinuado.

1. Creé y llené el script personalizado con los comandos iptables anteriores:

touch /system/etc/custominit.sh
chmod 0755 /system/etc/custominit.sh

2. Luego edité /system/etc/init/hw/init.rc y añadí al final:

chmod 0755 /system/etc/custominit
exec /system/etc/custominit

3. También intenté añadir:

service custominit /system/bin/custominit.sh
    disabled
    oneshot

Pero nada de esto funcionó.

¿Qué es lo que estoy haciendo mal? Tengo acceso root pero no quiero instalar ninguna aplicación adicional en mi teléfono para esto, como era posible hacer en LOS 16.

3voto

light9876 Puntos 51

El problema se resolvió siguiendo las instrucciones aquí:

https://ch1p.io/lineageos-run-shell-script-at-boot-as-root/

El problema principal resultó ser la falta de la ruta completa de los ejecutables, por ejemplo:

/system/bin/iptables en lugar de iptables

0 votos

...eso no explica por qué 'echo test >> /data/local/tmp/test.log' no te funcionó

1voto

Scott Puntos 61

Una vez que hayas añadido tu servicio como "desactivado" en init.rc, debes llamarlo en el arranque, agregando las siguientes líneas:

en el arranque
    custominit tus_parametros

Espero que resuelva tu problema

0 votos

La sintaxis no es correcta. Debería ser start custominit your_params. Pero aún así, esto podría no funcionar debido a otras razones.

1 votos

No, no funcionó.

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