Dê uma olhada:
# rcorder /etc/rc.d/* /usr/local/etc/rc.d/*
Isso mostrará a ordem em que os scripts são executados. Como entendi, todos os scripts são iniciados em paralelo. Suas dependências são iniciadas com antecedência.
A palavra chave que inicia um Serviço antes de outro (por exemplo, no script rc do inetd) é
# PROVIDE: inetd
# REQUIRE: DAEMON LOGIN FILESYSTEMS
(ou no script rc do samba)
# PROVIDE: samba_server
# REQUIRE: NETWORKING SERVERS DAEMON ldconfig resolv ntpd
# BEFORE: LOGIN
Basta colocar em todos os scripts rc necessários que precisam ser iniciados antes do seu serviço.
Do manual:
Keep in mind that putting a service name in the REQUIRE: line does not guarantee that the service will actually be running by the time our script starts. The required service may fail to start or just be disabled in rc.conf(5). Obviously, rcorder(8) cannot track such details, and rc(8) will not do that either. Consequently, the application started by our script should be able to cope with any required services being unavailable. In certain cases, we can help it as discussed below.
Finlay o link para o capítulo de manuais do FreeBSD sobre esse tópico: link