USB-Stick Autostart Daemon mit optischer Anzeige

ja hab schon herraus gefunden dass meine busybox den alias befehl nicht unterstützt.
hast du ne ahnung wie ich entweder eine neue busybox installieren kann bzw. nur den alias befehl hinzufügen kann?
ich hab auch schon hier im forum gefunden, aber mit kompilieren kenn ich mich nicht so aus.
 
Crevlon schrieb:
ich würde gerne die Meldung
"In Ihrer FRITZ!Box wurden vom Hersteller nicht unterstützte Änderungen durchgeführt.
Weitere Informationen."
weg bekommen.
Ein kurzer Blick ins IPPF-WIKI hilft. ;)

Crevlon schrieb:
...wie ich entweder eine neue busybox installieren kann...
Auch hier: einfach mal im IPPF-WIKI nachschauen.
 
da ich dafür aber eine toolchain brauche benötige ich ja auch den ds-mod.
busybox:
Code:
Vorraussetzung ist eine Toolchain (siehe Cross-Compiler / Toolchain erstellen).
Toolchain:
Code:
Das Erstellen eines Cross-Compilers ist mit dem ds-mod denkbar einfach:

oder versteh ich da was falsch?
 
Crevlon schrieb:
oder versteh ich da was falsch?
Nein. Mod runterladen, entpacken, make toolchain und dann analog wiki Programme crosscompilen.

Für weitere Fragen zu Themen die nichts mit diesem Thread zu tun haben: Bitte die richtigen Threads suchen bzw. einen neuen aufmachen.
 
Zuletzt bearbeitet:
:) ok habs verstanden...aber:

Code:
# cd /var/tmp/toolchain/
# make toolchain
-sh: make: not found
#

und jetzt?
 
hallo,

ich hab das mit dem usb-autostart jetzt auch mal ausprobiert.
es klappte mit den standard einstellungen wirklich sehr gut.

nur jetzt möchte ich die daten nicht direkt auf meinen usb-stick tun sonder in ein bzw. zwei unterverzeichnisse.

dazu muss ich doch nur in der debug.cfg folgende zeile ändern, oder?:

Code:
HOME_DIR=/      	# directory where to find the file on the
                                # stick, must end with /

in meinem fall müsste er dann so aussehen:
Code:
HOME_DIR=fritzbox/start/      	# directory where to find the file on the
                                # stick, must end with /
ist das so korrekt oder fällt jemandem schon ein fehler auf?

komischer weise behauptet das skript, dass der usb-stick nicht "mehr" angeschlossen ist und führt die fbfstop.sh datei aus. (vorher wird sie natürlich nach /var/tmp kopiert.

hab ich etwas vergessen oder falsch gemacht?
 
Crevlon schrieb:
hallo,

ich hab das mit dem usb-autostart jetzt auch mal ausprobiert.
es klappte mit den standard einstellungen wirklich sehr gut.

nur jetzt möchte ich die daten nicht direkt auf meinen usb-stick tun sonder in ein bzw. zwei unterverzeichnisse.

dazu muss ich doch nur in der debug.cfg folgende zeile ändern, oder?:

Code:
HOME_DIR=/      	# directory where to find the file on the
                                # stick, must end with /

in meinem fall müsste er dann so aussehen:
Code:
HOME_DIR=fritzbox/start/      	# directory where to find the file on the
                                # stick, must end with /
ist das so korrekt oder fällt jemandem schon ein fehler auf?

komischer weise behauptet das skript, dass der usb-stick nicht "mehr" angeschlossen ist und führt die fbfstop.sh datei aus. (vorher wird sie natürlich nach /var/tmp kopiert.

hab ich etwas vergessen oder falsch gemacht?


edit:
ok so ist es anscheinend besser:
Code:
HOME_DIR=[COLOR="Red"]/[/COLOR]fritzbox/start/      	# directory where to find the file on the
                                # stick, must end with /
nur leider startet er dennoch nicht meine programme.
ich forsche erst mal selbst noch mal nach dem fehler. wenn ich nichts finde melde ich mich wieder ;)
 
Crevlon schrieb:
edit:
ok so ist es anscheinend besser:
Code:
HOME_DIR=[COLOR="Red"]/[/COLOR]fritzbox/start/      	# directory where to find the file on the
                                # stick, must end with /
nur leider startet er dennoch nicht meine programme.
ich forsche erst mal selbst noch mal nach dem fehler. wenn ich nichts finde melde ich mich wieder ;)

edit:
:) alles klar...habs geschafft. es waren natürlich doch noch verlinkungen in der fbfautorun.sh falsch. und ich such mir hier stundenlang nen wolf.
sorry für den forums-beitrag...aber vielleicht hat ja jemand irgend wann mal genau das gleiche problem ;)
 
ich hab mal ne frage zu einer funktion aus der debug.cfg:

Code:
wait_for_remove()
#===================================================================
{

#   echo ${FTP}${fundstelle}${HOME_DIR}${STOP_FILE} #*#

   if [ -e ${FTP}${fundstelle}${HOME_DIR}${STOP_FILE} ]
   then
           cp ${FTP}${fundstelle}${HOME_DIR}${STOP_FILE} /var/tmp/${STOP_FILE}
           chmod +x /var/tmp/${STOP_FILE}

           while [ 1 = 1 ]
           do
              if [ ! -e ${FTP}${fundstelle}${HOME_DIR}${START_FILE} ]
              then
                 #echo 7,2 >/var/led
                 sleep $SIGNAL_TIME
                 /var/tmp/${STOP_FILE}
                 echo 7,3 >/var/led
                 continue
              fi
              sleep $WAIT_TIME
           done
           echo 7,1 >/var/led
   fi
}

wenn ich es richtig verstehe wird dort überprüft ob das STOp_FILE gefunden wird. wenn die gefunden wird, wird sie nach /var/tmp/ kopiert und ausführbar gemacht.
danach kommt: "while [ 1 = 1 ]"
kann mir jemand diese schleifenbedingung erklären? wird sie jemals unwahr?
darauf folgt die überprüfung ob die Datei START_FILE gefunden wird.
bzw es wird abgefragt ob sie NICHT existiert.
wenn sie NICHT existiert, wird das info lämpchen an der FFB auf "leuchten" gestellt.
danach kommt ein sleep.
dann wird das STOP_FILE ausgeführt.
nachdem es ausgeführt wurde, wird das info lämpchen auf "blinken" gestellt.
dann kommt ein continue. kann mir jemand erklären was genau das macht? gehts dann einfach weiter?
sobald die datei START_FILE wieder gefunden wird, kommt ein sleep.
und dann??? wann wird die schleife "while { 1 = 1 } beendet damit "done" und "echo 7,1 >/var/led" ausgeführt werden können.

versteh ich das richtig, dass wenn er (wie auch immer) aus der while schleife raus kommt am ende gar nicht mehr das START_FILE ausführt?
 
Crevlon schrieb:
ich hab mal ne frage zu einer funktion aus der debug.cfg:
ich erlaube mir mal Kommentare einzufügen ;-)

Code:
wait_for_remove()
#===================================================================
{

#   echo ${FTP}${fundstelle}${HOME_DIR}${STOP_FILE} #*#

   if [ -e ${FTP}${fundstelle}${HOME_DIR}${STOP_FILE} ]
   then # wenn ${STOP_FILE} gefunden wird
           # wird sie nach /var/tmp/ kopiert
           cp ${FTP}${fundstelle}${HOME_DIR}${STOP_FILE} /var/tmp/${STOP_FILE}
           # und ausführbar gemacht.
           chmod +x /var/tmp/${STOP_FILE}

           while [ 1 = 1 ]             #Entlos schleife ;-)
           do
              if [ ! -e ${FTP}${fundstelle}${HOME_DIR}${START_FILE} ]
              then                     #  wenn ${START_FILE} nicht gefunden wird
                 #echo 7,2 >/var/led   #    Info LED -> an
                 sleep $SIGNAL_TIME    #    warten
                 /var/tmp/${STOP_FILE} #    Stop aktionen ausführen
                 echo 7,3 >/var/led    #    Info LED -> blinken
                 continue              #    (Entlos-)Schleife verlassen
              fi                       #    Ends des ifs (not ${START_FILE} exist)
              sleep $WAIT_TIME         #  warten
           done                        #Ende der schleife
           echo 7,1 >/var/led          #Info LED -> aus
   fi                                  #Ende des ifs (${STOP_FILE} exist)
}

Crevlon schrieb:
versteh ich das richtig, dass wenn er (wie auch immer) aus der while schleife raus kommt am ende gar nicht mehr das START_FILE ausführt?
START_FILE wird in diesm code garnicht ausgeführt

MfG
Thomas
 
danke für die schnelle antwort.

hab ich das richtig verstanden dass druch das "continue" erst mal zum "echo 7,1 >/var/led" gesprungen wird?

kann es sein, dass das "echo 7,2 >/var/led" total sinnlos ist?
"echo 7,3 >/var/led" wird doch wahrscheinlich eh zu schnell ausgeführt um zu bemerken, dass die led erst nur an war (anstatt zu blinken).

bei mir geht die led aber gar nicht mehr aus. moment mal...sie geht wahrscheinlich schon aus, nur ich merke es nicht weil es ja eine endlosschleife ist und die led dann wieder eingeschaltet wird. richtig?

wenn das stimmt sind die befehle "echo 7,2 >/var/led" und "echo 7,1 >/var/led" doch total sinnlos!

edit:
welche befehle für die led einstellungen gibt es noch bzw wo kann ich diese nachlesen?
 
Crevlon schrieb:
hab ich das richtig verstanden dass druch das "continue" erst mal zum "echo 7,1 >/var/led" gesprungen wird?
Durch das "continue" wird die Schleife verlassen / abgebrochen.

Crevlon schrieb:
kann es sein, dass das "echo 7,2 >/var/led" total sinnlos ist?
"echo 7,3 >/var/led" wird doch wahrscheinlich eh zu schnell ausgeführt um zu bemerken, dass die led erst nur an war (anstatt zu blinken).
Nein durch sleep $SIGNAL_TIME wäre sie eine weile an.
Aber die Zeile "#echo 7,2 >/var/led" ist sowiso nur kommentar #-)

Crevlon schrieb:
bei mir geht die led aber gar nicht mehr aus. moment mal...sie geht wahrscheinlich schon aus, nur ich merke es nicht weil es ja eine endlosschleife ist und die led dann wieder eingeschaltet wird. richtig?
Nein, in der Schleife ist ein "IF" ;-)

Crevlon schrieb:
wenn das stimmt sind die befehle "echo 7,2 >/var/led" und "echo 7,1 >/var/led" doch total sinnlos!
"echo 7,1 >/var/led" steht hinter der Schleife
Crevlon schrieb:
edit:
welche befehle für die led einstellungen gibt es noch bzw wo kann ich diese nachlesen?
Such dir was raus ;-)
http://wiki.ip-phone-forum.de/gateways:avm:howtos:mods:leds
 
so habs jetzt mal ausprobiert mit:

Code:
#===================================================================
wait_for_remove()
#===================================================================
{

#   echo ${FTP}${fundstelle}${HOME_DIR}${STOP_FILE} #*#

   if [ -e ${FTP}${fundstelle}${HOME_DIR}${STOP_FILE} ]
   then
           cp ${FTP}${fundstelle}${HOME_DIR}${STOP_FILE} /var/tmp/${STOP_FILE}
           chmod +x /var/tmp/${STOP_FILE}

           while [ 1 = 1 ]
           do
              if [ ! -e ${FTP}${fundstelle}${HOME_DIR}${START_FILE} ]
              then
                 echo 7,2 >/var/led
                 sleep $SIGNAL_TIME
                 /var/tmp/${STOP_FILE}
                 echo 7,3 >/var/led
                 continue
              fi
              sleep $WAIT_TIME
           done
           echo 7,1 >/var/led
   fi
}

also so wie es eigentlich sein sollte. aber die info led leutet nur ständig. sie blinkt nicht einmal!

Durch das "continue" wird die Schleife verlassen / abgebrochen.
und warum hört meine info led nicht auf zu leuchten, wenn eigentlich die schleife verlassen werden sollte?
was ist dann eigentlich danach? wird dann gar nichts mehr gemacht? wird dann nicht mehr darauf gewartet, dass der usb-stick wieder angeschlossen wird? eigentlich ja schon. aber wie soll er das können wenn die schleife verlassen wird? dadurch wird doch dann auch automatisch die if bedingung verlassen!
 
edit:
zitat crelvon:
also so wie es eigentlich sein sollte. aber die info led leutet nur ständig. sie blinkt nicht einmal!
und wenn ich den usb-stick wieder anschieße blinkt es immer noch. ich hab aber keine ahnung warum.
 
@Thomas: Cool. Vielen Dank für die Kommentare. Hab mich lang nicht mehr mit dem Code beschäftigt, aber deine Kommentare haben mich schnell wieder reingebracht :). Die werd ich demnächst mal in den Code mit einfügen.

Der Hinweis auf /etc/hotplug war super. Ich denke, ich werde mal sehen,
in wieweit sich das mit einbeziehen lässt. Wahrscheinlich ist es sinnvoller,
das Skript zu nutzen anstatt einen eigenen "Daemon" laufen zu lassen.


Zum Datenverlust:
Ich hab das mal in meinem 2ten Beitrag angepasst. Das Problem ist auch im Ordner /etc/hotplug zu suchen.
 
Ich habe da noch was...

Hallo risaer,

ich habe mir mal Dein ZIP-Archiv aus dem ersten Betrag runtergeladen und angesehen und und bin echt platt, habe da noch 1-2 Fragen / Änderungen / Erweiterungswünsche:

Ich habe auch vor, bei mir einen OpenVPN-MultiConnect-Server mit Zertifikaten laufen zu lassen.
Das "Problem", welches sich daraus ergibt, ist, dass man ja nicht immer weiß, welche PCs in welchen Netzen verfügbar sind.

Deshalb hier nun das, was mir auf der Seele brennt:
  • anpingen (und Ausertung) der beteiligten (2, später 3 / mehr) Netze (10.0.0.254 (Server, ich, immer ON) 10.0.0.1 (FBF7170, VPN1, auch immer ON aber nicht alle Clients) und 10.0.0.2 (LinkSYS WRT300N, VPN2, auch immer ON aber nicht alle Clients))
  • anpingen (und Ausertung) der ständig in den LANs verfügbaren Clients (IPs jeweils per DHCP ab Router "fest" zugewiesen - Namen bekannt)
Wenn das ^^ geschehen ist, soll das Ergebnis alle 15 min auf einer Webseite auf meiner FBF (Server) abrufbar sein mit z.B. Kontakt-e-Mail-Adresse des "Netzverantwortlichen".

Wie läßt sich soetwas realisieren?
Kann ich CRON einfach "nachinstallieren" (Wenn JA, wie; wenn NEIN --> was muß ich machen?)?

So, das nun erstmal dazu.

Jetzt muß ich mir das mit den Zertifikaten erstmal weiter zu Gemüte führen.

Danke schonmal für alle (konstuktiven) Antworten.

Greets...

P.S.: Ich möchte möglichst KEIN Mod installen :rolleyes:
 
@razorworks: Rein threoretisch sollte das schon möglich sein.
In dem Zip-file ist createscripts.sh. u.a. erstellt es ein simples script whoisonline, welches Dir ausgibt, welche rechner online sind.

Das könntest du anpassen, indem du die ausgaben so umbastelst, dass
ein html-file entsteht. Dieses kannst du dann mounten, sodaß du sie bei bedarf abrufen kannst.

Wenn ich mich recht entsinne, lässt sich auch apache (incl. php) auf die FB
bringen, womit du evtl. ein PHP-script erstellen kannst, was die Rechner an-
pingen und dir die Ergebnisse anzeigen kann.

CRON lässt sich bestimmt nachinstallieren, aber eine Endlosschleife mit nem
sleep am ende tuts eigentlich auch, wenn du nicht auf ganz bestimmte Zeit-
punkte angewiesen bist.

IPs können von der FB nicht fest eingestellt werden (ohne mod). Für OVPN
kannst du eine LIste anlegen, die bestimmten Zertifikaten bestimmte IP adressen
zuweist. Hierfür geht also das "statische" zuweisen.
 
risaer schrieb:
...IPs können von der FB nicht fest eingestellt werden (ohne mod). Für OVPN kannst du eine LIste anlegen,
die bestimmten Zertifikaten bestimmte IP adressen zuweist. Hierfür geht also das "statische" zuweisen.
Das hast Du falsch verstanden:

Ich möchte, dass sich die anderen Router zu mir verbinden, NICHT die einzelnen PCs.

Ich kann doch aber die FBF rumpingen lassen und sehen, was / wen sie erreicht und das dann auswerten, oder?

Wie müßte denn eine mit sleep beendete Endlosschleife aussehen, damit eine / mehrere Aktion/-en alle 15 min ausgeführt werden (, um CRON zu umschiffen)?

Danke und greets...
 
Hallo!

Wie kann ich verhindern ,das nach dem erneuten Einstecken meiner USB Platte, diese immer die Partition-1-1 bekommt? Lasse zur Zeit die Box über fbfstop.sh neu starten, damit ich wieder ne 0-1 bekomme. Hatte dieses hier schon gefunden http://www.ip-phone-forum.de/showpost.php?p=774367&postcount=5 Wo und wie müsste ich das in der fbfautorun einbauen?

Danke MrXYZ
 
Hallo

Obiges Problem hab ich in den Griff bekommen. Leider wird ja die fbfautorun nur beim Neustart der Box über die Debug.cfg ausgeführt, so das die Autostart Programme ohne Neustart der Box nicht neu geladen werden.Gibt es eine Möglichkeit das zu umgehen? Ich stelle mir das so vor, dass das Startscript beim Erststart der Box die fbfautorun ausführt und dann in einer Art Endlosschleife weiterläuft. Solange der Stick angesteckt ist ,sollte vielleicht über eine Art Kontrolldatei auf dem Stick die fbfautorun nicht nochmals ausgeführt werden. Erst wenn der Stick abgezogen wurde soll dann wieder wie in der Debug.cfg erneut nach einem Stick gesucht werden .Ist das irgendwie realisierbar??
 
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.