Systemd: Unterschied zwischen den Versionen

Aus xinux.net
Zur Navigation springen Zur Suche springen
Zeile 42: Zeile 42:
 
* <code>systemd.unit=multi-user.target</code> (entspricht Runlevel 3)
 
* <code>systemd.unit=multi-user.target</code> (entspricht Runlevel 3)
 
* <code>systemd.unit=rescue.target</code> (entspricht Runlevel 1)
 
* <code>systemd.unit=rescue.target</code> (entspricht Runlevel 1)
 +
  
 
; Wie setze ich das Standard Target?
 
; Wie setze ich das Standard Target?

Version vom 3. August 2011, 09:06 Uhr

systemd ist ein Ersatz für den System V init Daemon in Linux.

Besonderheiten

Abwärtskompatibilität zu SysVinit-Scripten
systemd ist abwärtskompatibel, jedoch werden Features benutzt, welche nur unter Linux verfügbar sind.
Somit ist er nur auf Systemen mit Linux-Kernel lauffähig.
Parallelisierung
Es werden möglichst viele Prozesse gleichzeitig beim Booten gestartet um das System optimal aus zulasten.
Abhängigkeits-Regeln
Um bei der Parallelisierung dennoch sicher zustellen dass Dienste welche von anderen Diensten benötigt werden rechtzeitig vor diesen zu starten. (z.B. D-Bus)
cgroups
Anstelle von ProzessIDs werden cgroups benutzt. Dies bedeutet, dass Dienste nicht mehr "Abhauen" können. Selbst durch doppeltes Forken.
Ereignis basiertes Starten von Diensten
Ähnlich inetd kann systemd Dienste bei Bedarf starten.
Dies kann z.B. über einen Socket oder Bus geschehen.
Binärscripte
Langfristig sollen Shell-Skripte komplett verschwinden und anstelle eines Init-Skripts jeder Dienst eine Konfigurationsdatei erhalten in welcher definiert wird wie dieser zu starten ist.

Verfügbarkeit (08/2011)

Distribution Status
Fedora Ursprünglich geplant für Fedora 14 ist es nun seit Fedora 15 Standard
openSUSE Wurde für openSUSE 11.4 in erwägung gezogen, jedoch verschoben
Mandriva Wird in Mandriva 2011 systemd übernehmen (Mandriva 2011 RC1 mit systemd verfügbar)
Debian Pakete in unstable
Gentoo Unterstüzt systemd und verfügbar in testing
paldo Übernahm systemd und Standard seit Aprill 2011

systemd wurde als externe Abhängigkeit für GNOME 3.2 vorgeschlagen.

Administration

Wie setze ich das Runlevel beim Booten?
Unter systemd werden Runlevel als Targets bezeichnet. Um das Boot "Target" beim Booten zu setzen hängt man z.B. einen der folgenden Kernel Parameter an.
  • systemd.unit=multi-user.target (entspricht Runlevel 3)
  • systemd.unit=rescue.target (entspricht Runlevel 1)


Wie setze ich das Standard Target?
Für Runlevel 3
# systemctl -f enable multi-user.target
Für Runlevel 5
# systemctl -f enable graphical.target

Links