mikrocontroller.net

Forum: PC-Programmierung autostart Linux


Autor: Hans (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guten abend,

ich nutzt embedded Linux und will das mit dem booten eines meiner
Programme starten. Bis jetzt habe ich es immer aus dem Ordner wo es
leigt mit ./Name gestartet.

Nun scheint es so zu sein das beim booten der datei autostart.sh
ausgeführt wird. Folgender Code bestätigt das, es wird regelmäßig das
Datum in die Datei geschrieben.
cat > autostart.sh
#!/bin/sh
while true ; do
date > /var/autostart.log
sleep 1
done

Nun dachte ich das ich das einfach :
cat > autostart.sh
#!/bin/sh
./name
done
mache.
Aber das klappt nicht ( auch wenn ich zusätzlich den Pfad zu "name"
angebe.

Hoffe ihr habt einige Vorschläge da ich im Moment keine Idee hab was
ich da machen kann.

Gruß

Autor: SiO2 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gibts bi embedded nicht auch die startscripte in init.d ? dann kannste
es dort eintragen

Autor: Bartli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Aber das klappt nicht ( auch wenn ich zusätzlich den Pfad zu "name"
> angebe.

Was schreibst du dann ?

/voller/pfad/zu/name

oder

./voller/pfad/zu/name

? Die zweite variante wäre vermutlich falsch...

Autor: Hans (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
danke für die schnellen Antworten

@Si02 init.d gibt es nicht aber es gibt da andere die ich mal näher
untersuchen werde ob ich es nicht da irgendwie rein bekomme
@Bartli
ich habe beide Varianten verucht, Auch vor
/Pfad/name
auch
cd /pfad
./name


Gruß

Autor: Hans (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
bevor ihr euch weiter Gedanken macht:
das Programm startet jetzt aber im Autostart funktioniert es nicht...
morgen werde ich mal weiter sehen.

MfG

Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hoi


cat > autostart.sh
#!/bin/sh
./name
done

Das kann nicht funktionieren, weil da ein "done" steht, was zu
niemandem gehört (in deinem Original zur while-schleife). Das gibt ne
Fehlermeldung, die du beim Booten vieleicht übersehen hast. Einfach mal
das Skript von Hand ausführen - das tut nicht...

./name bedeutet im aktuellen Verzeichnis. Aus dem Skript autostart.sh,
wäre das dann das dort aktuelle Verzeichnis. Vermutlich ist es deutlich
sinnvoller, wenn du den vollen Pfad deines Programmes angibts oder das
Programm in ein Verzeichnis im Suchpfad packst (ggf. /usr/local/bin
oder so).

Autor: BennyS (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
außerdem wäre
./name > `date`.log &

vielleicht besser damit er auch noch ausführt was danach kommt

Autor: one (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hast du chmods des auszufuehrenden programs richtig gesetzt? sonnst
gehts naemlich nicht
chmod +x name z.b... bzw. ist es ein shell script oder was willst du da
ausfuehren?

gruesse one

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.