/media/sda-magnetic/david/david2/david2/Dokumente/informatik/linux/learn-linux/systemd.txt


1.) klassisches init (SysVinit)
2.) systemd

a) Dienst startet - Prozess-ID = 1
b) Hat den Namen init

Das System dahinter nennt sich SysVinit

Runlevel:
1.) 0           kontrolliertes Beenden aller Prozesse, anschließendes Abschalten
2.) S           Single-User für Root, ohne Netzwerk, Zugriff nur über Konsole 
3.) 1           Single-User ohne Netzwerk, Zugriff über Konsole
4.) 2 bis 5     Mehrbenutzerbetrieb; Zugriff, Netzwerkzugriff und GUI distributionsspezifisch
5.) 6           Kontrollierter Neustart

/etc/inittab
/etc/init.d

/etc/rc0.d
/etc/rc1.d
/etc/rc2.d
/etc/rc3.d
/etc/rc4.d
/etc/rc5.d
/etc/rc6.d
/etc/rcS.d

/etc/inittab 

id:Runlevel(s):Aktion:Kommando 

id=initdefault

Aktion:
1.) initdefault         Standard-Runlevel
2.) respawn             Wurde der angegebene Prozess beendet, startet das System das Programm neu
3.) wait                Init wartet beim Wechsel des Runlevels das Ende des angegebenen Prozesses Abschalten
4.) ctrlaltdel          Aktion für die Tastenkombination [Strg]+[Alt]+[Entf]
5.) boot                Aktion nur beim Start, nicht beim Wechsel des Runlevels ausführen
6.) once                Aktion einmalig beim Erreichen des angegebenen Runlevels ausführen
7.) powerwait           Bei vorhandener USV Prozess bei Stromausfall starten.
8.) powerfail           Bei vorhandener USV Prozessende des aufgerufenen Programms nicht abwarten.
9.) powerfailnow        Bei vorhandener USV System herunterfahren, sobald die USV leere Batterien meldet.
10.) powerokwait        Bei vorhandener USV Ende des Prozesses des aufgerufenen Programms abwarten, sobald Netzverbindung wiederhergestellt ist.

who -r: Laufendes Runlevel ermitteln 

0           init 0, shutdown -h now, halt
1 bis 5     init n
6           init 6, shutdown -r now, reboot

systemd: Startet Dienste parallel

Die Runlevel existieren in Form von Zielen ("Targets") weiter. Meist geht aus den Namen der Dateien mit der Endung .target


0           poweroff.target         Rechner herunterfahren und abschalten
1           rescue.target           Single-User-Modus ohne Netzwerk
2           multi-user.target       Mehrbenutzermodus
3 bis 5     –                       –
6           reboot.target           Neustart des Rechners

.automount      konfiguriert einen Einhängepunkt zum automatischen Einhängen eines Datenträgers
.device         verwaltet Geräte analog zu Udev
.mount          definiert einen Einhängepunkt, durch den Fstab-Generator erzeugt und von Systemd verwaltet
.path           startet weitere Dienste, wenn sich im angegebenen Pfad Objekte geändert haben
.scope          automatisch erzeugte Dateien zum Verwalten von Systemprozessen
.service        Informationen über einen Prozess
.slice          dient dem Verwalten der Ressourcen von Prozessen
.snapshot       erlaubt den Zustand des Systems vor dem Ändern während einer Sitzung wiederherzustellen
.socket         beschreibt einen Netzwerk-, IPC-Socket oder FIFO-Puffer, den Systemd für das Socket-basierte Aktivieren benutzt
.swap           Angaben zur Auslagerungsdatei
.target         fasst mehrere Units zu einem Synchronisationspunkt zusammen (ehemals Runlevel)
.timer          setzt einen Timer für eine zurückgehaltene oder vorgesehene Aktivitä

Eigene Unit-Dateien 

/lib/systemd/
/etc/systemd/system/


[Unit]          Angabe von Beschreibungen und Abhängigkeiten.
[Install]       Anweisung für das Programm sysctl.
[Service]       Startkonfiguration von Diensten.
[Socket]        Socket-basierte Steuerung.
[Mount]         Verwalten der Einhängepunkte1.
[Automount]     Verwaltung eines Automount-Punkts.
[Swap]          Konfiguration des Auslagerungsspeichers.
[Path]          Pfad, den Systemd überwacht.
[Timer]         Zeitgeber, der Cron und At ersetzt oder ergänzt.


[Unit]          Angabe von Beschreibungen und Abhängigkeiten.
Typ=
ExecStart=
Restart=
SuccessExitStatus=

[Install]       Anweisung für das Programm sysctl.
ListenStream=
ListenDatagram=
ListenSequentialPacket=
ListenFIFO=
BindToDevice=
Accept=
SocketUser=
SocketGroup=
MaxConnections=
KeepAlive=

[Service]       Startkonfiguration von Diensten.
...
[Socket]        Socket-basierte Steuerung.
[Mount]         Verwalten der Einhängepunkte1.
[Automount]     Verwaltung eines Automount-Punkts.
[Swap]          Konfiguration des Auslagerungsspeichers.
[Path]          Pfad, den Systemd überwacht.
[Timer]         Zeitgeber, der Cron und At ersetzt oder ergänzt.

systemctl