Du bist nicht angemeldet.
Ich habe folgende Ausagangsituation
Fritzbox 7490 mit aktuellen Fritzload
Einstellungen / Download/Upload / Downloadverzeichnis: /var/media/ftp/HDD1/Temp
Entpacken / Einstellungen / Entpacken nach: /var/media/ftp/HDD1/Downloads
Soweit funktioniert auch alles, nach dem Download von Archiven werden diese in den Ordner Downloads verschoben. Jetzt habe ich allerdings noch eine zweite HDD angeschlossen und würde gerne einige selten genutzte Daten aus dem Downloads-Verzeichnis auf die zweite HDD verschieben.
Wenn ich versuche per FRITZ.NAS GUI Dateien / Ordner per Ausschneiden / Einfügen zu verschieben bekomme ich eine Fehlermeldung: "Fehler beim Einfügen. Sie können keine Daten über Partitionsgrenzen hinweg verschieben."
Nun möchte ich aber auch nicht unnötigerweise mit meinem Laptop per WLAN die Daten per CIFS-Freigabe von A nach B verschieben, sondern dachte mir, es wäre sinnvoll wenn die Fritzbox das selbsständig machen würde, das geht mit Sicherheit schneller und es muss kein weiteres Gerät an sein.
Mein erster Gedanke war mich per Telnet mit der Box zu verbinden, aber da habe ich dann das Problem, dass vermutlich der Kopiervorgang abbricht, wenn die Netzwerkverbindung getrennt wird. Deshalb habe ich überlegt ob das ganze per Fritzload zu realisieren wäre. Dort habe ich ja unter Download-Optionen die NAS Funktionen und Downloadübertragung, aber so wie ich das sehe betrifft das nur neue Downloads oder hat jemand eine Idee wie ich das Verschieben händisch starte?
Abwesend
Mein erster Gedanke war mich per Telnet mit der Box zu verbinden, aber da habe ich dann das Problem, dass vermutlich der Kopiervorgang abbricht, wenn die Netzwerkverbindung getrennt wird.
Richtig, der Vorgang wird abgebrochen wenn die Telnet-Session geschlossen wird.
Es gibt aber screen, damit würde es im Hintergrund weiter laufen.
Man müsste jedoch das binary mit ins FL aufnehmen, wenn es nicht schon dabei ist.
FB7490 - FritzLoad@USB
Abwesend
Das kleine Tool delay sollte von Hause aus bei deiner Fritzbox dabei sein und für deine Zwecke geeignet sein.
Abwesend
Wie funktioniert das?
roadman, kannst Du dazu evtl. die manpage linken?
Danke
FB7490 - FritzLoad@USB
Abwesend
http://www.wehavemorefun.de/fritzbox/Delay
delay -d 0 MYSCRIPT /bin/ash /pfad/zu/dem/skript.sh
Du kannst einen Befehl auch mit 0 Sekunden Verzögerung starten. Wahrscheinlich bietet sich ein Shell Script an.
Der Befehl wird dann auch weiter ausgeführt, wenn die Telnet Session beendet wird.
Der Beitrag wurde geändert von roadman17 (am 16. Jul. 2015 um 13:23 Uhr)
Abwesend
Das Standardwerkzeug wäre doch wohl nohup, das müsste doch auch an Bord sein:
http://www.wehavemorefun.de/fritzbox/Nohup
Also beispielsweise:
nohup mv /var/media/ftp/HDD1/Quelle/* /var/media/ftp/HDD2/Ziel/ > movefiles.log 2> movefiles.err &
Die Umleitungen schreiben die normale Bildschirmausgabe in ein Logfile und eventuelle Fehlermeldungen in ein Fehlerlog; der Ampersand am Schluss lässt den Prozess im Hintergrund laufen (in der Telnet-Session kommt also nach Eingabe des Kommandos sofort der normale Prompt zurück, die Session kann beendet werden, der Prozess läuft weiter).
Fritz!Box 7362 SL - FRITZ!OS 06.30 - freetz-trunk - Fritz!Load@USB
Abwesend
nohub und delay klingt schon mal vielversprechend.
Weiß jemand ob es eine Möglickkeit gibt Scripte in die Weboberfläche einzubinden?
Ich stell mir das so vor:
Im Reiter Dateien markiere ich ein oder mehrere Dateien/Ordner und wähle dann einen Befehl aus der Dropdownbox (evt. sogar Umbennenen/Verschieben, der scheint eh nicht zu funktionieren)
Im Hintergrund wird dann ein Script (das ich noch schreiben müsste) mit den markierten Dateien/Ordnern als Parameter aufgerufen.
Abwesend
Du willst nur Dateien aus dem FL Download Ordner woanders hin verschieben?
Der Verschieben Befehl funktioniert da gar nicht? (nutze das nie, sollte doch aber eigentlich genau das machen).
Abwesend
Unter dem Reiter Dateien hat die Funktion - Umbenennen/ verschieben : Ausführen, leider noch nie funktioniert...
FRITZ!Box Fon WLAN 7390 (UI)
FRITZ!OS 06.20
FritzLoad@USB(FAT32)
Abwesend
@roles0815 So wie es aussieht funktioniert das nicht.
Laut TSB ein Problem bei der Umstellung der Webgui: Dateien umbenennen
Hier noch was dazu gefunden, auch der Wunsch von D3LL (im Prinzip genau das was ich möchte)
Wunsch: Möglichkeit zum Auslösen des Verschieben-Befehls
Dateibrowser (gui_ftp) - Fehler beim Umbenennen/Verschieben
Der Beitrag wurde geändert von schlawiener (am 28. Jul. 2015 um 08:48 Uhr)
Abwesend
Ok,
um das ursprüngliche Problem zu lösen (Umbennen nicht möglich), muss in der Datei cgi\gui_ftp.cgi die Zeile
<input type=submit name=doAction value="Ausführen" >
geändert werden in
<input type=submit name=doAction value="Ausführen" onclick="if(document.FritzLoad.action.value == 'Rename') { promptfilename(); }">
Dann habe ich noch ein paar weitere Änderungen vorgenommen, mit der ich in der Lage bin, mehre Dateien / Ordner zu markieren und diese im Hintergrund auf meine Backup-Festplatte zu verschieben.
Ich habe die Auswahlbox um einen Eintrag "Archivieren" erweitert.
<option value=Archive>Archivieren</option>
Dann eine Behandlung für die Action Archive hinzufügt
elif [ "$Q_action" = Archive ];then
echo "<pre class=msg>"
if [ -z "$transferDir" ]; then
echo "Zielverzeichnis (Einstellungen -> Downloadoptionen -> Zielverzeichnis (lokal eingehängt)) nicht konfiguriert."
elif ! [ -d "$transferDir" ]; then
echo "Zielverzeichnis $transferDir existiert nicht. Bitte konfigurieren unter (Einstellungen -> Downloadoptionen -> Zielverzeichnis (lokal eingehängt))"
else
sfiles=$(urldecode "$Q_sfile")
echo "Archiviere nach $transferDir im Hintergrund:<br>"
oldIFS=$IFS;export IFS=$N
for sfile in $sfiles;do
export IFS=$oldIFS
sfile2=$(realpath "$sfile")
if [ -f "$sfile2" ] || [ -d "$sfile2" ]; then
info=$(du -hs "$sfile2")
echo "* $info"
else
echo "Überspringe $sfile2 - Keine Datei oder Verzeichnis"
fi
done
export IFS=$oldIFS
nohup $pdir/cgi/archive_web.sh $transferDir "$sfiles" &
echo "<br>Bitte warten und UnRAR-Logs überprüfen, falls Verschieben nicht erfolgreich."
fi
echo "</pre>"
Aufgerufen wird die Datei "archive_web.sh" die erstellt werden muss
#!/bin/ash
# Copyright (c) 2015 SchlaWiener
pdir=$(pwd)/..
. $pdir/bin/BBox
. $pdir/config/fritzload.ini
. $pdir/lib/util_file.sh
. $pdir/lib/util_rar.sh
transferDir=$1
sfiles=$2
echo "ARCHIVE: $transferDir" >> $pdir/log/unrar.log
echo "$sfiles" >> $pdir/log/unrar.log
oldIFS=$IFS;export IFS=$N
for sfile in $sfiles;do
export IFS=$oldIFS
sfile2=$(realpath "$sfile")
if [ -f "$sfile2" ] || [ -d "$sfile2" ]; then
echo "$(date +'%d.%m.%Y %H:%M:%S') ARCHIVE: $sfile2" >> $pdir/log/unrar.log
mv "$sfile2" "$transferDir/" >> $pdir/log/unrar.log 2>&1
echo "$(date +'%d.%m.%Y %H:%M:%S') ARCHIVE: $sfile2 fertig (Ergebnis: $?)." >> $pdir/log/unrar.log
else
echo "$(date +'%d.%m.%Y %H:%M:%S') ARCHIVE: Überspringe $sfile2 - Keine Datei oder Verzeichnis" >> $pdir/log/unrar.log
fi
done
export IFS=$oldIFS
echo "ARCHIVE ist fertig." >> $pdir/log/unrar.log
exit 0
Ich habe bei mir in den Einstellungen -> Downloadoptionen -> Zielverzeichnis (lokal eingehängt) auf meine zweite Platte gesetzt, da ich das nicht anderweitig nutze.
Das Verschieben wird im Hintergrund durchgeführt. Damit ich den Status kontrollieren kann, schreibe ich in die unrar.log, die kann ich ja in der GUI sehen.
Bei mir auf einer 7490 getestet und funktioniert super. Jetzt habe ich wieder Platz auf meiner Platte :-)
Hier die beiden angepassten Dateien als Pastbin:
gui_ftp.cgi
archive_web.sh
Abwesend