Problem mit der rc.custom und USB

holybabel

Neuer User
Mitglied seit
30 Aug 2008
Beiträge
153
Punkte für Reaktionen
0
Punkte
16
Hallo zusammen,

ich versuche über die rc.custom von Freetz ein paar Sachen(webtransmission, Apache, Fritzload) von meinem USB-Stick zu laden. Ich habe in der rc.custom folgende Einträge:

Code:
# Webtransmission starten
cd /var/media/ftp/uStor02/FritzBox/webtransmission_1.40_svn88/
./rc.webtransmission start
# Apache starten
ln -s /var/media/ftp/uStor02/FritzBox/FritzLoad/ /var/tmp/apache
cd /var/tmp/apache/
./apache -f /var/tmp/apache/conf/apache.conf
# FritzLoad starten
cd /var/tmp/apache/htdocs/FritzLoad/
./autorunfl.sh -l /var/tmp/apache/htdocs/FritzLoad/ > /dev/null &

Leider bekomme ich in der /var/log/mod.log immer folgende Fehlermeldungen:

Code:
rc.mod version freetz-1.1-stable-3011
crond is disabled
telnetd is disabled
Starting webinterface...done.
Looking for user 'ftp' ... created - now saving to data buffer ... done
Starting ftp server...done.
/etc/init.d/rc.S: cd: line 2: can't cd to /var/media/ftp/uStor02/FritzBox/webtransmission_1.40_svn88/
/etc/init.d/rc.S: /tmp/flash/rc.custom: line 3: ./rc_webtransmission: not found
/etc/init.d/rc.S: cd: line 6: can't cd to /var/tmp/apache/
/etc/init.d/rc.S: /tmp/flash/rc.custom: line 7: ./apache: not found
/etc/init.d/rc.S: cd: line 9: can't cd to /var/tmp/apache/htdocs/FritzLoad/
/etc/init.d/rc.S: /tmp/flash/rc.custom: line 10: ./autorunfl.sh: not found
Starting swap...done.

Gruß HolyBabel
 
Zuletzt bearbeitet:
nur mal so zur Sicherheit: Die Verzeichniss sind auf dem Stick vorhanden?
Was sagt mount?
 
Hallo ralfjani,

die Verzeichnisse gibt es zu 100% so auf dem Stick. Wenn ich die Befehle über die Konsole eingebe dann funktionieren sie auch ohne Probleme. Wird das rc.custom gestarte nachdem der USB-Stick gemountet wurde?
 
Ich glaube rc.custom startet schon vor dem mount.
Das Problem wurde hier mal diskutiert und als lösung eine schleife vorgeschlagen, die auf das vorhandensein des Verzeichnisses prüft:
Code:
{
FRITZLOADDIR="/var/media/ftp/uStor01/FritzBox/FritzLoad/"
while [ ! -d "$FRITZLOADDIR" ]; do sleep 5; done
#Hier Befehle einfügen ...
} &

Edit : Frage an die Profis:
wie ist denn überhaupt die Startreihenfolge der rc.Scripte und kann man die nicht irgendwie beeinflussen?
 
Zuletzt bearbeitet:
Wenn ich die Schleife so nehme, dann scheint er sie in der rc.custom zu ignorieren. Es kommt dann zwar zu dem Teil keine Fehlermeldung mehr, aber ausgeführt hat er die Befehle anscheinend auch nicht.
 
@ralfjani:
Die Allgemeinestartreihenfolge siehst du hier:
Code:
-> rc.S
   |-> rc.{dsl|net|viop|telefon|...}
   |-> debug.cfg
   '-> rc.mod
       |-> rc.{bftpd|dropbear|...}  (Pakete)
       '-> rc.custom
Die Reihenfolge zwischen den einzelnen Diensten kann im makefile des Paketes vor dem start festgelegt werden. Mit einem
Code:
	$(PKG)_STARTLEVEL=10
Wie man es z.B. beim virtualip-cgi sieht.

@holybabel:
Mach das ganze doch mal auf der Konsole und füge als Befehl ein echo ein, also zum beispiel so:
Code:
{
FRITZLOADDIR="/var/media/ftp/uStor01/FritzBox/FritzLoad/"
while [ ! -d "$FRITZLOADDIR" ]; do sleep 5; echo "waiting"; done
echo "loading FRITZLOAD"
##Hier vielleicht noch paar BEfehle.
} &
 
Und bitte eine Begrenzung in die Schleife einfügen!!! Es ist ein MUSS!

MfG
 
Oha...habe schonmal einen Fehler gefunden. Ich hatte bei
Code:
while [ ! -d "$FRITZLOADDIR" ]; do sleep 5; done

das $-Zeichen nicht mit drin. Nun scheint es zu funktionieren, danke.

@hermann72pb: Wie kann ich denn ne Begrenzung einbauen?

Gruß HolyBabel
 
ich hab bei mir am Anfang sowas drinne, damit erstmal allgemein auf den stick gewartet wird.
Code:
i=0
echo -n "Looking for stick"
while [ ! -d "/var/media/ftp/stick/" -a $i -le "30" ]; do
  echo -n $i
  i=$(expr $i + 1)
  sleep 2
done
echo " done"

PS: mein stick wird unter /var/media/ftp/stick/ gemountet, dass musst du natürlich anpassen.
 
@matze1985 : herzlichen Dank und schon wieder was gelernt
 
Danke matze1985 funktioniert einwandfrei.
 
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.