Skript vom USB Stcik erst nach 1min starten lassen??

bolle

Aktives Mitglied
Mitglied seit
10 Apr 2006
Beiträge
1,437
Punkte für Reaktionen
0
Punkte
36
Hi zusammen,

kann mir von euch jemand sagen wie ich das bewerkstellige, dass ein Skript das auf dem USB STtick liegt erst nach einer Minute, wenn Box vollständig gebootet hat, startet.

Aktuell habe ich dieses hier in der rc.custom..aber da kommt es bei mir immer wieder zu Bootschleifen, das noch andere Sachen geladen werden. Also das folgende soll erst nach ca 1min bis 2min geladen werden..geht das?

Code:
# Wait until we have a network connection.
# Script can be disabled by removing network cable
# At least one of the web sites must must respond to ping before we continue
SITE_1=web.de
SITE_2=www.google.com
while !(ping -c 1 $SITE_1>/dev/null) && !(ping -c 1 $SITE_2>/dev/null); do
    sleep 15
done

# Wait until drive has been mounted
while !(mount | grep -q /var/media/ftp); do
    sleep 15
done

#Look for start script on usb disk
BASEDIR=/var/media/ftp/*/infoframe
for f in $BASEDIR; do
    cd $f
    if [ -x setup.sh ]; then
        ./setup.sh
    fi
done
 
Hallo,

also wenn das Skript schon gestartet werden darf, aber noch nichts machen soll kannst ja an den Anfang ein

sleep 120

o.ä. schreiben.
120 sind die sekunden die er warten (schlafen) soll ... kannst beliebig ändern.

Gruß
Micha
 
Am besten waere es wenn es erst nach einer bestimmten zeit geladen werden wuerde...
 
Und warum? Du kannst ja das zu startende Skript nach einem sleep 120 aus der rc.custom aufrufen.
 
# Wait until drive has been mounted
while !(mount | grep -q /var/media/ftp); do
sleep 15
done
sleep 120
#Look for start script on usb disk
BASEDIR=/var/media/ftp/*/infoframe
for f in $BASEDIR; do
cd $f
if [ -x setup.sh ]; then
./setup.sh
fi
done

Wäre das dann so korrekt?
 
Die rc.custom ist ja nicht das Ende des Bootvorgangs. Deshalb sollte man solche Wartegeschichten im Hintergrund starten, dass der Boot weiterlaufen kann.

MfG Oliver
 
was dann genau für mich und die Umsetzung meines Vohaben heisst?
 
...dass das sleep nicht vor dem Aufruf des Skripts in der rc.custom steht, sondern in deinem aufzurufenden Skript ganz am Anfang. Und das Skript muss im Hintergrund gestartet werden:
Code:
/blah/dein-script &
 
Also wenn das mein Skript ist das aufgerufen wird dann so:

Code:
[SIZE="3"][COLOR="DarkRed"]sleep 120[/COLOR][/SIZE]
#!/bin/sh
# setup infoframe handling

# make new directory for infoframe stuff in /var/tmp
mkdir /var/tmp/infoframe
# mount newly created directory into web frontend of fritzbox (content will be available at http://fritz.box/html/de/tools)
#mount -o bind /var/tmp/infoframe /usr/www/html/html/de/tools
# create webserver on port 5050 for serving images to picture frame
httpd -p 5050 -h /var/tmp/infoframe/ -r InfoFrame
ln -s /var/tmp/infoframe/info.jpg /var/tmp/infoframe/info_clone.jpg
# copy scripts from usb stick
cp /var/media/ftp/*/infoframe/refresh.sh /var/tmp/infoframe
cp /var/media/ftp/*/infoframe/error.jpg /var/tmp/infoframe

# generate html file with links to both pictures (info.jpg and info_clone.jpg)
echo "<html><head><meta content=\"text/html; charset=ISO-8859-1\" http-equiv=\"content-type\"><title>InfoFrame</title></head><body><img alt=\"Info\" src=\"info.jpg\"><img alt=\"Info\" src=\"info_clone.jpg\"></body></html>" > /var/tmp/infoframe/index.html

# refresh picture for first time
sh /var/tmp/infoframe/refresh.sh

Hast du das dann so geimeint?
 
Nein, nicht ganz! Die Zeile sleep 120
muss unter die Zeile #!/bin/sh
hin, sonst kann das Script nicht ausgeführt werden.
 
Ok supi werde es spaeter testen...ausser dem sleep muss dann nix mehr hin ?

Also thx noch einmal!
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.