Os scripts start / stop do SysVinit são iniciados em ordem alfanumérica de acordo com a ordem de classificação da localidade padrão "C" (POSIX), portanto S99foobar
será iniciado após qualquer script S99[a-e]*
, mas antes de qualquer script S99[g-z]*
.
Os scripts são iniciados pelo script mestre /etc/init.d/rc
. O código relevante é essencialmente:
for link in /etc/rc.d/rc3.d/S[0-9][0-9]*; do
test -x "$link" || continue
# omitted optimization: if previous runlevel already started this service, don't start it again
# omitted logic: if $DO_CONFIRM is set, prompt for each service
# omitted logging
$link start; status=$?
# omitted status reporting/logging logic based on value of $status
done