A rendszer indítására a FreeBSD 2002-ben
      átvette a NetBSD rc.d
      rendszerét.  Ezt a felhasználók könnyen
      felismerhetik az /etc/rc.d
      könyvtárban található
      állományokról.  A legtöbbjük olyan
      alapvető szolgáltatás, amelyet a
      start, stop és
      restart paraméterekkel lehet
      vezérelni.  Például az sshd(8) az
      alábbi paranccsal indítható
      újra:
# /etc/rc.d/sshd restart
Ez az eljárás hasonló a többi szolgáltatás esetén is. Természetesen ezek a szolgáltatások általában maguktól indulnak el a rendszer indítása során az rc.conf(5) állományban megadottak szerint. Például ha a rendszerünk indulásakor szeretnénk aktiválni a hálózati címfordítással foglalatoskodó démont, akkor csak adjuk hozzá az /etc/rc.conf állományhoz a következő sort:
natd_enable="YES"
Amennyiben a natd_enable="NO" sor már
      szerepel benne, akkor egyszerűen írjuk át a
      NO értéket YES-re.
      Ezután az rc szkriptek a rendszer következő
      indításakor a lentieknek megfelelően
      automatikusan elindítják a hozzá
      tartozó szolgáltatásokat is.
Mivel az rc.d rendszert elsősorban
      arra használják, hogy szolgáltatásokat
      indítsanak el vagy állítsanak le az
      operációs rendszerrel együtt, a
      szabványos start, stop
      és restart paraméterek csak abban
      az esetben látják el a feladatukat, ha a nekik
      megfelelő változókat beállítottuk
      az /etc/rc.conf állományban.
      Tehát például az sshd
      restart csak abban az esetben fog bármit is
      csinálni, ha az /etc/rc.conf
      állományban az sshd_enable
      változót a YES
      értékre állítottuk.  Ha az
      /etc/rc.conf
      beállításaitól függetlenül
      kívánunk egy szolgáltatásnak
      start, stop vagy
      restart parancsot adni, akkor elé kell
      tennünk egy “one” szót.
      Például ha az sshd
      szolgáltatás
      újraindításához az
      /etc/rc.conf tartalmát figyelmen
      kívül akarjuk hagyni, akkor ezt a parancsot kell
      kiadnunk:
# /etc/rc.d/sshd onerestart
Könnyen ellenőrizni tudjuk, hogy az adott
      szolgáltatás az /etc/rc.conf
      részéről engedélyezett-e, ha a neki
      megfelelő rc.d szkriptnek megadjuk az
      rcvar paramétert.  Ennek
      segítségével például a
      rendszergazda így képes ellenőrizni, hogy az
      sshd szolgáltatást
      engedélyezi-e az /etc/rc.conf:
# /etc/rc.d/sshd rcvar # sshd $sshd_enable=YES
Megjegyzés: A második sor (# sshd) az sshd parancs kimenete, nem pedig a root parancssora.
A status paraméterrel
      kideríthetjük, hogy egy szolgáltatás
      aktív-e.  Ezzel például így tudjuk
      ellenőrizni az sshd
      szolgáltatás
      működését:
# /etc/rc.d/sshd status sshd is running as pid 433.
Az üzenet:
Az sshd a 433-as azonosítóval fut.
Bizonyos esetekben a reload paraméter
      használatával lehetőségünk van a
      szolgáltatások
      újraindítására is.  Ilyenkor a
      rendszer megpróbál egy olyan jelzést
      küldeni a szolgáltatásnak, amivel a
      konfigurációs állományainak
      újraolvasását kéri.  A
      legtöbbször lényegében ez a
      SIGHUP jelzés
      kiküldését rejti magában.  Ez a
      lehetőség azonban nem mindegyik
      szolgáltatás esetén érhető
      el.
Az rc.d rendszer nem csupán hálózati szolgáltatások esetén használatos, hanem nagyrészben hozzájárul a rendszer indításához is. Erre vegyük példának a bgfsck állományt. Amikor ez a szkript lefut, a következő üzenetet jeleníti meg:
Starting background file system checks in 60 seconds.
Az üzenet fordítása:
A háttérben 60 másodperc múlva megkezdődik az állományrendszerek ellenőrzése.
Ennek megfelelően tehát ezt az állományt az állományrendszerek háttérben folyó ellenőrzésére használják, ami pedig a rendszer indítása során fut le.
Számos rendszerszolgáltatás igényel a működéséhez további szolgáltatásokat. Például a NIS és más egyéb távoli eljáráshíváson alapú szolgáltatások egészen addig nem képesek elindulni, amíg az rpcbind (portmapper) szolgáltatást el nem indítjuk. Az ilyen jellegű gondok feloldására az indítószkriptek elején levő megjegyzésekben található egy kevés metainformáció a szkript működéséhez szükséges elemekre (függőségeire) vonatkozóan. A rendszer indítása közben az rcorder(8) nevű program képes a megjegyzések közt ezeket az információkat feldolgozni és ebből megállapítani, hogy a függőségi viszonyok betartásával milyen sorrendben kell elindítani a rendszer által felkínált szolgáltatásokat.
Ehhez a következő kulcsszavakat kell megadni az egyes indító szkriptek elején (az rc.subr(8) így tudja “engedélyezni” az indító szkriptet):
PROVIDE: segítségével megmondjuk, hogy ez az állomány milyen szolgáltatásokat nyújt.
A következő kulcsszavak az egyes indítóállományok elején szerepelhetnek. Nem kell feltétlenül használnunk ezeket, de velük az rcorder(8) munkáját segíthetjük:
REQUIRE: felsoroljuk azokat a szolgáltatásokat, amelyek a futásához kellenek. Az állomány tehát az itt megadott szolgáltatások után fog lefutni.
BEFORE: felsoroljuk azokat a szolgáltatásokat, amelyek előtt futtatni kell ezt az állományt.
Az indító szkriptekben a kulcsszavak ügyes megválasztásával a rendszergazda nagyon finoman képes az indításkor végrehajtódó szkriptek sorrendjét szabályozni és a többi UNIX® alapú operációs rendszerből ismert “futtatási szintek” használata nélkül vezérelni a rendszerben megjelenő szolgáltatásokat.
Az rc.d rendszerről bővebben az rc(8) és rc.subr(8) man oldalakon olvashatunk. Ha szeretnénk saját rc.d szkripteket írni vagy javítani a már meglévőkön, akkor ez a cikk (angolul) segítségünkre lehet.
Ha kérdése van a FreeBSD-vel kapcsolatban, a következő
		  címre írhat (angolul): <freebsd-questions@FreeBSD.org>.
Ha ezzel a dokumentummal kapcsolatban van kérdése,
		  kérjük erre a címre írjon: <gabor@FreeBSD.org>.