Systemctl kurz und knapp: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
 
(6 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
 +
= systemd Crashkurs =
 +
*'''systemd''' ist das Init-System moderner Linux-Distributionen.
 +
*Es startet und überwacht Dienste, verwaltet Abhängigkeiten und ermöglicht paralleles Starten von Prozessen. 
 +
*Alle Meldungen und Statusinformationen werden zentral durch den '''Journal-Dienst''' ('''journald''') erfasst.
 +
*Über '''journalctl''' können Logs angezeigt, gefiltert und in Echtzeit verfolgt werden. 
 +
*systemd ersetzt die klassischen '''/etc/init.d'''-Skripte und bietet eine einheitliche Verwaltung von Diensten, Sockets, Mounts und Systemzuständen (Targets).
 +
 
=Listing aller Services=
 
=Listing aller Services=
 
*systemctl --type=service
 
*systemctl --type=service
 +
 
=Logging eines Dienstes=
 
=Logging eines Dienstes=
 
*journalctl -u ssh
 
*journalctl -u ssh
 +
 
=Logging eines Dienstes fortlaufend=
 
=Logging eines Dienstes fortlaufend=
 
*journalctl -f -u ssh
 
*journalctl -f -u ssh
 +
 +
=Eigenen Service Unit erstellen=
 +
;Service Datei
 +
*vi /etc/systemd/system/simple-http.service
 +
<pre>
 +
[Unit]
 +
Description=My Miscellaneous Service
 +
After=network.target
 +
 +
[Service]
 +
Type=simple
 +
User=xinux
 +
WorkingDirectory=/home/xinux/share
 +
ExecStart=/bin/python3 -m http.server
 +
Restart=on-abort
 +
 +
[Install]
 +
WantedBy=multi-user.target
 +
</pre>
 +
 +
;Aktivieren
 +
*systemctl daemon-reload
 +
*systemctl enable simple-http.service
 +
*systemctl start simple-http.service
 +
 +
;Logs lesen
 +
*journalctl -fu simple-http
 +
 
=Starten eines Service=
 
=Starten eines Service=
*systemctl start dienst
+
*systemctl start simple-http
 +
 
 
=Stoppen eines Service=
 
=Stoppen eines Service=
*systemctl stop dienst
+
*systemctl stop simple-http
 +
 
 
=Restarten eines Service=
 
=Restarten eines Service=
*systemctl restart dienst
+
*systemctl restart simple-http
 +
 
 
=Aktivieren eines Service=
 
=Aktivieren eines Service=
*systemctl enable dienst
+
*systemctl enable simple-http
 +
 
 
=Deaktivieren eines Service=
 
=Deaktivieren eines Service=
*systemctl disable dienst
+
*systemctl disable simple-http
 +
 
 
=Status eines Service=
 
=Status eines Service=
*systemctl status dienst
+
*systemctl status simple-http
 +
 
 +
=Set Default Target=
 +
*systemctl set-default multi-user.target
 +
*systemctl set-default graphical.target
  
=Set Target=
 
*systemctl -f enable multi-user.target
 
*systemctl -f enable graphical.target
 
 
=Get Default Target=
 
=Get Default Target=
 
*systemctl get-default
 
*systemctl get-default
graphical.target
+
 
 
=Changing Target=
 
=Changing Target=
*systemctl isolate multi-user.target
+
*systemctl isolate multi-user.target
 
 
=Set Default Target=
 
*systemctl set-default  multi-user.target
 
  
 
=Show Targets=
 
=Show Targets=
*systemctl list-units --type target  
+
*systemctl list-units --type target
 
<pre>
 
<pre>
 
UNIT                        LOAD  ACTIVE SUB    DESCRIPTION
 
UNIT                        LOAD  ACTIVE SUB    DESCRIPTION
Zeile 40: Zeile 80:
 
...
 
...
 
</pre>
 
</pre>
 +
=Aufgaben=
 +
*[[Systemctl kurz und knapp Aufgaben]]

Aktuelle Version vom 12. November 2025, 16:34 Uhr

systemd Crashkurs

  • systemd ist das Init-System moderner Linux-Distributionen.
  • Es startet und überwacht Dienste, verwaltet Abhängigkeiten und ermöglicht paralleles Starten von Prozessen.
  • Alle Meldungen und Statusinformationen werden zentral durch den Journal-Dienst (journald) erfasst.
  • Über journalctl können Logs angezeigt, gefiltert und in Echtzeit verfolgt werden.
  • systemd ersetzt die klassischen /etc/init.d-Skripte und bietet eine einheitliche Verwaltung von Diensten, Sockets, Mounts und Systemzuständen (Targets).

Listing aller Services

  • systemctl --type=service

Logging eines Dienstes

  • journalctl -u ssh

Logging eines Dienstes fortlaufend

  • journalctl -f -u ssh

Eigenen Service Unit erstellen

Service Datei
  • vi /etc/systemd/system/simple-http.service
[Unit]
Description=My Miscellaneous Service
After=network.target

[Service]
Type=simple
User=xinux
WorkingDirectory=/home/xinux/share
ExecStart=/bin/python3 -m http.server
Restart=on-abort

[Install]
WantedBy=multi-user.target
Aktivieren
  • systemctl daemon-reload
  • systemctl enable simple-http.service
  • systemctl start simple-http.service
Logs lesen
  • journalctl -fu simple-http

Starten eines Service

  • systemctl start simple-http

Stoppen eines Service

  • systemctl stop simple-http

Restarten eines Service

  • systemctl restart simple-http

Aktivieren eines Service

  • systemctl enable simple-http

Deaktivieren eines Service

  • systemctl disable simple-http

Status eines Service

  • systemctl status simple-http

Set Default Target

  • systemctl set-default multi-user.target
  • systemctl set-default graphical.target

Get Default Target

  • systemctl get-default

Changing Target

  • systemctl isolate multi-user.target

Show Targets

  • systemctl list-units --type target
UNIT                        LOAD   ACTIVE SUB    DESCRIPTION
basic.target                loaded active active Basic System
bluetooth.target            loaded active active Bluetooth
ceph-mds.target             loaded active active ceph target allowing to start/stop all ceph-mds@.service instances at once
ceph-mon.target             loaded active active ceph target allowing to start/stop all ceph-mon@.service instances at once
...

Aufgaben