Não, os scripts em rc.local
são executados como processos separados, o que significa que eles não têm como modificar o ambiente dos pais.
Se você quiser definir variáveis de ambiente em todo o sistema, o lugar para isso é /etc/profile
.
A documentação do FreeBSD rc.local
menciona uma convenção de que% Os scripts/etc/rc.d/
cujo nome termina com .sh
serão originados em vez de serem executados de forma independente. Eu não acho que isso é portável para outras plataformas, embora eu possa estar errado.