Hola
Quiero que se ejecute un script cada vez que enciende el router y por eso lo puse en el archivo /etc/rc.local
Sin embargo, al reiniciar el router, el script no funciona.
Los permisos de ejecución son correctos.
Todas las rutas especificadas en el script son absolutas.
El script lo que hace es activar la wifi de otro router, mediante la orden:
ssh otrorouter wifi up ..... (o algo similar, ahora no recuerdo la sintaxis exacta)
El caso es que si lo ejecuto manualmente desde consola, funciona perfecto. Sólo falla si lo pongo en el rc.local.
¿Alguna idea de qué puede estar pasando?
Gracias.
Edito: por lo visto, el script sí que se ejecuta desde rc.local. Lo que está fallando es la orden ssh otrorouter....
Este es el contenido del script.
#!/bin/sh
echo ENCENDIENDO TODAS LAS WIFIS DE CASA
rm /root/WIFI_OFF
touch /root/WIFI_ON
for router in bosque.lan salon.lan oficina.lan
do
ssh $router "wifi up"
done
El router que ejecuta tiene "permiso" (autenticación por clave pública y privada) de login directo a los otros routers, sin necesidad de password.
Y en su archivo hosts están las IPs correspondientes de los otros routers también.
Se me ocurre que mientras se está ejecutando el script, aún no haya arrancado la red, o algo así
?
Pero tampoco, porque le he puesto un sleep de bastante tiempo para que se espere antes de ejecutar el bucle y tampoco va.