Managing SysV init Systems

πŸ“š Hoofdstuk 6.3: Beheer van SysV init Systemen

──────────────────────────────
🧠 Wat is SysV init?
──────────────────────────────
Traditioneel init-systeem vΓ³Γ³r systemd.
Gebruikt numerieke runlevels i.p.v. targets.
Services worden beheerd via scripts in /etc/init.d/

──────────────────────────────
πŸ“ˆ SysV Runlevels
──────────────────────────────
πŸ”΄ Red Hat-gebaseerde systemen:
Runlevel | Beschrijving
─────────|────────────────────────────────────────
0 | Uitschakelen (shutdown)
1 / s / S| Single-user (alleen root, geen netwerk)
2 | Multi-user zonder netwerkservices
3 | Multi-user met netwerk (CLI)
4 | Niet-standaard, voor eigen gebruik
5 | Multi-user met GUI
6 | Herstart (reboot)

πŸ”΅ Debian-gebaseerde systemen:
Runlevel | Beschrijving
─────────|────────────────────────────────────────
0 | Uitschakelen
1 | Single-user mode
2 | Multi-user met GUI
6 | Herstart

πŸ“Œ Huidig runlevel opvragen:
runlevel

πŸ“Œ Configuratiebestand:
β€’ /etc/inittab

──────────────────────────────
πŸ—ƒ Scripts en Directorystructuur
──────────────────────────────
β€’ Startscripts: /etc/init.d/ (of /etc/rc.d/)
β€’ Per runlevel: /etc/rc.d/rc[0–6].d/
β€’ Bestanden in rcX.d/ beginnen met:
- S (Start) β†’ service starten
- K (Kill) β†’ service stoppen

πŸ“Œ Aangepaste startup:
Gebruik /etc/rc.local om handmatig commando’s toe te voegen bij boot.

──────────────────────────────
πŸ›  Basiscommando’s voor SysV init
──────────────────────────────
Wijzig runlevel:
β€’ init 3
β€’ telinit 5

Servicebeheer:
β€’ service ssh start β†’ Start SSH
β€’ service mysql stop β†’ Stop MySQL
β€’ service crond restart β†’ Herstart cron
β€’ service httpd status β†’ Status van Apache

──────────────────────────────
🧩 Runlevels beheren: Red Hat (chkconfig)
──────────────────────────────
Service controleren:
β€’ chkconfig httpd

In- of uitschakelen:
β€’ chkconfig httpd on
β€’ chkconfig httpd off

Specifieke runlevels:
β€’ chkconfig --levels 3 5 httpd on

Service volledig verwijderen:
β€’ chkconfig --del httpd

──────────────────────────────
🧩 Runlevels beheren: Debian (update-rc.d)
──────────────────────────────
Service inschakelen op standaard runlevels:
β€’ update-rc.d apache2 defaults

Service verwijderen:
β€’ update-rc.d apache2 remove

Volgorde beheren:
β€’ update-rc.d -f apache2 start 40 2 3 4 5 . stop 80 0 1 6 .

βœ” Uitleg:
Start apache2 op runlevels 2–5 met prioriteit 40.
Stop apache2 op runlevels 0, 1 en 6 met prioriteit 80.