Prozesse Eltern und Kinder: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 11: Zeile 11:
 
{{#drawio:fork-exex}}
 
{{#drawio:fork-exex}}
  
 +
* Dadurch entsteht eine Baumstruktur ähnlich zu den Verzeichnissen
 +
* Anzeigen mit '''pstree'''
  
 +
systemd-+-ModemManager---2*[{ModemManager}]
 +
        |-NetworkManager---2*[{NetworkManager}]
 +
        |-accounts-daemon---2*[{accounts-daemon}]
 +
        |-acpid
 +
        |-avahi-daemon---avahi-daemon
 +
        |-bluetoothd
 +
        |-colord---2*[{colord}]
 +
        |-cron
 +
        |-cups-browsed---2*[{cups-browsed}]
 +
        |-cupsd
  
  
−
'''Rechte auf Objekte UID GID'''
+
= Rechte auf Objekte UID GID =
−
Ob ein Prozess auf eine Datei zugreifen kann, entscheidet der Kernel anhand der
+
* Ob ein Prozess auf eine Datei zugreifen kann, entscheidet der Kernel anhand der Zugriffssrechte, die auf der Datei gesetzt sind.
−
Zugriffssrechte, die auf der Datei gesetzt sind. Er checkt anhand der UID und GID
+
* Er checkt anhand der UID und GID des Prozesses, ob es erlaubt ist. Mit dieser Technik wird letztendlich geprüft, was ein User darf, und was nicht.
−
des Prozesses, ob es erlaubt ist. Mit dieser Technik wird letztendlich geprüft, was
 
−
ein User darf, und was nicht.
 

Version vom 23. März 2023, 23:00 Uhr

  • Jeder Prozess kann weitere Prozesse erzeugen.
  • Die erzeugten Prozesse bezeichnet man als Kindprozesse.
  • Jeder Kindprozess weiß anhand der PPID, woher er stammt.
  • Alle Prozesse sind von einem anderen Prozess gestartet worden, mit Ausnahme des Pseudoprozesses.
  • Dieser hat die Prozessnummer 0. Er hat die Aufgabe, den Init Prozess zustarten.
  • In neuen Linux Distributionen ist dies systemd.
  • Es gibt zwei Arten wie ein Prozess gestartet werden kann:
  1. Fork und Exec: Prozessumgebung wird dupliziert, der neue Prozess bekommt eine eigene neue PID
  2. Exec: Alter Prozess wird durch neuen Prozess überladen (geht mit dem shell-builtin exec)
  • Dadurch entsteht eine Baumstruktur ähnlich zu den Verzeichnissen
  • Anzeigen mit pstree
systemd-+-ModemManager---2*[{ModemManager}]
        |-NetworkManager---2*[{NetworkManager}]
        |-accounts-daemon---2*[{accounts-daemon}]
        |-acpid
        |-avahi-daemon---avahi-daemon
        |-bluetoothd
        |-colord---2*[{colord}]
        |-cron
        |-cups-browsed---2*[{cups-browsed}]
        |-cupsd


Rechte auf Objekte UID GID

  • Ob ein Prozess auf eine Datei zugreifen kann, entscheidet der Kernel anhand der Zugriffssrechte, die auf der Datei gesetzt sind.
  • Er checkt anhand der UID und GID des Prozesses, ob es erlaubt ist. Mit dieser Technik wird letztendlich geprüft, was ein User darf, und was nicht.