Ubuntu Natty 11.04 script nach dem booten ausführen

  • Ich bin Debian User, dort bin ich gewohnt, das ich in /etc/rc.local vor dem exit 0 meine eigenen scripte starten kann.
    Sowas wie

    Code
    1. echo "powersave" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

    funktioniert bei Ubuntu nicht.
    Warum, bzw. wie gehts richtig?

    YaVDR Ansible

    Funk Fernbedienung Pollin X10
    IPTV
    MainBoard Asrock 970 extreme3
    System: Host: YaVDR Kernel: 4.15.0-45-generic x86_64
    Card: NVIDIA GT218 [GeForce 210]

  • Warum, bzw. wie gehts richtig?


    /etc/rc.local ist ne Krücke die man eigentlich überhaupt nicht verwenden sollte.


    Bei Debian nutzt man http://de.wikipedia.org/wiki/SysVinit
    "/etc/init.d/skeleton" und "man update-rc.d" sind hier gut für den Anfang.


    Bei Ubuntu http://de.wikipedia.org/wiki/Upstart , wobei man bei Ubuntu auch noch SysVinit Scripte nutzen kann.
    Hier kannst du einsteigen http://wiki.ubuntuusers.de/upstart


    cu

  • Das ubuntu upstart benutzt, ist mir bewußt.
    Auch da sollte aber dennoch rc.local funktionieren.
    IMHO ist das keine Krücke sondern gerade zu prädestiniert um solche Sonderwünsche wie einen Einzeiler wie oben angegeben unterzubringen.
    Mich wunderte halt, das es offenbar nicht geht. Offensichtlich scheint upstart nicht zu garantieren, das rc.local WIRKLICH als letztes läuft. Nicht gerade im Sinne des Erfinders.
    Ich habe mir jetzt so beholfen:

    Code
    1. at now + 2 minutes < /usr/local/bin/afterstart.sh >/dev/null

    in der rc.local
    und meine Zeile aus rc.local in afterstart.sh gepackt

    YaVDR Ansible

    Funk Fernbedienung Pollin X10
    IPTV
    MainBoard Asrock 970 extreme3
    System: Host: YaVDR Kernel: 4.15.0-45-generic x86_64
    Card: NVIDIA GT218 [GeForce 210]

  • keine_ahnung hat doch schon geschrieben, wie es geht.
    bastel dir ein vernünftiges startscript, schiebs nach /etc/init.d, mach es ausführbar und dann einfach update-rc.d script:name defaults
    einfacher geht´s nun wirklich nicht

    VDR 2.2.0, PMS mit PlexVDR, XML-API+VDR Client
    Ubuntu 16.04 64bit
    alles 'headless' auf Intel(R) Core(TM) i5-4440 CPU @ 3.10GHz, 8GB RAM, 5 x 3TB im RAID5 (12TB)
    zzgl. diverse SH4 Sat-Boxen mit NeutrinoMP

  • Sowas sollte mit "start on virtual-filesystems" gehen. Der Event "filesystem" reicht wohl auch. Einen "Alles ist fertig" Event kenn ich jetzt nicht und kann ich mir auch prinzipbedingt schlecht vorstellen

  • Einen "Alles ist fertig" Event kenn ich jetzt nicht und kann ich mir auch prinzipbedingt schlecht vorstellen


    Zumndest Debian sysVinit kennt "# Required-Start: $all". Evtl. hat Upstart ähnliche Metabdigungen? Wobei es ja bei Upstart aber in diesem Sinne kein "alles Fertig"gibt.
    Auf "rmnologin" (dann wird der Loginpromt angezeigt) warten wäre evtl. sinnig.


    Wobei mir jetzt nicht klar ist warum die CPU Frequenz unbedingt als letztes gesetzt werden muss?


    cu

  • einige jobs reagieren auf startende Netzwerk interfaces, andere auf andere hardware events. "start on stopped udevtrigger" wäre da wohl am dichtesten dran (nach vollzogener Hardwareinitialisierung) aber das heisst eigentlich nicht das da nichts mehr am Starten ist. Auf lightdm oder ähnliches zu Warten klingt auch nicht sinnig. Irgendwie ist das auch das Pferd von hinten aufzuzäumen. Was ist das wirkliche Kriterium/Event ? Da kann man es einhängen - den Scaling Governor so mit der Brechstange reinzuprügeln - da gibts doch sicher ein Config-File irgendwo ?