Ich möchte einen einfachen Dienst definieren, der beim Booten auf Ubuntu Server 16.10 gestartet werden soll. Also habe ich eine erstellt/etc/init.d/mydaemon
Ich habe irgendwie zwischen Upstart und Systemd durcheinander gebracht: Zuerst dachte ich, ich müsste einen Upstart-Service einrichten. Nachdem ich meine Datei in eine Upstart-Syntax konvertiert hatte, lief ich update-rc.d mydaemon defaults
.
Ich habe meinen Fehler herausgefunden und ausgeführt update-rc.d mydaemon remove
, in die Systemd-Syntax konvertiert und ausgeführt systemctl enable mydaemon
, aber den Fehler erhalten:
mydaemon.service is not a native service, redirecting to systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable mydaemon
update-rc.d: error: mydaemonDefault-Start contains no runlevels, aborting.
Das Problem war, dass der Speicherort der Datei auf dem Ubuntu-Server, auf dem sie erwartet wird
/etc/systemd/system
,/etc/init.d/
für ältere Dateien bestimmt ist.quelle
.service
Datei, nicht auf ein Bash-Init-Skript.Nur um die Antwort von @CharlesB zu ergänzen - als ich in diesen Zustand kam, konnte ich die Datei einfach von
/etc/init.d/
nach verschieben/etc/systemd/system/
und den Befehl erneut ausführen, und es funktionierte ordnungsgemäß:quelle
Ich hatte den gleichen Fehler und habe ihn behoben, indem ich die Standardstartinformationen wie folgt eingegeben habe:
Wechsel von:
zu:
: wq
root @ kali: /etc/init.d# systemctl aktiviert den Greenbone-Sicherheitsassistenten
Synchronisieren des Status von greenbone-security-Assistant.service mit dem SysV-Dienstskript mit / lib / systemd / systemd-sysv-install.
Ausführen: / lib / systemd / systemd-sysv-install aktiviert den Greenbone-Sicherheitsassistenten
quelle