• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Script nach Boot starten...

Wie kann ich exakt nach der bootforgang ein script laufen lassen ?

Bisher konnte mir niemand (!!!!) eine gescheite step-by-step-anleitung geben. :cry:
Kommt mir jetzt bitte nicht mit Aussagen wie "einfach in boot.d einfügen", denn das "einfach" ist für einen Linux-Neuling gar nicht so "einfach" :wink: .
Ich kann ja schlecht einfach in irgendeine Datei irgendwo hin meine Befehle schreiben, da stehen ja 100 Zeilen irgendwelcher Programmcode drumrum, ich glaube nicht dass ich das "irgendwo" einfügen kann.

Also, nun mal zu meinem "Problem". Ich bin mir sicher, das ist 1 Minute Aufwand und dann ists behoben.... aber ich weiß nicht wie :wink: :

ich habe ein LCD angeschlossen und steuere dieses per LCDproc. Läuft und funzt wunderbar. Jetzt hätte ich halt gerne, dass er mir den LCD-Daemon (LCDproc-server) automatisch während dem booten startet (bzw. spätestens wenn der Bootvorgang beendet ist - aber VOR einer lokalen Benutzeranmeldung).
Allerdings nicht nur den LCD-daemon, sondern auch 2 LCDproc-clients.
Diese 3 Dinger rufe ich momentan händisch auf der konsole auf (System wird NUR im konsolenbetrieb gefahren). Das finde ich aber ziemlich umständlich, weil die clients recht lange befehle haben ;-) und mich das auf dauer nervt, das nach jedem reboot neu eintippseln zu müssen.....

Sind also ganz normale Befehle a la "
cd /usr/local/lcdproc/clients
./lcdproc -d -s 127.0.0.1
"

So, wie mache ich es nun, dass er mir solche Aufrufe NACH bzw. WÄHREND (denke er muss ja erstmal treiber für die parallele Schnittstelle laden...) dem boot halt einfach ausführt ? .... kann doch net soo schwer sein ;-) .

Hey ihr Linux-user, vergesst nicht dass es einem Anfänger nichts bringt wenn man schreibt "leg einfach ein bootscript an".....denn dann frage ich mit tagelang "...wie???".

Also, wer ist so nett und gibt mir eine kleine Hilfestellung, die ich auch verstehe ? ;-) vielen vielen Dank schonmal....ich bin grad echt leicht genervt von allen Linux-Foren, weil ich andauernd die Worte "Du machst einfach....Du erstellst einfach....Du kopierst einfach....." lesen muss....sorry....
beim nächsten Post bin ich dann bestimmt wieder zufriedener :wink:
 
Hi,

aus deinen Zeilen ein Script basteln.
dazu öffnest du einen Editor deiner Wahl und schreibst die Befehle da rein:
Code:
#!/bin/bash
cd /usr/local/lcdproc/clients 
./lcdproc -d -s 127.0.0.1

Dieses speicherst du mit einem sinnvollen Namen in /etc/init.d ab.
Dann verlinkst du das Script in die Run-Level, in denen es benötigt wird.
Meist ist es rc3 und rc5
Code:
ln /etc/init.d/deinscript /etc/init.d/rc5.d/S99deinscript
Das "S" steht für Start.
Das Beispiel ist eine Verknüpfung ins Run-Level 5.
 
admine schrieb:
Code:
ln /etc/init.d/deinscript /etc/init.d/rc5.d/S99deinscript
Das "S" steht für Start.
Das Beispiel ist eine Verknüpfung ins Run-Level 5.

Noch ne kleine ergänzung von mir: Die "99" gibt an, in welcher Reihenfolge die verschiedenen Scripte in diesem Runlevel gestartet werden (Also erst das mit der 1, dann das mit der 2....).
99 ist aber in Ordnung, da das so viel wie "gaaaanz am Schluss" bedeutet.
Du solltest darauf achten, dass du das Script in dem Runlevel startest, in dem auch deine benötigten Sachen geladen werden.
 
Thx Xero,
die Zahl zu erklären, hatte ich vergessen ... :roll:

Obwohl ...optimal ist das ganze nicht.
Eigentlich sollte man das alles etwas "ordentlich" machen.
oc2pus hat dazu schon einige Beiträge hier im Forum gebracht.
Zum Beispiel:
http://www.linux-club.de/viewtopic.php?t=11618
 
Hey, ihr seid ja echt spitze !! :D
Jetzt hab ich das endlich mal kappiert !!

so, ich hab es genauso gemacht wie beschrieben, er scheint auch mein Skript aufrufen, denn in den Bootmeldungen wird kurz vor der Anmeldung

"/etc/init.d/rc3.d/S99lcdddd: LCDd: command not found"

ausgegeben.

Mein Skript sieht folgendermassen aus :

Code:
#!/bin/bash
LCDd -c /etc/LCDd.conf
sleep 1
cd /usr/local[.....]
screen -d -m ./netlcdclient -i [.....]
sleep 1
cd /usr/local/pf[....]
screen -d -m ./lcdproc [....]

Die "[....]" sind natürlich so nicht im Skript, ich war grad nur zu faul die langen Verzeichnisnamen und Parameter hinzschreiben :wink: .

(das mit dem sleep geht doch in Ordnung so, oder ? )

Das LCDd ist der "Server" für lcdproc. (lcdproc connected quasi zu diesem, damit dieser dann die Ausgaben von lcdproc ans LC-Display weiterleitet).

Der LCDd-Aufruf funktioniert von der Konsole (als root eingeloggt) wunderbar, wieso findet er diesen "command" beim Bootvorgang denn nicht ?

Muss ich da sowas machen, wie den unter irgendnem Benutzer laufen zu lassen ?

Ist doch bestimmt eine Kleinigkeit für Euch !!
 
Mach mal bei dem Aufruf eine absolute Pfadangabe zum LCDd. Die Pfade, wie Du sie in einer Shell hast, sind zu diesem Zeitpunkt noch nicht bekannt. Daher also absolute Angaben.
 
... boah ... :)

Ich kann es kaum glauben !! Das Teil läuft !!

Du hattest recht, nachdem ich auch vor dem LCDd einen Pfadwechsel eingefügt hatte, und den Rest angepasst,
funktioniert nun alles prima !!

Vielen Dank !!
 
Oben