What Is /etc/rc

Content on WhatAnswers is provided "as is" for informational purposes. While we strive for accuracy, we make no guarantees. Content is AI-assisted and should not be used as professional advice.

Last updated: April 11, 2026

Quick Answer: /etc/rc is a critical initialization script in Unix and Linux systems that runs at boot to execute system startup commands and launch essential services. Originating from Unix Version 7 (1979), it establishes the runtime environment by executing predetermined commands in sequence. While modern systems increasingly use systemd (adopted by 90%+ of Linux distributions since 2015), /etc/rc remains essential for legacy systems and embedded Linux devices.

Key Facts

Overview

/etc/rc is a critical initialization script found in Unix and Linux systems that executes automatically during the system startup process. This script is responsible for performing essential configuration tasks and launching core system services before the operating system reaches its fully operational state. The name "rc" stands for "run commands," reflecting its primary function of executing a series of predetermined commands in sequential order.

The /etc/rc file system has been a fundamental component of Unix since the 1970s, originating in Unix Version 7 released in 1979. While its role has evolved significantly over the decades, with modern Linux distributions increasingly adopting systemd as an alternative, understanding /etc/rc remains important for system administrators and developers working with Unix-like systems. Many organizations still maintain systems using traditional /etc/rc scripts, and knowledge of these files is essential for troubleshooting boot issues and customizing system startup behavior.

How It Works

The /etc/rc startup process follows a structured sequence of operations that initialize the system in a controlled manner.

Key Comparisons

Aspect/etc/rc (Traditional)systemd (Modern)
Inception1979 (Unix Version 7)2010 (systemd project inception)
Configuration FormatShell scripts with executable permissionsDeclarative unit files (.service, .socket, .timer)
Execution MethodSequential execution onlyParallel service startup with dependency management
Modern AdoptionLegacy systems, embedded Linux, specialized distributions90%+ of Linux distributions as of 2024
MaintainabilityRequires bash scripting knowledgeSimpler configuration syntax, enhanced debugging
Backward CompatibilityN/A (being phased out)Maintains compatibility with /etc/rc.local and legacy scripts

Why It Matters

While systemd has become the standard init system for modern Linux distributions, /etc/rc remains an important historical and practical component of Unix-like systems. System administrators should maintain familiarity with both traditional and modern approaches to effectively manage diverse environments and handle legacy systems running in production.

Sources

  1. Wikipedia - InitCC-BY-SA-4.0
  2. Wikipedia - systemdCC-BY-SA-4.0
  3. Wikipedia - Unix System VCC-BY-SA-4.0

Missing an answer?

Suggest a question and we'll generate an answer for it.