# Arbeiten mit systemd

# Dienste verwalten

#### Starten eines Dienstes

```bash
sudo systemctl start <dienstname>
```

Startet den angegebenen Dienst.

#### Stoppen eines Dienstes

```bash
sudo systemctl stop <dienstname>
```

Stoppt den angegebenen Dienst.

#### Neustarten eines Dienstes

```bash
sudo systemctl restart <dienstname>
```

Startet den angegebenen Dienst neu. Dies ist nützlich, um Konfigurationsänderungen zu übernehmen.

#### Neuladen der Dienstkonfiguration

```bash
sudo systemctl reload <dienstname>
```

Lädt die Konfiguration des angegebenen Dienstes neu, ohne ihn vollständig neu zu starten.

#### Überprüfen des Status eines Dienstes

```bash
sudo systemctl status <dienstname>
```

Zeigt den aktuellen Status des angegebenen Dienstes an, einschließlich Informationen darüber, ob er aktiv ist und ob Fehler aufgetreten sind.

#### Aktivieren eines Dienstes beim Systemstart

```bash
sudo systemctl enable <dienstname>
```

Konfiguriert den angegebenen Dienst so, dass er beim Systemstart automatisch gestartet wird.

#### Deaktivieren eines Dienstes beim Systemstart

```bash
sudo systemctl disable <dienstname>
```

Verhindert, dass der angegebene Dienst beim Systemstart automatisch gestartet wird.

#### Überprüfen, ob ein Dienst aktiviert ist

```bash
sudo systemctl is-enabled <dienstname>
```

Überprüft, ob der angegebene Dienst so konfiguriert ist, dass er beim Systemstart automatisch gestartet wird.

#### Anzeigen aller aktiven Dienste

```bash
sudo systemctl list-units --type=service --state=active
```

Listet alle derzeit aktiven Dienste auf.

#### Anzeigen aller fehlgeschlagenen Dienste

```bash
sudo systemctl list-units --type=service --state=failed
```

Listet alle Dienste auf, die fehlgeschlagen sind.

#### Maskieren eines Dienstes

```bash
sudo systemctl mask <dienstname>
```

Verhindert, dass der angegebene Dienst manuell oder automatisch gestartet wird, indem er auf `/dev/null` verlinkt wird.

#### Demaskieren eines Dienstes

```bash
sudo systemctl unmask <dienstname>
```

Hebt die Maskierung des angegebenen Dienstes auf, sodass er wieder gestartet werden kann.

#### Neustarten des Systems

```bash
sudo systemctl reboot
```

Startet das System neu.

#### Herunterfahren des Systems

```bash
sudo systemctl poweroff
```

Fährt das System herunter.

# Bearbeiten von Unit-Dateien

#### Anzeigen einer Unit-Datei

```bash
sudo systemctl cat <service>.service
```

Zeigt den Inhalt der Unit-Datei für den angegebenen Service an.

#### Erstellen einer neuen Unit-Datei

```bash
sudo systemctl edit --force --full <service>.service
```

Erstellt eine neue Unit-Datei für den angegebenen Service oder bearbeitet eine vorhandene vollständig.

#### Bearbeiten einer vorhandenen Unit-Datei

```bash
sudo systemctl edit --full <service>.service
```

Bearbeitet die vorhandene Unit-Datei für den angegebenen Service vollständig.

#### Überschreiben einer Unit-Datei

```bash
sudo systemctl edit <service>.service
```

Erstellt eine Override-Datei für den angegebenen Service, um bestimmte Einstellungen zu ändern oder hinzuzufügen.

#### Anzeigen der Überschreibungen einer Unit-Datei

```bash
sudo systemctl status <service>.service
```

Zeigt den Status des angegebenen Services an, einschließlich aller Überschreibungen.

#### Rückgängigmachen von Überschreibungen

```bash
sudo rm /etc/systemd/system/<service>.service.d/override.conf
```

Entfernt die Override-Datei für den angegebenen Service.

#### Neu Laden der Systemd-Konfiguration

```bash
sudo systemctl daemon-reload
```

Lädt die Systemd-Konfiguration neu, um Änderungen an Unit-Dateien zu übernehmen.

#### Neustarten eines Services

```bash
sudo systemctl restart <service>.service
```

Startet den angegebenen Service neu, um Änderungen wirksam werden zu lassen.