after.local funktioniert nicht

Hinweis: In dem Thema after.local funktioniert nicht gibt es 12 Antworten auf 2 Seiten. Der letzte Beitrag () befindet sich auf der letzten Seite.
  • Hallo openSuSE-Profis :smilie_pc_011:


    ich nutze ein openSuSE 13.2 x64bit und habe ein eigenes init-Script geschrieben, welches erst nach allen anderen Start-Scripts starten soll. Wenn ich das richtig verstanden habe, ist dafür die after.local gedacht. Wenn ich dort den Startbefehl eintrage und den Server neustarte, wird das Script trotzdem irgendwo mittendrin gestartet was nicht sein darf. Kurz zum Hintergrund:
    Das Script wird mit einem Windows-Domänenbenutzer ausgeführt und wenn das Script vor dem Winbind startet, failed es weil sich der Domänen-Benutzer nicht einloggen kann.
    Ich habe auch schon über das init-Script versucht das zu konfigurieren, leider hat das nichts gebracht, hier ein kleiner Auszug:



    Auszug der after.local:




    Habt ihr eine Idee, wieso die after.local nicht funktioniert oder habt ihr sonst noch eine Idee was ich tun könnte, damit mein Script als letztes im Autostart ausgeführt wird?



    Grüße
    Karl der Heinz

  • Das kann kein Mensch vernünftig lesen.
    Mache es lesbar.
    Da fehlen alle Newlines.

    Für den Inhalt des Beitrages 86581 haftet ausdrücklich der jeweilige Autor: LinuPia

  • Dass init- Scripte noch funktionieren, liegt daran, dass systemd ein Kompatiblitätslayer mitbringt.
    Aber init ist längst tot.
    Das macht jetzt systemd


    Und das startet alle Prozesse möglichst schnell und parallelisiert deshalb den Startvorgang ziemlich extrem.


    Übersicht über die Basics von systemd
    Du willst dir ein teamcity.service-file basteln,
    und es dann mit systemctl enable teamcity.service bei jedem Systemstart korrekt getimed starten.

    Für den Inhalt des Beitrages 86583 haftet ausdrücklich der jeweilige Autor: LinuPia

  • Hi,


    vielen Dank für deine Antwort. Bin leider erst heute dazu gekommen dort weiter zu machen :)


    Habe ein Service-File erstellt, nur leider bekomme ich einen Fehler, dass ein unzulässiges Argument verwende. Er sagt mir aber auch nicht welches. Folgender Fehler:


    Code
    Cannot add dependency global.conf to multi-user.target, ignoring: Invalid argument
    Cannot add dependency global.conf to multi-user.target, ignoring: Invalid argument
    Configuration file /etc/systemd/system/teamcity.service is marked executable. Please remove executable permission bits. Proceeding anyway.


    Hier ist mein Systemd-File:


  • Wenn er dich schon so brav bittet Please remove executable permission bits., warum machst du das nicht einfach?

    Für den Inhalt des Beitrages 86873 haftet ausdrücklich der jeweilige Autor: LinuPia

  • Hi,


    sry, hab ich wohl überlesen, ist gemacht :sleeping:


    Der Dienst starten leider immer noch nicht. Jetzt gibt es nichtmal einen Fehler. Meinst du/ihr das Service-File sieht okay aus?



    Grüße
    Karl der Heinz

  • Hab mal grad geguckt. Das ist ja eine Tomcat Anwendung.
    Bist du dir da sicher, dass du irgendein Shellscript starten willst?
    Da sollte doch längst ein Webserver laufen, der automatisch gestartet wird...


    Das Servicefile sieht sooo verkehrt nicht aus.
    Wie hast du festgestellt, dass der Dienst nicht läuft?


    Mich würde auch interessieren, was du mit diesem TeamCity zu tun gedenkst.

    Für den Inhalt des Beitrages 86938 haftet ausdrücklich der jeweilige Autor: LinuPia

  • Heyho,


    bei Teamcity wird der Tomcat bereits mitgeliefert. Wenn ich das Shellscript manuell ausführe funktioniert der Start auch:


    Code
    # ./teamcity-server.sh start
    Using CATALINA_BASE:   /opt/teamcity/server
    Using CATALINA_HOME:   /opt/teamcity/server
    Using CATALINA_TMPDIR: /opt/teamcity/server/temp
    Using JRE_HOME:        /opt/java8_x64/jdk1.8.0_60/
    Using CLASSPATH:       /opt/teamcity/server/bin/bootstrap.jar:/opt/teamcity/server/bin/tomcat-juli.jar
    Using CATALINA_PID:    ../logs/teamcity.pid
    Tomcat started.


    Ziel ist es, dass der Teamcity-Service beim booten des Servers mit startet. Bevor der Teamcity Service gestartet werden kann, muss der winbind-Service gestartet sein, da der Teamcity-Service unter einem Windows-Domänen-Benutzer laufen soll. Solange der Winbind-Dienst nicht läuft funktioniert die Anmeldung mit Windows-Domänenbenutzern leider nicht.



    Grüße
    Karl der Heinz!

  • Lösche mal in der Unit-section das After= ..... winbind.service (also nur das winbind.service).
    Dort sollten Targets stehen.


    Der Winbind selbst hat doch schon die Abhängigkeit zum Netzwerk.
    Sollte also ohne laufen.


    Dann solltest du dich entscheiden.
    ENTWEDER ein solches Unitfile
    ODER das Initfile.
    Beides macht nicht wirklich Sinn.

    Für den Inhalt des Beitrages 86964 haftet ausdrücklich der jeweilige Autor: LinuPia