ständig falscher mounpoint in mit freetz

wsxws

Neuer User
Mitglied seit
21 Okt 2010
Beiträge
3
Punkte für Reaktionen
0
Punkte
1
Hallo,

ich habe freetz auf meiner 7170 installiert.

aber meine box mounted den stick immer unter /var/media/ftp/USB2-0-FlashDisk-01 anstatt unter /var/media/ftp/uStore01

das ummounten über telnet bringt mir nicht viel, da die externen sachen dann nicht funzen und nach einem reboot ist der mountpoint wieder falsch.

jemnand ne idee ?
 
Du hast vergessen deine .config anzuhängen und wahrscheinlich sehen wir darin, dass du freetzmount nicht ausgewählt hast...

Gruß
Oliver
 
gibt es denn vielleicht irgendwo ein VOLLSTÄNDIGE anleitung, wie man das zeug in fuzend auf ne box bekommt ?

überall finde ich nur halben kram
hier steht mal was, wo anders was anders aber komplett bekomme ich es nirgendwo

das ist echt frustrierend ;(
 
Was hast du denn bis jetzt gelesen? Und wo ist deine .config?

Gruß
Oliver
 
gelesen habe ich mitlerweile so viele seiten, dass ich dir unmöglich sagen kann, wo das überall war.

meine config ist hier
 
@wsxws:
1. .config kann man auch hier anhängen, wäre einfacher gewesen
2. Wie Oliver bereits sagte, benötigst du FREETZMOUNT und am besten noch mit der LABEL-Unterstützung. Wie du deine Partitionen belabeln kannst, verrät dir Suchmaschine deiner Wahl. Es gibt zwar auch in FREETZ dazu Möglichkeiten (e2fsprogs/dosfstools), es muss aber nicht unbedingt über FREETZ gemacht werden.
3. Da du external nutzt, musst du unter menuconfig dein external-Verzeichnis definieren, wo die External-Sachen auch nachher drin liegen werden. Wenn es anstatt uStor01 nachher MEINELABEL heißt, muss diese Bezeichnung nach menuconfig hin.
4. Du musst nur die Sachen externalisieren, die definitiv nicht ins Image rein passen und die man nicht tagtäglich braucht. SAMBA gehört meiner Meinung nach nicht dazu. Um SAMBA in eine 7170 reinzuquetschen, musst du diverse remove-Patches anwenden. Wie wäre es z.B. mit Hilfe oder Kindersicherung? Wenn du Fax nicht brauchst, kann man noch einiges mehr herauspatchen.


@cuma: Zum Punkt 3 habe ich eine Idee. Wie wäre es damit, dass wir im Hauptlinuxverzeichnis ein Verzeichnis namens "external" anlegen und alle Symlinks nach dahin leiten, anstatt direkt zu uStorXY, oder wie es immer heißt. Wir müssen nur dafür sorgen, dass beim Hochfahren der Box das entprechende Verzeichnis irgendwo unter /dev/sdXY nach /external gemounted wird. Man könnte sogar vernünftigerweise diese Mountoption als RO ausführen und allen empfehlen für external eine extra-Partition anzulegen. Letzteres wäre aber nur eine Empfehlung.
Der Vorteil einer solchen Änderung wäre, dass wir immer sicher wüssten, wo external-Sachen liegen, nämlich unter /external (oder wo anders, wenn euch bessere Orte anfallen würden). Es wäre weniger davon abhängig, was man beim Bauen vom Image ausgewält hat und man könnte die Sache noch retten, wenn man sich mit uStorXY, LABEL oder was auch immer vor dem Bauen vom Image "verkalkuliert" hat. Anstatt USB hätte man dann auch NFS oder sonstwas unter /external mounten können.

MfG
 
Wie wäre es damit, dass wir im Hauptlinuxverzeichnis ein Verzeichnis namens "external" anlegen und alle Symlinks nach dahin leiten

Ich hatte darüber vor kurzem schon mit Oliver gesprochen. Im Grunde eine gute Idee, es gäbe da aber noch so einige Probleme, wie dass das Image alle Links (mit Unterverzeichnissen auf dem Stick) kennen müsste oder dass man den Pfad im laufenden Betrieb nicht ändern kann, da die Libraries / Binarys die laufen nicht so einfach on-the-fly geändert werden können. Ist (wieder einmal) die Frage ob sich der ganze Aufwand für die Verschiebung des Mountpointes vom menuconfig ins Flash lohnt.
 
1. Lohnen würde es sich auf jeden Fall, meiner Meinung nach. Denn sonst muss ich die ganzen Pfade momentan an zwei Stellen pflegen: Einmal in Menuconfig und einmal im FREETZ beim Hochladen der external-Datei. Wenn wir es auf diese Art "unifizieren", dann kann man sich nach diesem Verzeichnis (z.B. /external) festbinden.
2. Problem mit Unterverzeichnissen kann man einfach radikal lösen, dass man nicht mehr diese Freiheit einbietet (ein Verzeichnis für alles / Volle Verzeichnisstruktur). Ich würde radikal für volle Verzeichnisstruktur entscheiden, die dann unter diesem /external angelegt wird. Sprich Symlink /usr/bin/openvpn würde nach /external/usr/bin/openvpn zeigen.
3. Das Einbinden geschieht mit einem mount, wie ich oben geschrieben hatte. Entweder direkt, oder eben als -o bind, wenn es denn überhaupt notwendig und möglich. Beim Wechseln der Verlinkung wird sowieso unmount und nochmal mount ausgeführt. Man kann den Rückgabewert vom unmount abfragen (wie ich es z.B. in mounted.cgi mache) und dem Benutzer eine entsprechende Meldung geben, wenn das unmounten nicht möglich ist (bedeutet, dass irgendeine Datei die Freigaben sperrt). Dann sollte der Benutzer sich damit abfinden mal zu rebooten.


MfG
 
1) Es wird der passende Pfad vorgegeben: http://trac.freetz.org/changeset/5440
2) Es gibt Dateien mit gleichem Namen in verschiedenen Verzeichnissen. (genau deshlab gibt es auch die Option mit Unterverzeichnissen!)
3) Man könnte auch nach /tmp/external/xyz verlinken und diese Links dann passend setzen, das sogar schon bevor USB vorhanden ist. Die Nachteile bleiben dann aber und ich seh da nicht so wirklich viele Vorteile
 
Im Grunde eine gute Idee, es gäbe da aber noch so einige Probleme
Welche Probleme kommen dazu gegenüber jetzt? Für mich hört es sich so an, als wären die angedeuteten Probleme in gleicher Weise jetzt auch schon vorhanden.

Es wird der Pfad vorgegeben aus dem Image, das auf der Box ist, nicht der aus der neuen Firmware.
3) Man könnte auch nach /tmp/external/xyz verlinken und diese Links dann passend setzen, das sogar schon bevor USB vorhanden ist. Die Nachteile bleiben dann aber und ich seh da nicht so wirklich viele Vorteile
Was genau waren die Nachteile, und warum wäre /tmp/external besser (oder schlechter) als /external?
 
/tmp/external ist im tmpfs und damit ohne weiters beschreibbar. Ich könnte mir auch /mod/external vorstellen.

Das einzige Problem das ich sehe ist wie man zur Laufzeit auf der Box rausfindet welche Links anzulegen sind. Man müsste entweder eine Datei mitgeben in der alle externalisierten Dateien und Pfade drin sind. Oder man sucht das Dateisystem nach Links zum External-Pfad ab?
Oder man macht es wie von Hermann vorgeschlagen, dass man einfach dem kompletten Pfad ein "/mod/external" voranstellt und "/mod/external" ist dann ein Link auf ein Verzeichnis auf dem USB-Datenträger unter dem sich dann die Dateien im Pfad (/var/media/ftp/uStor01/external/usr/bin/openvpn) befinden. Hört sich für mich nach der sinnvollsten Variante an.

Gruß
Oliver
 
Man muß keine individuellen Links anlegen, das tun wir derzeit ja auch nicht.
Der ursprüngliche Vorschlag von Hermann war, den external-Pfad nicht mehr im menuconfig einstellbar zu machen, sondern fest auf /external zu setzen. Auf der Box macht man dann ein mount (mit oder ohne bind), und damit sind alle notwendigen Dateien unter /external erreichbar. Wenn man aus irgendwelchen Gründen die Dateien anderswo haben will (andere Partitionierung am Stick, ...), muß man nicht die Pfade in der Firmware ändern, sondern sorgt nur dafür, daß dieses /external wieder die richtigen Dateien bekommt.
Ich verwende schon seit langem /var/media/external als Ziel-Pfad für external und sorge dafür, daß die Dateien unter diesem Mount-Punkt verfügbar sind.

Wenn man als Link-Ziel den beschreibbaren Teil nimmt (/var/external, /mod/external, ...), kann man zusätzlich mit einem Sym-Link /var/external -> /var/media/ftp/... arbeiten. Es ist nicht nötig, für jede einzelne Datei einen Link anzulegen.
Einen Link kann man sogar anlegen, bevor das Link-Ziel ansprechbar ist. Ein mount-bind funktioniert erst, nachdem das Ziel-Dateisystem da ist.
Eine einfache Lösung wäre also, im RAM einen Sym-Link anzulegen. Dessen Ziel könnte in der Box konfiguriert und geändert werden.
Eine andere Möglichkeit wäre, diesen Link erst dann anzulegen, wenn eine bestimmte USB-Partition gemountet wird. Da wäre dann die Frage, wie das konfiguriert wird und wo man das im Mount-System unterbringt.
Bleibt noch ein Mount über NFS. Den kann man auch von Hand in rc.custom ausführen

Je nachdem, was alles external ist, kann es sinnvoll sein, auf das Vorhanden-Sein der external-Dateien zu warten, bzw. Dienste als Reaktion auf das Mounten einer Partition zu starten. Ich kann mich erinnern, daß es einmal Diskussionen dazu gab, aber ich habe nicht weiter verfolgt, wie der Stand dazu ist.
 
Die Idee das Verzeichnis das auf external link nach /tmp zu schieben hatte ich dann später auch noch.. Ein "mount -o bind" hab ich aber nicht genutzt, braucht man ja nicht unbedingt. Der Link wird im Patch nur beim starten angelegt, man muss also für eine Änderung neu booten. Dies hab ich so gemacht, da ich denke dass es problematisch ist, einem laufenden Programm die Binary oder Lib wegzunehmen.
Anbei eine "Vorschau", das ganze ist aber noch nicht getestet und vermutlich noch nicht komplett!

Je nachdem, was alles external ist, kann es sinnvoll sein, auf das Vorhanden-Sein der external-Dateien zu warten, bzw. Dienste als Reaktion auf das Mounten einer Partition zu starten. Ich kann mich erinnern, daß es einmal Diskussionen dazu gab, aber ich habe nicht weiter verfolgt, wie der Stand dazu ist.

Ausgelagerte Dienste (Datei: external.services) werden erst beim Einbinden des Datenträgers mit "rc.PACKAGE load" gestartet. Dies kann man im Webinterface konfigurieren Automatisches starten/stoppen von Diensten
 
Schaut schon mal nicht schlecht aus, cuma! Du bist wie immer ziemlich schnell. Ich habe meine 7170 sowieso seit ein Paar Monaten endlich aus dem Dienst genommen und nutze sie für solche Testzwecke. Ich werde später mal dein Patch an meiner 7170 ausprobieren.


Edit: Hab an meiner 7170 ausprobiert. Die Box ist danach recovery- bzw. push-firmware-reif... Es könnte zwar sein, dass es etwas mit der neuen Toolchain an sich hat, ich würde aber eher an External als Verursacher tippen.

Die DSL-LED fängt an zu blinken, dann leuchtet sie dauerhaft und "info" blinkt ab und zu ganz-ganz kurz, sodass man es kaum merkt.
Und nein, serielle konsole habe ich nicht.

Deswegen bitte nochmals durchsehen...

MfG
 
Zuletzt bearbeitet:
Wir wärs wenn du ein Image ohne external baust? :)

Gruß
Oliver
 
... oder eben ohne diesen Patch. Das ist alles gute Ideen, ich muss aber erstmal wieder meine Experimentierbox wiederbeleben. Und weder AVM-recover noch push_firmware, beides mag ich irgendwie nicht wirklich, weil es immer wieder ein ewiger Kampf ist. Bei push_firmware muss man von DHCP auf Fest-IP umstellen, bei AVM-recover will er seinen Mediasensing abschalten und muss drei Mal den Rechner booten...
Ich melde mich, wenn ich mehr weiß. Vielleicht taste ich mich dem Patch von cuma langsam an und teste es mit "mount -o bind", mal sehen.

Edit: Es scheint an der Toolchain zu liegen. Ich hatte eben patch von cuma reverted und mein minimal.config eingespielt. Das gebaute Image verhält sich dem vorherigen ähnlich. Jetzt habe ich komplett frisch ausgecheckt und mich sogar handisch durch menuconfig durchgequelt. Denn menuconfig spukte mir laute Meldungen heraus, als ich mein "minimal.config" vom vorherigen bauen geladen hatte. Und die Fehlermeldungen betrafen toolchain.
Also, es scheint bei mir immer wieder Probleme zu geben, sobald ihr was an der Toolchain macht. Und das macht ihr letzte Zeit ziemlich oft. Ich muss mich eine Weile gedulden, bis make nun komplett durchläuft. Mit push_firmware zu jonglieren hatte ich mittlerweile auch gelernt. Man muss nur in FREETZLINUX Folgendes ausführen:
Code:
sudo ifconfig eth0 192.168.178.21
./push_firmware bla...bla...bla
sudo ifdown eth0
sudo ifup eth0
... und schon ist die Welt in Ordnung. Leider wird verständlicherweise putty-Session gekappt und man muss sich mit dem VMWARE-Fenster begnügen, aber für die 2-3 Befehle kann man es überleben.


MfG
 
Zuletzt bearbeitet:
Mach dir doch eine 2. Netzwerkkarte: sudo ifconfig eth0:0 192.168.178.21
Meine 7170 läuft momentan auch nicht, wohl libfreetz oder download-toolchain
 
Also, es scheint irgendwas zwischen Revision 6071 und Revision 6089 im trunk gelaufen zu sein, was eine 7170 zum Dauerrebot bringt.
Mit 6089 habe ich bereits versucht drei oder sogar vier unterschiedliche Images zu bauen. Alles brachte die Box zu irgendeinem Dauereinfrieren (Dauerreboot ist es nicht, die Box steckt in irgendeiner Schleife).
Hat jemand 7170 mit serieller Konsole, um zu sehen, wo die Box hängen bleibt? Was sollen wir weiter tun?
Ich glaube, ich eröffne dazu lieber ein neues Thema....

MfG
 
Also, mit der libfreetz0.2 (daran lag anscheinend das Einfrieren von 7170) konnte ich den Patch von cuma erfolgreich testen.

@cuma: Von mir aus kannst du es einchecken, aber mach bitte erstmal die Unicode-Schreibweise von "WeboberflÄche" wieder so, wie sie früher war (schau mal deine Patch-Datei an). FREETZ-WebIF beherrscht nämlich noch kein Unicode und schon gar nicht von deinem Texteditor. Daher sieht dieses Wort im WebIF ziemlich seltsam aus.

MfG
 
Der Umlaut ist mir schon aufgefallen, das passiert immer.. Ich erweitere das noch etwas und warte noch ab, ob es evtl möglich ist den Link im Betrieb zu ändern:

ich denke dass es problematisch ist, einem laufenden Programm die Binary oder Lib wegzunehmen.

Kennt sich da jemand aus?
 
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.