webtransmission modded by Coolphoenix & Mulder (BitTorrent client für FritzBoxen)

@OnkiDonki:
In Abhängigkeit vom Branding der Box wird transmissiondcgi aus einem der folgenden Verzeichnisse ausgeführt:
/usr/www/avm/cgi-bin
/usr/www/1und1/cgi-bin
/usr/www/avme/cgi-bin
...​
Aus diesem Grund muß DOCROOT in rc.webtransmission richtig gesetzt werden. Wenn Du /usr/www/avm setzt, funktioniert transmissiondcgi nicht, wenn es eine 1und1 gebrandete Box ist.

Im Prinzip könntest Du alle verfügbaren Brandings/Verzeichnisse unter /usr/www ausprobieren, bis es klappt. Wenn das nicht geht könnte es noch an den Dateirechten liegen.

Das Branding kannst Du auch über das Erstellen der Support Datei herausfinden:
http://fritz.box/cgi-bin/webcm?getpage=../html/support.html

z.B.: firmware_version avm​

VG. M.

PS: Wer möchte, kann beiliegende rc.webtransmission mal probieren. Ich weiß allerdings nicht, was folgender Befehl auf Originalboxen bewirkt. Also ggf. auskommentieren (mit # davor). Diese Datei enthält Stop/Star des ctlmgr.
export LD_PRELOAD=libfreetz.so.1.0.0​
 

Anhänge

  • rc.zip
    2 KB · Aufrufe: 23
Zuletzt bearbeitet:
Hurra die Weboberfläche ist erreichbar

Hallo Fox.Mulder,

der Tip mit dem richtigen Branding ist die Lösung.
Ich habe das Branding auf 1und1 geändert und nun funktioniert es.

Danke an alle Beteiligten !!!!!!!!!
 
@OnkiDonki

Da du offenbar eine 1und1 FB hast, kannst du bitte deine rc.webtransmission mal hier reinstellen?
 
rc.webtransmission für orig. Firmware 7170

Hi Stargrove1,
bei einer 7170 mit 1und1 Branding läuft folgendes rc.webtransmssion:

Beim Kopieren bitte beachten, dass unter Linux KEIN <CR><LF> SONDERN nur ein <LF> am Ende einer Zeile steht.

Code:
#!/bin/sh
umask 0000
#################################################################################
#
# Copyright (C) 2008 Christian Schmitz (itzy)
#
# Starts or stops the webtransmission daemons.
#
#
#################################################################################
#
# Set BASEDIR to match your setup
# Where is trandmissiondcgi etc.?
# if you start transmission via autostart, you must set the absolute path here (NOT $(pwd))
BASEDIR="$(pwd)"

# The file webtransmission log its output into
# this is internally set to webtransmission.log regardless what you change here
# but it might be something is outputed by the system, so the best is to leave this unchanged
LOG="$BASEDIR/webtransmission.log"

# -v0 : only log errors
# -v1 : show also some info-msg
# -v2 : display some more debug-output
# -v3 : display every possible output (if crashes happen, set to -v3 and post logoutput)
DEBUGLEVEL="-v3"

# Set to 0 have webtransmission available via the AVM webserber (default port: 80)
# Set to 1 have webtransmission available via the FREETZ webserber (default port: 81)
# Set to 2 to have both
ENABLE_FREETZ=0

# Some misc conf options below here, generally you do not need to change them

##### PROXY #####

# change to '--proxyaddress ADDRESS', e.g. '--proxyaddress 127.0.0.1'
# must be set for proxy to work. to see whether proxy is enabled, check log for 'proxy enabled'
PROXYADDRESS=""

# change to '--proxyport PORT', e.g. '--proxyport 80'
# optional, default port 80
PROXYPORT=""

# change to '--proxytype [http:socks4:socks5]', e.g. '--proxytype socks4'
# optional, default http
PROXYTYPE=""

#################################################################################
init(){

  # Create needed directories, files and links if not existent
  DIRS="$BASEDIR/upload/_completed
        $BASEDIR/config"

  for DIR in $DIRS; do
    mkdir -p "$DIR"
  done

  [ ! -d /var/tmp/webtransmission ] && mkdir /var/tmp/webtransmission
  ln -sf "$BASEDIR/upload" /var/tmp/webtransmission/

  #mkdir -p $(dirname "$LOG")

  if [ $ENABLE_FREETZ -ge 1 ]; then

    /mod/etc/init.d/rc.webcfg stop

    DOCROOT=/usr/mww

    # Remove old mounts
    while mount | grep -q $DOCROOT; do
      umount $DOCROOT > /dev/null 2>&1;
      if [ ! $? -eq 0 ]; then echo "Could not umount $DOCROOT, this won't work!"; break; fi
    done

    # Clean target wwwdir
    rm -rf /var/tmp/wwwdir

    # Copy / Link existing wwwroot into new location
  	cp -rf $DOCROOT /var/tmp/wwwdir

    # Add webtransmission's additional CGIs and site templates
    ln -sf "$BASEDIR/wwwroot" /var/tmp/wwwdir/webtransmission
    ln -sf "$BASEDIR/transmissiondcgi" /var/tmp/wwwdir/cgi-bin/
    ln -sf ../webtransmission/tmpl /var/tmp/wwwdir/cgi-bin/tmpl

    mount -o bind /var/tmp/wwwdir $DOCROOT/

    ln -fs /usr/share /var/tmp
  
    /mod/etc/init.d/rc.webcfg start

  fi

  if [ $ENABLE_FREETZ -eq 0 ] || [ $ENABLE_FREETZ -gt 1 ]; then

    # Copy / Link existing wwwroot into new location 
    DOCROOT=/usr/www/1und1

    # Remove old mounts
    while mount | grep -q $DOCROOT; do
      umount $DOCROOT > /dev/null 2>&1;
      if [ ! $? -eq 0 ]; then echo "Could not umount $DOCROOT, this won't work!"; break; fi
    done

    # Clean target wwwdir
    rm -rf /var/tmp/wwwdir_avm

    # Copy / Link existing wwwroot into new location
    cp -rf $DOCROOT /var/tmp/wwwdir_avm

    # Add webtransmission's additional CGIs and site templates
    ln -sf "$BASEDIR/wwwroot" /var/tmp/wwwdir_avm/webtransmission
    ln -sf "$BASEDIR/transmissiondcgi" /var/tmp/wwwdir_avm/cgi-bin/
    [ -f "$BASEDIR/wwwroot/css/freetz_style.css" ] &&
      ln -sf "$BASEDIR/wwwroot/css/freetz_style.css" /var/tmp/wwwdir_avm/style.css
    ln -sf /var/tmp/wwwdir_avm/webtransmission/tmpl /var/tmp/wwwdir_avm/cgi-bin/tmpl

    mount -o bind /var/tmp/wwwdir_avm $DOCROOT/

  fi

}


case "$1" in
  start)
    if "$0" status > /dev/null; then
   	echo "Webtransmission is already running"
    	exit 1
    else
    	if [ ! -d "$BASEDIR" ]; then
      		echo "BASEDIR is not properly set. Please edit $0 to match your setup"
		exit 1
    	fi
    	echo "Starting webtransmission..."
    	init
    	OLDDIR="$(pwd)"
      NICE="$(which nice)"
    	cd "$BASEDIR"	# transmissiond must be adapted in order to skip this
    	HOME="$BASEDIR" "$BASEDIR/transmissiond" $DEBUGLEVEL $PROXYADDRESS $PROXYPORT $PROXYTYPE >> "$LOG" 2>&1 &
    	exitval=$?
	    cd "$OLDDIR"
    	if [ "$exitval" -eq 0 ]; then
      		echo "Webtransmission started."
    	else
      		echo "Webtransmission failed."
      		exit $exitval
    	fi
    fi
    ;;
  stop)
    if "$0" status > /dev/null; then
    	echo -n "Stopping webtransmission..."
    	"$BASEDIR/transmissiondc" die >> "$LOG" 2>&1
    	exitval=$?
    	if [ "$exitval" -eq 0 ]; then
      		echo 'done.'
    	else
      		killall -9 transmissiond > /dev/null 2>&1
      		echo "failed."
      	exit $exitval
    	fi

      # Remove old mounts
      while mount | grep -q /usr/mww; do
        /mod/etc/init.d/rc.webcfg status | grep -q running &&
          /mod/etc/init.d/rc.webcfg stop
        umount /usr/mww > /dev/null 2>&1;
        if [ ! $? -eq 0 ]; then echo "Could not umount /usr/mww"; break; fi
        /mod/etc/init.d/rc.webcfg status | grep -q stopped &&
          /mod/etc/init.d/rc.webcfg start
      done

      while mount | grep -q /usr/www/all; do
        umount /usr/www/all > /dev/null 2>&1;
        if [ ! $? -eq 0 ]; then echo "Could not umount /usr/www/all"; break; fi
      done

    else
    	echo "Webtransmission is not running"
    	exit 1
    fi
    ;;
  status)
    "$BASEDIR/transmissiondc" status > /dev/null 2>&1
    if [ "$?" -eq 0 ]; then
    	echo "Webtransmission is running"
    	exit 0
    else 
    	echo "Webtransmission is not running"
    	exit 1
    fi
    ;;
  init)
    init
    ;;
  *)
    echo "Usage: $0 {start|stop|status}" >&2
    exit 1
    ;;
esac
exit 0

Das ganze folgend starten:

Ins Webtransmission Verzeichnis wechseln.

Code:
killall ctlmgr
./rc.webtransmission start
ctlmgr

Das wars !!!!!
 
ich hab im trunk rc.webtransmission nun so angepasst, dass es für alle laufen sollte.

wäre cool, wenn jemand mit ungefreetzter box das ganze testet. download hier

neue variable "branding" muss dementsprechend angepasst werden.
 
da es hier vielleicht noch besser passt...
so, webtransmission läuft auf 7170 mit freetz. ich hätte aber noch ein paar fragen:
- wenn man etwas bei "einstellungen" einstellt, wird das nur für den hinzugefügen torrent eingerichtet oder gelten die regeln global? heisst "torrentactive=0" dann, dass unendlich viele torrents gleichzeitig runtergeladen werden und "download=-1" unbegrenzte downloadspeed?
- in welchen ordner speichert er nun die torrents?
- kann man irgendwo einstellen, dass er eine hashprüfung nach beendigung des downloads durchführt?
- kann man irgendwo einstellen wieviele verbindungsversuche pro sekunde er durchführt?
- kann man einstellen, dass er beendete downloads in ein anderes verzeichnis verschieben soll (z.b. auf einen stick downloaden und von dort auf eine hdd verschieben?
- wie optimiere ich die downloadspeed oder hat das was mit dem problem der nicht gefundenen route zu tun?
komme insgesamt auf ca. 110kb/s download (in der summe) als absolutes maximum und nur vielleicht 20-30 verbindungen nach 10min (bei bitcomet hat man da schon 500 aufgebaut und die FB schaffts). normalerweise erreicht man bei diesen testtorrents auch locker 1MBit/s, wenn eben der client und die leitung es mitmacht, es bremst also transmission/fb.

ich erwarte keine wunder, sondern würde das ganze nur gerne optimieren, weil hier einige ja scheinbar einen download von 700kb/s schaffen. würde mir voll und ganz reichen.

und ist es eigentlich möglich, dass ich torrents, die ich schon mit bitcomet begonnen habe einfach von transmission fortsetzen lasse? sprich er müsste halt eine hash-prüfung durchführen und dann einfach den download fortsetzen. ginge das?
 
ich gehe mal davon aus, dass du die version 2.3b-svn88 benutzt.

- wenn man etwas bei "einstellungen" einstellt, wird das nur für den hinzugefügen torrent eingerichtet oder gelten die regeln global?

alles gilt global, bis auf "destination" (ich rede grad von der transmission.conf). sobald du ein torrent webtransmission hinzufügst, wird intern im torrent von transmission der pfad gespeichert. änderst du dann "destination" in der transmission.conf, gilt das nur für neue torrents. alle settings bis auf "destination" kann man auch über die weboberfläche ändern.
heisst "torrentactive=0" dann, dass unendlich viele torrents gleichzeitig runtergeladen werden und "download=-1" unbegrenzte downloadspeed?
ja
- in welchen ordner speichert er nun die torrents?
die .torrents in BASEDIR/upload, die runtergeladenen dateien in destination
- kann man irgendwo einstellen, dass er eine hashprüfung nach beendigung des downloads durchführt?
wird automatisch nach jedem piece gemacht, d.h. wenn torrent fertig ist, dann ist er auch schon gecheckt. wenn was fehlerhaft runtergeladen wurde, sieht man das beim torrent an "corrupted data" im tooltip
- kann man irgendwo einstellen wieviele verbindungsversuche pro sekunde er durchführt?
nope, is hardcoded in transmission - keine ahnung, welcher wert da ist (hat aber auch kaum auswirkungen)
- kann man einstellen, dass er beendete downloads in ein anderes verzeichnis verschieben soll (z.b. auf einen stick downloaden und von dort auf eine hdd verschieben?
das ist der "finishcall" - funktioniert aber nicht, lass lieber erst mal die finger davon, ich muss mir das mal angucken und funktionstüchtig machen
- wie optimiere ich die downloadspeed oder hat das was mit dem problem der nicht gefundenen route zu tun?
swap-datei und ext3-dateisystem, offener port, maximaler upload auf 70% des maximal möglichen, downloadrate auf 500kb/sec begrenzen (wichtig, damit eventuelle spikes nach oben nicht auftreten, die das ganze system und damit den durchschnittlichen download herunterziehen)

nicht gefundene route?
komme insgesamt auf ca. 110kb/s download (in der summe) als absolutes maximum und nur vielleicht 20-30 verbindungen nach 10min (bei bitcomet hat man da schon 500 aufgebaut und die FB schaffts). normalerweise erreicht man bei diesen testtorrents auch locker 1MBit/s, wenn eben der client und die leitung es mitmacht, es bremst also transmission/fb.

110kb/s sind schon etwas mager, es sollten schon bis zu 500kb/s drin sein (zumindest auf einer 7270). allerdings hat transmission zur zeit probleme (deshalb gibt es z.b. so viele beta-versionen von 1.41), d.h. transmission 1.4X bremst aus, sowohl im downloadspeed als auch bei der anzahl an verbindungen mit anderen peers. entweder du probierst ältere static-versionen von webtransmission (die aber evlt. nicht ganz so "hübsch" sind bzw. die ein oder andere funktion fehlt) oder muss dich erst mal damit abfinden.
ich erwarte keine wunder, sondern würde das ganze nur gerne optimieren, weil hier einige ja scheinbar einen download von 700kb/s schaffen. würde mir voll und ganz reichen.

ich schaffe ca 400-500kb/s wenn es gut läuft (spitzenwerte). ist natürlich nicht so schnell wie auf meinem desktop, dafür sehr viel effizienter und es kann 24h am tag durchlaufen ;)
und ist es eigentlich möglich, dass ich torrents, die ich schon mit bitcomet begonnen habe einfach von transmission fortsetzen lasse? sprich er müsste halt eine hash-prüfung durchführen und dann einfach den download fortsetzen. ginge das?

jep, einfach die angefangenen dateien in das dir "destination" packen und die torrents bei webtransmission hinzufügen. wenn die dateien, die incomplete sind, an der richtigen stelle liegen, führt er erst mal eine hashprüfung durch. aber das dauert schon etwas bei der fritzbox!
 
Zuletzt bearbeitet:
[Edit frank_m24: Mehrere Beiträge zusammengefasst. Man kann seine Beiträge auch editieren. Lies noch mal die Forumregeln.]
hi,

ich benutze die webtransmission-mod-by-chilli-v02 da die normale webtransmission aus dem anderen thread nicht mit dem 2.6er kernel lief. gibts ne bessere? als port habe ich den angegebenen freigegeben (ich glaube den 9090?). sonst keinen.

ich benutze übrigens die fritzbox 7170, nicht die 7270. aber eigentlich sollte auch usb 1.0 locker auf 700kb/s kommen.

das mit der route ist, wenn man das ganze aufruft, wobei im thread stand, dass das alle haben und man meinte, das man es vermutlich ignorieren könnte.

sollte ich ein anderes webtransmission benutzen als das webtransmission-mod-by-chilli-v02?

ich nutze fritzbox 7170 mit freetz 1.0.1 und der firmware 29.04.59 (bzw. dem mod davon).

[Beitrag 2:]
so, hab jetzt mal die 2.3b-svn installiert bzw. auf den stick kopiert und die autorun.sh ausgeführt.

ich vermute aber, dass meine rc.webtransmission angepasst werden müsste, da meine box eine 1und1 ist.

habe sie auch angepasst und nun bekomme ich aber

/var/media/ftp/uStor01/webtransmission # ./rc.webtransmission start
Starting webtransmission...
Dec 25 01:40:18 ctlmgr[1167]: stopped.
/bin/sh: can't load library 'libfreetz.so.1.0.0'
Webtransmission started.
/var/media/ftp/uStor01/webtransmission #
 
der speed hängt hauptsächlich vom prozessor ab, usb kommt da gar nicht in die quere. und da die 7170 verm. einen schlapperen prozessor hat und ich mich auf meine 7270 mit meinen aussagen bezogen habe, habe ich das bemerkt.

und jo, die version aus dem ersten post ist die richtige, deine ist vermutlich jahre alt ;)

und versuch mal nicht, die autorun.sh auszuführen sondern die rc.webtransmission zu editieren und dann "./rc.webtransmission start" auszuführen, um webtransmission zu starten.

bzw. folgen sie den anweisungen in der README (vor allem unterpunkt E)

gn8
 
ichhabe die autostart nun nicht mehr benutzt. bekomme aber
/var/media/ftp/uStor01/webtransmission # ./rc.webtransmission start
Starting webtransmission...
Dec 25 01:40:18 ctlmgr[1167]: stopped.
/bin/sh: can't load library 'libfreetz.so.1.0.0'
Webtransmission started.
/var/media/ftp/uStor01/webtransmission #

ich habe in der transmission.conf übrigens den port von "12345" auf "9090" geändert. also sollte das interface doch über http://ip-router:9090/cgi-bin/transmissiondcgi erreichbar sein, richtig?
alternativ welche ports könnte/müsste ich probieren?

oder hängt das mit dem libfreetz problem zusammen?

kriege beim starten einfach immer
/var/media/ftp/uStor01/webtransmission # ./rc.webtransmission start
/bin/sh: can't load library 'libfreetz.so.1.0.0'
/var/media/ftp/uStor01/webtransmission #

wie gesagt, benutze (da ich 1und1 fritzbox habe) die rc.webtransmission von OnkiDonki!


p.s.: empfiehlst du mir eigentlich nicht die aktuelle 1.40 zu nehmen, sondern die eins davor oder soll man trotzdem lieber die aktuelle nutzen?
 
Zuletzt bearbeitet:
Ins Webtransmission Verzeichnis wechseln.

Code:
killall ctlmgr
./rc.webtransmission start
ctlmgr

Das wars !!!!!

Vielen Dank, hab deine Datei verwendet und wenn ich es recht sehe läuft webtransmission auch, ich hab nur noch eine Meldung beim Starten die ich nicht verstehe:

Code:
# ./rc.webtransmission start
Starting webtransmission...
./rc.webtransmission: line 203: which: not found
Webtransmission started.

Was will mir diese Meldung sagen?

EDIT: Ich habe ein weiteres Problem im Webinterface. Bei Active Torrents steht:

Link: status_leech.tmplLink: status_leech.tmplLink: status_leech.tmpl

Und nach jedem Torrent steht:

Link: status_leech.tmpl
oder
Link: status_done(seed).tmpl

anstelle von den eigentlichen Informationen wie Größe, DL, UL, Ready, usw.

Was könnte das sein? Die Templates sind allerdings vorhanden.

Edit:
Ich habe die 1.34 probiert, hier kommt das Webinterface komplett.
 
Zuletzt bearbeitet:
@officiallyme:
Der eingestellte Port ist nicht für das Webinterface, sondern für den Datenaustausch mit dem Internet. Der muß auch entsprechend für Internet freigeschaltet werden. Am besten mit 'nem ALT prüfen, welcher anzeigt, ob man connectable ist. Dafür muß ein Torrent dieses Trackers aktiv sein.

AVM Webinterface:
Freetz Webinterface:

@Stargrove1:
line 203: which: not found bedeutet, dass der Befehl which nicht verfügbar ist. Sollte aber unproblematisch sein.

Du könntes evtl. auch die letzte rc.webtransmission von coolphoenix ausprobieren.
http://www.ip-phone-forum.de/showpost.php?p=1238774&postcount=245

VG. M.
 
Zuletzt bearbeitet:
@Stargrove1:
line 203: which: not found bedeutet, dass der Befehl which nicht verfügbar ist. Sollte aber unproblematisch sein.

Du könntes evtl. auch die letzte rc.webtransmission von coolphoenix ausprobieren.
http://www.ip-phone-forum.de/showpost.php?p=1238774&postcount=245

VG. M.

Hab ich probiert, aber ich habs nicht zum Laufen bekommen, dann aber auch nicht weiter probiert.
Das which stört mich auch nicht sehr solange der rest geht :eek:) viel mehr stört mich das zum Teil fehlende Web Interface der 1.40.

Grüße und danke das ihr mich ertragt ;o)
SG1
 
@ stargrove: was für fehler kamen, als du meine rc.webtransmission benutzt hast? zum testen kannst du es auch mit "sh -x rc.webtransmission start" ausführen, damit man sieht, was er macht und woran es hapert.

das fehlende webiface liegt daran, dass du die datei nicht unter linux oder nicht auf ein ext3-dateisystem enpackt hast. damit gehen die links nicht.

@ mulder

vielleicht sollte man das nochmal extra dick fett am besten pink, damit es jeder sieht, im ersten posting erwähnen
 
@ stargrove: was für fehler kamen, als du meine rc.webtransmission benutzt hast? zum testen kannst du es auch mit "sh -x rc.webtransmission start" ausführen, damit man sieht, was er macht und woran es hapert.

das fehlende webiface liegt daran, dass du die datei nicht unter linux oder nicht auf ein ext3-dateisystem enpackt hast. damit gehen die links nicht.

Ich weiß ja das ihr alle das ext3 bevorzugt, aber bisher ging alles mit fat32 und da ich Linux nur auf der FB will ich nach Möglichkeit nicht umstellen müssen.

Warum ging es denn unter 1.34 und warum klappt auch der Rest des Webinterfaces, es fehlt ja nur ein kleiner Teil? Kann man da nichts machen?

Dein RC kann ich nochmal testen und dir die Ausgabe zur Verfügung stellen:
Code:
Fritz!Box web password:


BusyBox v1.8.2 (2008-08-19 14:56:32 CEST) built-in shell (ash)
Enter 'help' for a list of built-in commands.

ermittle die aktuelle TTY
tty is "/dev/pts/0"
Console Ausgaben auf dieses Terminal umgelenkt
# cd /var/media/ftp/TOSHIBA-MK1646GSX-01/webtransmission_1.34
# killall ctlmgr
# sh -x rc.webtransmission start
+ umask 0000
+ pwd
+ BASEDIR=/var/media/ftp/TOSHIBA-MK1646GSX-01/webtransmission_1.34
+ LOG=/var/media/ftp/TOSHIBA-MK1646GSX-01/webtransmission_1.34/webtransmission.log
+ DEBUGLEVEL=-v1
+ ENABLE_FREETZ=0
+ BRANDING=1und1
+ PROXYADDRESS=
+ PROXYPORT=
+ PROXYTYPE=
+ rc.webtransmission status
rc.webtransmission: line 1: rc.webtransmission: not found
+ [ ! -d /var/media/ftp/TOSHIBA-MK1646GSX-01/webtransmission_1.34 ]
+ echo Starting webtransmission...
Starting webtransmission...
+ init
+ DIRS=/var/media/ftp/TOSHIBA-MK1646GSX-01/webtransmission_1.34/upload/_completed
    /var/media/ftp/TOSHIBA-MK1646GSX-01/webtransmission_1.34/config
+ mkdir -p /var/media/ftp/TOSHIBA-MK1646GSX-01/webtransmission_1.34/upload/_completed
+ mkdir -p /var/media/ftp/TOSHIBA-MK1646GSX-01/webtransmission_1.34/config
+ [ ! -d /var/tmp/webtransmission ]
+ ln -sf /var/media/ftp/TOSHIBA-MK1646GSX-01/webtransmission_1.34/upload /var/tmp/webtransmission/
+ which dirname
+ [ 0 -ge 1 ]
+ [ 0 -eq 0 ]
+ ctlmgr -s
+ DOCROOT=/usr/www/1und1
+ mount
+ grep -q /usr/www/1und1
+ umount /usr/www/1und1
+ [ ! 0 -eq 0 ]
+ mount
+ grep -q /usr/www/1und1
+ [ ! -d /var/tmp/wwwdir_avm ]
+ rm -rf /var/tmp/wwwdir_avm/apple-touch-icon.png /var/tmp/wwwdir_avm/cgi-bin /var/tmp/wwwdir_avm/einstellungen /var/tmp/wwwdir_avm/errors /var/tmp/wwwdir_avm/favicon.ico /var/tmp/wwwdir_avm/html /var/tmp/wwwdir_avm/index.html /var/tmp/wwwdir_avm/inhalt /var/tmp/wwwdir_avm/style.css /var/tmp/wwwdir_avm/webtransmission
+ cp -rf /usr/www/1und1/apple-touch-icon.png /usr/www/1und1/cgi-bin /usr/www/1und1/einstellungen /usr/www/1und1/errors /usr/www/1und1/favicon.ico /usr/www/1und1/html /usr/www/1und1/index.html /usr/www/1und1/inhalt /var/tmp/wwwdir_avm/
+ ln -sf /var/media/ftp/TOSHIBA-MK1646GSX-01/webtransmission_1.34/wwwroot /var/tmp/wwwdir_avm/webtransmission
+ ln -sf /var/media/ftp/TOSHIBA-MK1646GSX-01/webtransmission_1.34/transmissiondcgi /var/tmp/wwwdir_avm/cgi-bin/
+ [ -f /var/media/ftp/TOSHIBA-MK1646GSX-01/webtransmission_1.34/wwwroot/css/freetz_style.css ]
+ ln -sf /var/media/ftp/TOSHIBA-MK1646GSX-01/webtransmission_1.34/wwwroot/css/freetz_style.css /var/tmp/wwwdir_avm/style.css
+ ln -sf /var/tmp/wwwdir_avm/webtransmission/tmpl /var/tmp/wwwdir_avm/cgi-bin/tmpl
+ mount -o bind /var/tmp/wwwdir_avm /usr/www/1und1/
+ export LD_PRELOAD=libfreetz.so.1.0.0
+ ctlmgr
ctlmgr: can't load library 'libfreetz.so.1.0.0'
+ pwd
+ OLDDIR=/var/media/ftp/TOSHIBA-MK1646GSX-01/webtransmission_1.34
+ which nice
+ NICE=
+ cd /var/media/ftp/TOSHIBA-MK1646GSX-01/webtransmission_1.34
+ exitval=0
+ cd /var/media/ftp/TOSHIBA-MK1646GSX-01/webtransmission_1.34
+ [ 0 -eq 0 ]
+ echo Webtransmission started.
Webtransmission started.
+ exit 0
# + HOME=/var/media/ftp/TOSHIBA-MK1646GSX-01/webtransmission_1.34 /var/media/ftp/TOSHIBA-MK1646GSX-01/webtransmission_1.34/transmissiond -v1
Wenn ich danach von Hand ctlmgr starte kommt das Webinterface, ebenfalls mit fehlenden Infodaten.

ist.jpg


Funktionierende rc.webtransmission:

Code:
#!/bin/sh
umask 0000
#################################################################################
#
# Copyright (C) 2008 Christian Schmitz (itzy)
#
# Starts or stops the webtransmission daemons.
#
#
#################################################################################
#
# Set BASEDIR to match your setup
# Where is trandmissiondcgi etc.?
# if you start transmission via autostart, you must set the absolute path here (NOT $(pwd))
BASEDIR="$(pwd)"

# The file webtransmission log its output into
# this is internally set to webtransmission.log regardless what you change here
# but it might be something is outputed by the system, so the best is to leave this unchanged
LOG="$BASEDIR/webtransmission.log"

# -v0 : only log errors
# -v1 : show also some info-msg
# -v2 : display some more debug-output
# -v3 : display every possible output (if crashes happen, set to -v3 and post logoutput)
DEBUGLEVEL="-v3"

# Set to 0 have webtransmission available via the AVM webserber (default port: 80)
# Set to 1 have webtransmission available via the FREETZ webserber (default port: 81)
# Set to 2 to have both
ENABLE_FREETZ=0

# Some misc conf options below here, generally you do not need to change them

##### PROXY #####

# change to '--proxyaddress ADDRESS', e.g. '--proxyaddress 127.0.0.1'
# must be set for proxy to work. to see whether proxy is enabled, check log for 'proxy enabled'
PROXYADDRESS=""

# change to '--proxyport PORT', e.g. '--proxyport 80'
# optional, default port 80
PROXYPORT=""

# change to '--proxytype [http:socks4:socks5]', e.g. '--proxytype socks4'
# optional, default http
PROXYTYPE=""

#################################################################################
init(){

  # Create needed directories, files and links if not existent
  DIRS="$BASEDIR/upload/_completed
        $BASEDIR/config"

  for DIR in $DIRS; do
    mkdir -p "$DIR"
  done

  [ ! -d /var/tmp/webtransmission ] && mkdir /var/tmp/webtransmission
  ln -sf "$BASEDIR/upload" /var/tmp/webtransmission/

  #mkdir -p $(dirname "$LOG")

  if [ $ENABLE_FREETZ -ge 1 ]; then

    /mod/etc/init.d/rc.webcfg stop

    DOCROOT=/usr/mww

    # Remove old mounts
    while mount | grep -q $DOCROOT; do
      umount $DOCROOT > /dev/null 2>&1;
      if [ ! $? -eq 0 ]; then echo "Could not umount $DOCROOT, this won't work!"; break; fi
    done

    # Clean target wwwdir
    rm -rf /var/tmp/wwwdir

    # Copy / Link existing wwwroot into new location
  	cp -rf $DOCROOT /var/tmp/wwwdir

    # Add webtransmission's additional CGIs and site templates
    ln -sf "$BASEDIR/wwwroot" /var/tmp/wwwdir/webtransmission
    ln -sf "$BASEDIR/transmissiondcgi" /var/tmp/wwwdir/cgi-bin/
    ln -sf ../webtransmission/tmpl /var/tmp/wwwdir/cgi-bin/tmpl

    mount -o bind /var/tmp/wwwdir $DOCROOT/

    ln -fs /usr/share /var/tmp
  
    /mod/etc/init.d/rc.webcfg start

  fi

  if [ $ENABLE_FREETZ -eq 0 ] || [ $ENABLE_FREETZ -gt 1 ]; then

    # Copy / Link existing wwwroot into new location 
    DOCROOT=/usr/www/1und1

    # Remove old mounts
    while mount | grep -q $DOCROOT; do
      umount $DOCROOT > /dev/null 2>&1;
      if [ ! $? -eq 0 ]; then echo "Could not umount $DOCROOT, this won't work!"; break; fi
    done

    # Clean target wwwdir
    rm -rf /var/tmp/wwwdir_avm

    # Copy / Link existing wwwroot into new location
    cp -rf $DOCROOT /var/tmp/wwwdir_avm

    # Add webtransmission's additional CGIs and site templates
    ln -sf "$BASEDIR/wwwroot" /var/tmp/wwwdir_avm/webtransmission
    ln -sf "$BASEDIR/transmissiondcgi" /var/tmp/wwwdir_avm/cgi-bin/
    [ -f "$BASEDIR/wwwroot/css/freetz_style.css" ] &&
      ln -sf "$BASEDIR/wwwroot/css/freetz_style.css" /var/tmp/wwwdir_avm/style.css
    ln -sf /var/tmp/wwwdir_avm/webtransmission/tmpl /var/tmp/wwwdir_avm/cgi-bin/tmpl

    mount -o bind /var/tmp/wwwdir_avm $DOCROOT/

  fi

}


case "$1" in
  start)
    if "$0" status > /dev/null; then
   	echo "Webtransmission is already running"
    	exit 1
    else
    	if [ ! -d "$BASEDIR" ]; then
      		echo "BASEDIR is not properly set. Please edit $0 to match your setup"
		exit 1
    	fi
    	echo "Starting webtransmission..."
    	init
    	OLDDIR="$(pwd)"
      NICE="$(which nice)"
    	cd "$BASEDIR"	# transmissiond must be adapted in order to skip this
    	HOME="$BASEDIR" "$BASEDIR/transmissiond" $DEBUGLEVEL $PROXYADDRESS $PROXYPORT $PROXYTYPE >> "$LOG" 2>&1 &
    	exitval=$?
	    cd "$OLDDIR"
    	if [ "$exitval" -eq 0 ]; then
      		echo "Webtransmission started."
    	else
      		echo "Webtransmission failed."
      		exit $exitval
    	fi
    fi
    ;;
  stop)
    if "$0" status > /dev/null; then
    	echo -n "Stopping webtransmission..."
    	"$BASEDIR/transmissiondc" die >> "$LOG" 2>&1
    	exitval=$?
    	if [ "$exitval" -eq 0 ]; then
      		echo 'done.'
    	else
      		killall -9 transmissiond > /dev/null 2>&1
      		echo "failed."
      	exit $exitval
    	fi

      # Remove old mounts
      while mount | grep -q /usr/mww; do
        /mod/etc/init.d/rc.webcfg status | grep -q running &&
          /mod/etc/init.d/rc.webcfg stop
        umount /usr/mww > /dev/null 2>&1;
        if [ ! $? -eq 0 ]; then echo "Could not umount /usr/mww"; break; fi
        /mod/etc/init.d/rc.webcfg status | grep -q stopped &&
          /mod/etc/init.d/rc.webcfg start
      done

      while mount | grep -q /usr/www/all; do
        umount /usr/www/all > /dev/null 2>&1;
        if [ ! $? -eq 0 ]; then echo "Could not umount /usr/www/all"; break; fi
      done

    else
    	echo "Webtransmission is not running"
    	exit 1
    fi
    ;;
  status)
    "$BASEDIR/transmissiondc" status > /dev/null 2>&1
    if [ "$?" -eq 0 ]; then
    	echo "Webtransmission is running"
    	exit 0
    else 
    	echo "Webtransmission is not running"
    	exit 1
    fi
    ;;
  init)
    init
    ;;
  *)
    echo "Usage: $0 {start|stop|status}" >&2
    exit 1
    ;;
esac
exit 0
 
Zuletzt bearbeitet:
das mit meiner rc.webtransmission sieht doch gut aus, der fehler mit der fehlenden libfreetz sollte eigentlich nicht stören (oder wir das webiface nicht gestartet?).

ich update sie mal (morgen oder so), sollte dann ohne fehlermeldung funktionieren.

und zur sache mit den fehlenden informationen im webiface:

es gibt fuenf dateien, glaube ich, in denen steht 100% das gleiche drin. ändere ich was in der einen, müsste ich eigentlich auch in allen anderen vier das gleiche ändern. das macht so kein spaß ;) deshalb ist die lösung: vier der dateien sind links auf die fünfte. d.h., sie nehmen sich einfach den inhalt aus der fuenften, wenn man sie aufruft, in ihnen steht aber in wirklichkeit nichts davon drin. so muss man nur in einer datei was ändern, um in allen fünf was zu ändern, und niemand merkt davon was. super sache.

nun der haken: ntfs oder fat32 kennen das so nicht! d.h., versucht man das archiv dort zu entpacken, hängt es vom entpacker ab, was passiert. manchmal verschwinden diese links/dateien einfach. manchmal steht in den dateien (so wie bei dir) einfach "link to ..." oder manchmal, was prinzipiell ganz schlau ist, kopiert der entpacker die gelinkte datei einfach und erstellt fünf mal die gleiche datei. in allen fällen müsste er aber eigentlich eine warnung/fehlermeldung geben, k.a. ob das passiert.

d.h., entweder du suchst in dem archiv alle links (die müsste dein entpacker auch als links anzeigen) und kopierst die quelle x mal, damit alle links wieder dateien sind (vielleicht gibt es ja beim entpacker einfach eine option dafür) oder du benutzt doch ext3 (welches auch unter windows funktioniert). wir können fat32 nicht supporten, da es mit fat32 performance-probleme bzw. abstürze gibt/geben kann. aber jeder kann natürlich machen, was er will :)
 
Hab ich soweit gepeilt ... aber warum hatte ich das Problem nicht bei der 1.34?

Edit:

Ich hab mal richtig unschön alle falsch bzw. nicht gelinkten Dateien von Hand kopiert und wie erwartet geht das Interface so.
 
Zuletzt bearbeitet:
es funzt endlich!
danke euch für die hilfestellungen! hat etwas gedauert und war nicht so einfach, aber nun funzt es endlich.

allerdings habe ich das gefühl, das es nicht richtig in die gänge kommt. hat irgendwann sogar angehalten. eventuell sind irgendwelche einstellungen noch falsch.

ausserdem stürzt es immer wieder ab bzw. killed die FB komplett, obwohl swap funktioniert.

wofür steht eigenltich "flash led=7,3"?
 
Zuletzt bearbeitet:
@ stargrove

ich glaube bei der 1.34 gab es diese links noch nicht, wurde erst mit der 1.40 eingeführt.

aber gut, dass es nun funzt ;)

@ officiallyme

flash led funktioniert leider nicht, sollte eigentlich z.b. die info-led zum blinken bringen, wenn alle dls fertig sind oder so - einfach getrost ignorieren :)

und zu den abstürzen:
hast du ext2/3-dateisystem? wenn nein dann liegen die abstürze mit ziemlicher sicherheit daran, da ein anderes dateisystem die cpu-last der fbox erhöht und dadurch abstürze verursachen kann.

hast du den dl begrenzt (~500kb/s)? wenn ja, eventuelle noch runter damit, da du ja "nur" ne 7170 hast --> mehr download, mehr cpu-last, mehr abstürze.

und zu dem in die gänge kommen: ja, transmission hat zur zeit probleme. es gibt nun aber schon version 1.42, bei der es mindestens besser laufen sollte (hab es aber selbst noch nicht getestet, um konkrete aussagen treffen zu können, gerade erst fertig kompiliert). webtransmission lässt sich damit auch schon bauen. muss mulder wohl wieder ne neue static bauen und im ersten post veröffentlich :)
 
naja, ich nutze ja die 1.34 da die 1.40 sich nicht entpacken lässt (gibts was verbessertes in der 1.40?).
und ich benutze ext2, denn damit läuft ctorrent überhaupt erst und ich wollte ja beides testen (natürlich nie gleichzeitig aktiv).

ich habe den download nicht begrenzt, aber der download erreicht in der summe nichtmal 200kb/s. ausserdem stürzt es ja nach 2min ab.
bei gleichen settings läuft ctorrent aber locker 30min und länger bevor es abstürzt.

kommt es bei dur/euch auch immer wieder zu abstürzen oder läuft das ganze normalerweise non-stop 24/7 mit der fritzbox durch?
könnte man irgendwie die zugewiesene cpu-nutzung reduzieren, sprich dem ganzen eine niedrigere priorität geben oder auf 70% der cpu-leistung reduzieren, um sicherzugehen, das es nicht zum crash kommt? wenn er dadurch langsamer wird ist es auch egal, aber wenn alle paar minuten das ding abstürz dann bringen auch 50kb mehr nix ;)

oder könnte man eventuell die anzahl gleichzeitig aufzubauender verbindungen reduzieren, denn das soll doch angeblich extrem resourcen fressen. dann soll er halt langsamer aufbauen.


p.s.: gibts nen befehl, mit dem ich die aktuelle cpu last einsehen kann? oder nur im fritzbox hauptmenu?
 

Zurzeit aktive Besucher

Statistik des Forums

Themen
246,172
Beiträge
2,247,422
Mitglieder
373,715
Neuestes Mitglied
wesleymoons87
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.