Hola
Ya he comprobado el orden de ejecución de las 3 opciones de pfSense para lanzar un comando o script al inicio.
Es la siguiente:
1- /usr/local/etc/rc.d/.sh
2- <earlyshell>3- <shellcmd>4- /usr/local/etc/rc.d/.sh</shellcmd></earlyshell>
Parece que los sh scripts en /usr/local/etc/rc.d/ se ejecutan dos veces, en primer orden y otra vez, tras shellcmd y earlyshellcmd
Definí en config.xml
<earlyshellcmd>echo "I am earlyshell" >> /order.tmp</earlyshellcmd>
<shellcmd>echo "I am shellcmd" >> /order.tmp</shellcmd>
Creeé un script con permisos de ejecución en /usr/local/etc/rc.d/order.sh con
#!/bin/sh
echo "I am /usr/local/etc/rc.d/order.sh" >> /order.tmp;
Y el volcado de /order.tmp
cat /order.tmp
I am /usr/local/etc/rc.d/order.sh
I am earlyshell
I am shellcmd
I am /usr/local/etc/rc.d/order.sh
Salu2