Debian- und Ubuntu-Dienste installieren, ohne sie zu starten

Jede Woche erscheint in unserem Newsletter ein neuer ADMIN-Tipp. Eine Sammlung aller Tipps finden Sie im Archiv der ADMIN-Tipps.

Typischerweise starten Debian und Ubuntu neu installierte Services sofort. Manchmal führt das aber zu Problemen. Wir verraten, wie man den Start bei der Installation verhindert.

Wahrscheinlich war es gut gemeint: Debian und damit auch dessen Ableger Ubuntu startet einen neuen Dienst gleich, wenn das entsprechende Paket installiert wird. Das führt aber manchmal zu Problemen, etwa wenn auf dem gleichen Port schon ein Dienst läuft, den man aber lieber noch laufen lassen möchte, weil beispielsweise das neue Paket erst konfiguriert werden muss. Da dessen Start fehlschlägt, bekommt man als Rechnung gleich ein kaputtes Paket präsentiert, etwa so:

Job for openresty.service failed because the control process exited with error code. See "systemctl status openresty.service" and "journalctl -xe" for details.
invoke-rc.d: initscript openresty, action "start" failed.

Leider bietet der Paketmanager auch keine Option, um den Start eines Dienstes nach der Installation zu verhindern. Dazu ist ein kleiner Umweg nötig, der es erfordert, die Datei "/usr/sbin/policy-rc.d" mit dem folgenden Inhalt anzulegen:

#!/bin/sh
exit 101

Der Status-Code 101 bedeutet: Die auszuführende Aktion wird per Policy unterbunden. Machen Sie diese Datei noch mit "sudo chmod +x /usr/sbin/policy-rc.d" ausführbar. Wenn Sie nun Dienste installieren, werden keine Startup-Skripts ausgeführt und sie können den Dienst manuell starten, wenn Ihnen danach ist. Vergessen Sie nur nicht, die Datei wieder zu entfernen, um das alte Verhalten wieder zu aktivieren, wenn Sie das möchten.

18.06.2018
comments powered by Disqus
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2023