Subversion auf Fritzbox

Hab nun mal ein paar minuten laufen lassen... dann bekomme ich tatsächlich mal eine (sehr überschaubare) Ausgabe: ¯ðÍT"
.... aber normal ist das nicht, oder?

Gruß
Sven
 
könnt ihr mal testen, was "cat /dev/random" bei euch ausgibt? bei mir kommt nichts...
wenn ich aber "cat /dev/urandom" ausführe, bekomme ich lauter "zufällige" Zeichen...

Deine Ausgebe ist falsch, bei mir kommt nämlich etwas anderes heraus ;)

Aber im Ernst, wolltest Du nicht eher wissen, was der Unterschied zwischen /dev/random und /dev/urandom ist? "man 4 random" gibt die Antwort.

Um es zusammenzufassen:
Beide sind dazu da, zufällige Zahlenwerte zu liefern. Der Unterschied ist der, daß /dev/random nur dann Zufalls-Werte liefert, wenn auch welche vorhanden sind (wenn genug Entropie vorhanden ist). Wenn nicht, wird solange gewartet, bis genug Entropie vorhanden ist. Das kann beliebig lange dauern.

Im Gegensatz dazu liefert /dev/urandom immer Werte zurück. Wenn aber keine Entropie mehr vorhanden ist, werden nicht mehr echte Zufallszahlen geliefert, sondern nur noch pseudo-zufällige Zahlen.

Man kann also wählen, ob man beliebig lange auf echte Zufallszahlen wartet oder ob man lieber schnell Zahlen bekommt, die möglicherweise nicht wirklich zufällig sind.
 
Hi RalfFriedl
Danke für deine Antwort, aber Du beschreibt indirekt gerade mein Problem...
den Unterschied zwischen /dev/random und /dev/urandom hatte ich mir bereits angelesen... aber: svnserv, bzw. das verwendete APR verwendet standardmässig /dev/random...
allerdings kommt da bei mir halt nur sporadisch mal eine Ausgabe... als abhilfe wird von tigris ja angeboten, ARP mir --with-devrandom=/dev/urandom zu kompilieren... was aber (vermutlich) nicht ganz einfach ist für die Fritzbox (oder täusche ich mich da???)...

Das Problem für die langsame Verbindung bei authorisierten Zugriff ist also, dass zu selten Zufallswerte von /dev/random zurückkommen (jedenfalls bei mir... warum dass so ist, ist mir ein Rätsel)...

Gruß
Sven
 
Mir ist schon klar, was Dein Problem ist, Du hast es ja oben beschrieben, und deswegen wird auch urandom als Lösung empfohlen.

Wenn man schon Apache für die Box erstellt hat, kann man auch Apache mit neuen Optionen erstellen, das sollte auch nicht schwieriger sein. Wenn man sich über die Folgen imklaren ist, kann man auch /dev/random auf /dev/urandom verbinden.

Warum selten Werte aus /dev/random kommen, sollte auch kein Rätsel sein. Wie sollen denn zufällige Werte hineinkommen? Auf einem normalen System wird als Quelle für Entropie unter anderem Aktivität von Tastatur und Festplatten verwendet. Das fällt hier schon mal weg. Außerdem noch die Aktivität im Netzwerk. Hier kann man sich mal den AVM-Treiber anschauen, ob der das auch tut oder nicht. Falls nicht, bleiben nicht mehr viel Quellen übrig.
 
Hi RalfFriedl
Danke für deine Lösungshinweise...
aber... Apache ist ja nicht erstellt worden (und von mir leider schon gar nicht... dafür bin ich mit Linux und Fritzbox leider noch nicht fit genug... schade!!!) (svnserve läuft doch als eigener daemon ohne apache, oder???)

Leider sind mir die Folgen bisher noch nicht ganz klar, aber wie kann man denn /dev/random auf /dev/urandom verbinden?!? (oder auf anderem Wege Ausgaben von /dev/random erhalten?)

Gruß
Sven
 
Hallo
habe mir am WE noch mal die Geschichte mir "/dev/random" genauer angeschaut, un bin zu dem Schluss gekommen, dass es (für svn) ausreichen sollte, "/dev/urandom" zu verwenden...

... aber wie ich /dev/random mit /dev/urandom verbinden, habe ich leider noch nicht herausgefunden... hat jmd ein Tip?
denn alle Tips diesbezüglich erwarten ein Dateisystem, welches nicht readonly ist :-(

Gruß
Sven
 
Zuletzt bearbeitet:
Der größte Teil des Datei-Systems ist Read-Only, aber /dev sollte beschreibbar sein.
leider nicht:
# cd /dev/
# mkdir test
mkdir: Cannot create directory `test': Read-only file system
Ist er vom Himmel gefallen? Irgendwer hat ihn erstellt, auch wenn Du es nicht warst.
Schon klar... bin halt nur noch nicht so fit Linux/Fritzbox... ich dachte nur, SVN kann mit Apache nutzen und svnserve läuft ohne... und müsste ich apache dann nicht in der prozessliste finden?

Gruß
Sven
 
Schaffst Du es, im Binary den String /dev/random nach /var/random zu ändern? Wichtig ist, daß die Länge gleich bleibt. Dann kannst Du mit
Code:
ln -s /dev/urandom /var/random
einen Link auf /dev/urandom mit dem Namen /var/random erstellen. Das Verzeichnis /var ist auf jeden Fall beschreibbar.

Eine andere Möglichkeit wäre, die Gerätedateien aus /dev zu sichern, dort ein beschreibbares Dateisystem zu erstellen und dann damit weiter zu machen.
Das könnte ungefähr so funktionieren:
Code:
mkdir -p /var/dev
cp -a /dev/* /var/dev/
mount -t ramfs dev /dev
cp -a /var/dev/* /dev
rm /dev/random
ln -s urandom /dev/random
 
Hi RalfFriedl,
ich hoffe ich verstehe nun nichts falsch :)
Schaffst Du es, im Binary den String /dev/random nach /var/random zu ändern?
-> nein, da ich es bisher noch nicht schaffe, für die FritzBox zu kompilieren... das hatte ja HAL9000 für mich/uns gemacht...

ABER:
Der zweite Tip funktioniert!!!
SVN ist nun mit "anon-access = none" genauso schnell, wie "anon-access = write"

Somit: vielen Dank für Deine Hilfe!!!

Gruß
Sven
 
Mit dem ersten Vorschlag war gemeint, im fertigen Programm das /dev/ durch /var/ zu ersetzen, nicht das Programm neu zu kompilieren.

Aber wenn es mit der anderen Variante funktioniert, ist es auch gut.
 
ich hoffe ich verstehe nun nichts falsch
--> Doch falsch verstanden... ;-)
Du meintest mit einem HEX-Editor (o.ä.) in der Binary... alles klar! werde ich trotzdem mal schauen und berichten

Gruß
Sven
 
Ich stecke leider grad mitten in der Klausurenphase, deshalb hats jetzt ein bisschen gedauert... aber im Anhang ist ein svnserve, der /dev/urandom benutzen sollte. Ist noch nicht wirklich getestet, feedback ist willkommen :)
Außerdem versuche ich im Moment, ein package für freetz zu erstellen, aber leider linkt das noch nicht so richtig... to be continued ;)
 

Anhänge

  • svnserve.gz
    325.5 KB · Aufrufe: 50
FRITZ!Box 7170 SVN howto

Hallo beisammen,

HAL9000, wie läuft's bei den Klausuren?

Bei mir geht' um eine FB 7170 mit Firmware 29.04.49.

Da ich als "Fachkundiger Laie" nun mehrere Stunden gebraucht habe, um den SVN
am Laufen zu haben, hier ein kurzes, hoffentlich komplettes HOWTO:

1. USB-Stick anschließen, mit FTP oder direkt die angehängten Dateien
(Original von HAL9000, nur in einem "normalen" Zip für die Windows-user)
in einen Ordner (z.b. /svn/) kopieren.

2. Fritzbox anrufen: #96*7* -> Telnet auf der Box wird gestartet.
(1x läuten lassen)

3. Ausführen "cmd" -> "telnet fritz.box", das Passwort ist das Fritzbox-Passwort.

4. mit "cd /var/media/ftp/FlashDisk-Partition-0-1/svn" in den o.a. Ordner wechseln
(Kann sein, dass bei Euch der Name der Disk anders ist.)

5. evtl. mit "./svnadmin create MeinRepository" ein Repository anlegen.
Die svnserve.conf usw... editieren...

6. die evtl. vorhandenen Repositories in den o.a. Ordner auf dem Stick kopieren
(Auf Windows lokal mit TortoiseSVN 1.4.6 angelegt)

7. mit "./svnserve -d -r ./" den SVN-Server starten,
mit "./svnserve -d -r MeinRepository" wäre nur das eine Repository sichtbar.
wie gewohnt über "svn://fritz.box/MeinRepository" in der Tortoise aufrufen.

8. Autostart für den svnserve einrichten:
"cat > /var/flash/debug.cfg
sleep 120
cd /var/media/ftp/FlashDisk-Partition-0-1/svn
./svnserve -d -r ./
cd /
[STRG-D]"
mit "cat /var/flash/debug.cfg" Überprüfen, ob's geklappt hat.
Dies ist die einzige wirkliche Änderung an der FB, der Rest läuft auf und vom Stick.
Die Wartezeit ist so lange, weil es ewig dauert, bis die FB den USB-Stick einhängt.
Die Fritzbox startet einfach normal, wenn der Stick nicht dran ist.

9. Viel Spaß beim Coden und evtl. mal ab und zu eine Sicherung der Datenbank machen, da die Flash-Sticks kein ewiges Leben haben.

10. Falls man den Autostart rausnehmen möchte, per Telnet:
"echo > /var/flash/debug.cfg
reboot"

Grüße!

FabianHu

PS: was ich vergessen hatte: Super Arbeit, funzt ausgezeichnet.
 

Anhänge

  • svnserve 03-03-2008 HAL9000.zip
    632.7 KB · Aufrufe: 136
HAL9000, wie läuft's bei den Klausuren?
Bisher ganz gut, danke der Nachfrage ;) Eine noch dann bin ich fertig :D

8. Autostart für den svnserve einrichten:
"cat > /var/flash/debug.cfg
Dabei bitte beachten, dass dieses Kommando den bisherigen Inhalt von debug.cfg komplett löscht. Nicht gut falls man z.B. den LCR Updater installiert hat. Besser wäre es "nvi /var/flash/debug.cfg" zum editieren zu verwenden. Das gibts aber leider nicht auf allen Boxen.
 
Gibt's denn irgendwo ein Howto, in dem gelistet ist, was man alles braucht, um erfolgreich eine Applikation für die FB zu kompilieren?

Noch eine Frage, weil ich es nicht testen konnte: geht der SVN-Server auch von "außen"?
a la svn://MeinTollerRouter.dyndns.org/Repository
 
So ne Art Howto gibts mein ich irgendwo im Forum... die Suche hilft dir da bestimmt weiter ;) Im wesentlichen musst du dir die Freetz-Toolchain besorgen und ./configure mit entsprechenden Parametern aufrufen. Oft brauchst du dann aber noch einiges an zusätzlicher Bastelei damit das hinhaut.
Um svn von außen erreichbar zu machen musst du den entsprechenden Port (3690) an eine Interne IP der FBF weiterleiten. Wie das geht steht auch schon im Forum. Alternativ, wenn du Freetz hast, kannst du auch svnserve fest ins image einbauen (oder einen Symlink auf die tatsächliche Position von svnserve), dropbear installieren und svn+ssh:// benutzen. Funktioniert bei mir bestens ;)
 
leute, hilfe
bin seit heute im forum, habe schon svnserve auf die 7170 installiert, würde natürlich den fernzugriff einrichten. habe allerdings keine möglichkeit gefunden. ich denke, dies würde auch einige andere interessieren
 
Am einfachsten erstellst du dir auf the-construct.com ein Image, das dir eine zweite IP auf der Box verschafft ("Virtuelle Netzwerkkarte einrichten"). Wenn du dann im Web-IF der Box den Port 3690 an die neue Adresse (normalerweise 192.168.178.253) weiterleitest kannst du von außen auf das SVN-Repository zugreifen.
 
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.