Einfaches Script bei Systemstart

Hinweis: In dem Thema Einfaches Script bei Systemstart gibt es 13 Antworten auf 2 Seiten. Der letzte Beitrag () befindet sich auf der letzten Seite.
  • Hallo,
    mich nervte bei meinem T510 Notebook das unter OpenSuse LEAP 15.0 die Wlan-LED bei Aktivität im WLAN immer blinkte.
    Das ist direkt unter dem Display nervend.


    Folgendes Script brachte die Lösung :


    Code
    echo *** STOP BLINK WLAN LED ***
    echo none >/sys/class/leds/phy0-led/trigger
    echo 1 >/sys/class/leds/phy0-led/brightness
    echo *** DONE ***


    So bleibt die LED dann dauernd an. (durch echo 0 ... wäre sie dann dauernd aus).


    Das Script steht in der sudoers und wird bei KDE-Start ausgeführt.
    Soweit, so gut.
    Früher hätte ich das einfach in die rc5.d geschrieben, aber der Mechanismus ist ja scheinbar nicht mehr funktional.


    Wie würde ich das geschickterweise jetzt machen ? (ich will keinen Service starten sondern nur das billige Script einmal ausführe).
    Es gab ja auch mal die rc.local aber das geht ja wohl auch nicht mehr.


    Ulli

    Für den Inhalt des Beitrages 121218 haftet ausdrücklich der jeweilige Autor: beeblebrox

  • Jau,
    after.local und nicht rc.local.


    Aber das scheint genau wie die init.d-Scripte nicht mehr zu gehen.
    Habe obiges Script einfach after.local genannt und nach /etc/init.d kopiert (natürlich ausführbar und als root:root)
    Geht aber nicht.


    Ulli

    Für den Inhalt des Beitrages 121252 haftet ausdrücklich der jeweilige Autor: beeblebrox

  • Unter SLES12 verwenden wir hierfür diese Datei:

    Code
    /etc/init.d/boot.local


    Das funktioniert auch unter SLES15 Beta (wobei hier diese Datei erzeugt werden muss, weil sie per Default fehlt), daher müsste es auch mit LEAP 15 gehen.

    Code
    touch /etc/init.d/boot.local
    chmod 744 /etc/init.d/boot.local


    Danach noch folgendes in die erste Zeile:

    Code
    #! /bin/sh


    Anschliessend Dein Script.


    Verantwortlich, dass diese Scripts ausgeführt werden ist folgender Dienst:

    Code
    # systemctl status rc-local.service
    * rc-local.service - /etc/init.d/boot.local Compatibility
    Loaded: loaded (/usr/lib/systemd/system/rc-local.service; static; vendor preset: disabled)
    Active: active (exited) since Tue 2018-06-05 15:15:37 CEST; 17h ago Tasks: 0 (limit: 512)
    Jun 05 15:15:37 xxxxxx systemd[1]: Starting /etc/init.d/boot.local Compatibility...
    Jun 05 15:15:37 xxxxxx systemd[1]: Started /etc/init.d/boot.local Compatibility.


    Möglicherweise muss dieser noch aktiviert werden - bei SLES12 und 15 Beta ist er Standard enabled.

    Code
    systemctl enable rc-local.service


    Fehler in der boot.local Datei lassen diesen Dienst scheitern - kann man mit status abfragen nach dem Systemstart.

    Einmal editiert, zuletzt von wn48z ()

    Für den Inhalt des Beitrages 121255 haftet ausdrücklich der jeweilige Autor: wn48z

  • Das haut so wie du es beschrieben hast nicht hin.
    Ich erhalte beim Startversuch Folgendes :


    Ulli

    Für den Inhalt des Beitrages 121257 haftet ausdrücklich der jeweilige Autor: beeblebrox

  • Ich habe es eben kurz auf SLES15 Beta geprüft - enable gibt da dieselbe Meldung aus, von daher lässt sich der Service vermutlich gar nicht "enablen" - bzw, man muss es bei diesem auch gar nicht erst tun.


    Mach einfach mal die boot.local Datei wie beschrieben und schaue ob es nach dem Reboot so tut wie Du willst.


    Welche Ausgabe hast Du mit:

    Code
    systemctl status rc-local.service


    Explizit starten/ausführen würde man sowieso mit start und nicht mit enable:

    Code
    systemctl start rc-local.service

    Für den Inhalt des Beitrages 121258 haftet ausdrücklich der jeweilige Autor: wn48z

  • Korrektur :-)


    Trotz der vermeintlichen Fehlermeldung : Es funktioniert so, danke.


    Werde mich trotzdem mal in systemd einlesen.


    thx
    Ulli

    Für den Inhalt des Beitrages 121259 haftet ausdrücklich der jeweilige Autor: beeblebrox