Probleme mit dem Init-Script von Gogs

Vor ein paar Tagen schrieb ich in einem Artikel wie man Gogs (einen Git-Service) auf einem Ubuntu-Server aufsetzt. Das aktuelle Release v0.6.15 wird dabei mit einem Init-Script für Debian mitgeliefert. Dieses Skript funktioniert allerdings nicht wie gewünscht.

Die Änderung welche das Init-Script wieder repariert

Die Änderung welche das Init-Script wieder repariert

Wenn man das Skript mittels:

service gogs start

ausführt wird Gogs angeblich gestartet. Allerdings zeigt:

service gogs status

das dies nicht der Fall ist. Das Problem am Init-Skript ist die nicht gesetzte USER-Variable. Mit der aktuellen Version des Skriptes funktioniert der Start von Gogs über service wieder ohne Probleme.

Templates für Init-Skripte

Wenn man ein Init-Skript schreibt, kann man natürlich jedesmal von Neuem beginnen. Einfacher ist es wenn man sich eines Templates bedient. Felix H. Dahlke stellt ein solches bereit. Bei diesem Template muss nur noch das Verzeichnis der Anwendung, der Nutzername und das Kommando selbst definiert werden. Der Rest wird vom Template bereitgestellt. Nachdem man sich auf Basis des Templates ein passendes Skript unter /etc/init.d/ definiert hat, muss das ganze nur noch mit den passenden Attributen versehen werden und, auf Wunsch zu den defaults hinzugefügt werden:

chmod a+x /etc/init.d/newservice
update-rc.d newservice defaults

Lizenziert ist das Template unter der MIT-Lizenz und damit freie Software. Denn passenden Template-Quellcode findet man auf GitHub.