π ~1 min read
Table of contents
Symptom & Impact
Custom or third-party rc scripts can start too early when dependency headers are incomplete.
Environment & Reproduction
Service starts manually but fails during boot because network, storage, or database backends are not ready.
Root Cause Analysis
Any host with local rc.d scripts or ports that install nonstandard startup scripts.
Quick Triage
Ability to edit rc script headers and test reboots in controlled windows.
Step-by-Step Diagnosis
[image_ref: 0] Run rcorder /etc/rc.d/* /usr/local/etc/rc.d/* | grep service_name; service service_name status; tail -n 200 /var/log/messages.

Solution – Primary Fix
[image_ref: 1] Ensure script headers include accurate PROVIDE, REQUIRE, and BEFORE tokens for dependencies like NETWORKING or LOGIN.
Still having issues? Our IT Solutions & Services team can diagnose and resolve this for you. Get in touch for a free consultation.

Solution – Alternative Approaches
Update rc script headers, confirm enable flags in rc.conf with sysrc, and retest startup order via reboot or staged service restarts.
Verification & Acceptance Criteria
Service starts automatically after boot with no dependency-related errors.
Rollback Plan
Restore previous rc script and disable auto-start until corrected dependency graph is validated.
Prevention & Hardening
Standardize rc script templates and validate header correctness during code review.
Related Errors & Cross-Refs
Escalate when dependency loops or complex multi-service sequencing require architecture changes.
Related tutorial: View the step-by-step tutorial for freebsd-14.
View all freebsd-14 tutorials on the Tutorials Hub β
Browse all common problems & solutions on the Tutorials Hub.
References & Further Reading
rc(8), rc.subr(8), rcorder(8), service(8).
Need Expert Help?
If you cannot resolve this yourself, our team offers hands-on Server Management, Managed IT Services, and flexible Support Plans. Contact us today β we respond within one business day.