ftp Download mit wget

Status
Für weitere Antworten geschlossen.

gerdk

Benutzer
Mitglied seit
24. Jan 2011
Beiträge
85
Punkte für Reaktionen
0
Punkte
0
Hallo zusammen,

nachdem mir in der "vor Kauf" Sektion sehr viel geholfen wurde, habe ich eine DS 111 erstanden. In weiterer Folge hat sich die "Fragenlage" so stark verändert, dass ich mich entschlossen habe diese Problematik hier weiterzuführen. Ich denke, andere Benutzer könnte dies auch interessieren.

Worum gehts? Ich möchte von meinem Topfield Festplattenreceiver Filme auf die DS ziehen um sie in weiterer Folge im Netzwerk zum Streamen zur Verfügung zu stellen. Hört sich vielleicht einfach an, hat aber ein paar Haken.

1. Der Topf ist nur via ftp zu erreichen
2. Die Dateiendung ist "rec", damit können die üblichen Player nichts anfangen. Benennt man die Endungen auf zB. "ts" um funktionieren sie.
3. Die bereits gezogenen Dateien sollen auf dem Topf gelöscht werden.
4. Idealerweise erfolgt eine "Vollzugsmeldung" via Mail
5. Das ganze sollte Zeitgesteuert als Script ablaufen.

Wie weit bin ich:
* den Kontakt kann ich mittels ftp Clients problemlos herstellen.
* Umbenennen ist ein normaler internen Befehl - problemlos
* Löschen via ftp - ungelöst
* Mail - ungelöst
* Zeitsteuerung sollte ein Cronejob werden - sollte kein Problem sein

Momentan hänge ich bei "wget". Es gelingt mir nicht den Topfield zur Kooperation zu bewegen. Ein Download mit der Downloadstation klappt aber problemlos: URL und Zugangsdaten eingeben -> problemlos. Wenn ich jedoch die selben "Daten", die unter den Eigenschaften stehen mittels wget versuche habe ich keinen Erfolg.

Konkret habe ich folgende Basis versucht: wget ftp://user Receiver:passwort Receiver@IP Receiver/DataFiles/Test/Test1.rec

Der letzte Teil stellt die Verzeichnisstruktur des Receivers dar. Ich hoffe die Angelegenheit nicht zu konfus dargestellt zu haben.

Danke im voraus für eure Unterstützung
Gerd
 

Trolli

Benutzer
Mitglied seit
12. Jul 2007
Beiträge
9.848
Punkte für Reaktionen
1
Punkte
0
Wäre es nicht am einfachsten, wenn Du dir auf der DS über IPKG einen FTP-Client installierst? Den kann man dann doch bestimmt einfacher über einen cronjob ansprechen als mit wget. Auch das Löschen wäre dann kein Problem...
Rich (BBCode):
cmdftp - 0.9.7-1 - cmdftp is a tiny command line FTP client that features shell-like functions, passive mode, local and remote transparent modes,
ftpcopy - 0.6.7-3 - A simple FTP client written to copy files or directories (recursively) from a FTP server.
ftpd-topfield - 0.7.7-0 - FTPD for the Topfield TF5000PVRt
lftp - 4.1.2-1 - Sophisticated ftp/http client, file transfer program supporting a number of network protocols.
ncftp - 3.2.4-1 - Nice command line FTP client
 

Merthos

Benutzer
Mitglied seit
01. Mai 2010
Beiträge
2.709
Punkte für Reaktionen
1
Punkte
84
Hier hatte ich schon mal ein paar "Pointer" zur FTP-Automatisierung gegeben.
 

gerdk

Benutzer
Mitglied seit
24. Jan 2011
Beiträge
85
Punkte für Reaktionen
0
Punkte
0
.. danke für die schnellen Antworten - jetzt hab' ich fürs erste etwas Lesestoff. Da ich absoluter Linuxneuling bin möchte ich mich der Sache mit dem nötigen Respekt nähern. Oder anders rum: momentan bevorzuge ich eher die "Boardmittel", als mich auf neue "Abenteuer" einzulassen. Ich möchte mich einfach nicht verzetteln und am Ende eine komplett "zerschossene" DS haben.

Aktuell wurmt es mich, dass ich mit wget keinen Zugriff kriege, mit der Downloadstation aber schon - besonders, wo ich eigentlich die selben Parameter verwende. In einem Ubuntu Forum habe ich gelesen, dass sich wget auch unter anderen "Namen" anmelden kann - der Versuch hat aber auch nichts gebracht - fluch! (Es würde mich nicht wundern, wenn wget hinter der Downloadstation stehen würde)

Ganz nebenbei: der TF5000 hat keinen LAN Anschluss - funktioniert der Client trotzdem?

Wie dem auch sei - Danke
Bis dann
Gerd
 

Merthos

Benutzer
Mitglied seit
01. Mai 2010
Beiträge
2.709
Punkte für Reaktionen
1
Punkte
84
Spätestens das Löschen geht nicht mehr mit wget, von daher ist dieser Zwischenschritt nicht sooo hilfreich.

"Zerschießen" kann man die DS mit IPKG und den dortigen Programmen nicht wirklich. Und wenn doch, dann ist die jetzige initiale Ausprobierphase (ohne produktive Daten) doch bestens dafür geeignet. :D

Ganz nebenbei: der TF5000 hat keinen LAN Anschluss - funktioniert der Client trotzdem?

Falls Du den "ftpd-topfield" meinst, das ist ein FTP-Daemon, der den fehlenden LAN-Anschluss über eine extra Box und USB "ersetzt" (auf was für Ideen manche Leute kommen :eek:).
 

gerdk

Benutzer
Mitglied seit
24. Jan 2011
Beiträge
85
Punkte für Reaktionen
0
Punkte
0
Das erste Problem hab' ich gelöst: jetzt habe ich Zugriff auf meinen Topf via wget. Der Fehler war: ich habe mich als "admin" angemeldet! Richtig währe "root".

Jetzt kann ich meine Grundlagenforschung weiter betreiben, was natürlich einen alternativen Client miteinschließt. Für den Fall dass,....... wie kriege ich meine DS wieder in den Urzustand?

Weiter geht's
Bis dann
Gerd
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
@gerd
Trollis einwand zu wget nicht ausser acht lassen. Mit wget kannst du sicher keine Datei auf dem Server löschen, soviel steht fest
Nur damit du nicht unnötig Zeit inverstierst ;)
Der "sauberste" Weg eine DS komplett zurückzusetzen ist es den harten Reset mit dem Knöpfchen hinten am Gehäuse zu machen und die Firmware neu aufzuspielen. Die Userdaten sollten auch beim harten Reset und Neuinstallation der Firmware erhalten bleiben. Sprich alles unter /volume1 sollte auch danach noch vorhanden sein. Trotzdem vielleicht rechtzeitig an ein Backup der wichtigen Daten denken. Kann viel Ärger ersparen und der Reset macht sich auch leichteren Herzens, wenn man weiss, dass man noch ein Backup in der Hinterhand hat für den Fall der Fälle hat :)
 

gerdk

Benutzer
Mitglied seit
24. Jan 2011
Beiträge
85
Punkte für Reaktionen
0
Punkte
0
Ihr habt ja recht, aber solange ich noch über Dinge wie die richtige Anmeldung falle, betreibe ich lieber noch etwas Grundlagenforschung. Für den Fall dass... welchen Client würdet ihr mir empfehlen. Ich brauche keinen mit x Funktionen. Kopieren (Verschieben), eventuell gleichzeitiges Umbenennen und nachher löschen reicht vollkommen. Eure Empfehlung währe mir eine wichtige Hilfe, da ich - ehrlich gesagt - keine Lust habe mich in verschiedene Clients einzuarbeiten, nur um sie nachher zu verwerfen.

Momentan kämpfe ich mit der Umbenennerei, da der interne Befehl nur eine Datei umbenennen kann - aber das ist eine andere Geschichte.

Bis dann
Gerd

Nur so nebenbei: brauche ich IPKG unbedingt? Kann das nicht die interne Paketverwaltung auch?
 

gerdk

Benutzer
Mitglied seit
24. Jan 2011
Beiträge
85
Punkte für Reaktionen
0
Punkte
0
Umbenennen gelöst:

for i in *.rec; do mv "$i" "${i/.rec}".ts; done


... DOS war so einfach :eek:
Vielen Dank an it-administrator.de
 

Merthos

Benutzer
Mitglied seit
01. Mai 2010
Beiträge
2.709
Punkte für Reaktionen
1
Punkte
84
Erfolgserlebnisse sind doch was schönes. :)

Nur so nebenbei: brauche ich IPKG unbedingt? Kann das nicht die interne Paketverwaltung auch?

Ja, denn es wird wohl kein Paket geben, was die Sachen enthält, die Du gerne hättest.
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
@gerd
Dieser Codeschnippel wird aber nur dann das Erwartete tun, wenn du dich bereits im korrekten Verzeichnis befindest. Gerade bei Scripten kann es immer mal sein, dass die an eine andere Stelle kopiert/verschoben werden. Dann funzt der Code aber nicht mehr.
Lange Rede kurzer Sinn: Entweder du stellst in deinem Script sicher, dass du vor der Ausführung in das korrekte Verzeichnis wechselst oder du verwendest komplette Pfadangaben ausgehend von /
Code:
cd /volume1/deinVerzeichnis
for i in *.rec; do mv "$i" "${i/.rec}".ts; done
zudem würde ich den Code nicht so verwenden. Denn ich bin mir nicht sicher was passiert, wenn das Script auf ein Verzeichnis namens .rec stösst. du willst ja nur Dateien umbenennen
Das würde ich eher so probieren
Code:
#!/bin/sh
cd /volume1/public
for i in $(find ./ -type f -name "*.rec")
do
 mv "$i" "$(echo $i | awk -F.rec '{print $1}').ts"
done
würde sicherstellen, dass nur Files erwischt werden im Verzeichnis /volume1/public
 
Zuletzt bearbeitet:

gerdk

Benutzer
Mitglied seit
24. Jan 2011
Beiträge
85
Punkte für Reaktionen
0
Punkte
0
@Merthos:

.. ich hatte eher vor die ganze Sache als Script laufen zu lassen. Deshalb auch meine Hoffnungen auf die Boardmittel. Wenn ich mir die Prozedur nur zum Installieren des IPKG ansehe graut es mir ein bischen.


@jahlives:

vielen Dank für Deine Modifikationen. Ich werde dein Beispiel 2 einsetzen.

Danke für eure Hilfe
Gerd
 

gerdk

Benutzer
Mitglied seit
24. Jan 2011
Beiträge
85
Punkte für Reaktionen
0
Punkte
0
Google hat mich hierhin geführt: http://www.moritzschubel.de/pc_ftp.htm . Das wird der Befehl "ftp" näher erörtert. Giebt es den auch nauf der DS - gefunden hab ich ihn nicht - oder heißt er anders? Ansonten, welchen ftp Client würdet ihr mir empfehlen. Ich brauche kein Superüberdrüberteil sondern nur einen, der "holen" und "löschen" kann und idealerweise mit der Onboard Paketverwaltung zu installieren ist.

Danke
Gerd
 

floho

Benutzer
Mitglied seit
23. Sep 2009
Beiträge
149
Punkte für Reaktionen
0
Punkte
16
Falls du dich zur Installation von IPKG durchringen solltest, so empfehle ich CURL.
Damit kannst du downloaden und löschen. Ich denke, damit könntest du die Dateien beim Herunterladen auch gleich umbenennen.
 

Merthos

Benutzer
Mitglied seit
01. Mai 2010
Beiträge
2.709
Punkte für Reaktionen
1
Punkte
84
gerdk;150588Ich brauche kein Superüberdrüberteil sondern nur einen schrieb:
Und nochmal, gibt es nicht. IPKG ist die Paketverwaltung für solche Tools.
 

Merthos

Benutzer
Mitglied seit
01. Mai 2010
Beiträge
2.709
Punkte für Reaktionen
1
Punkte
84
Ich brauche kein Superüberdrüberteil sondern nur einen, der "holen" und "löschen" kann und idealerweise mit der Onboard Paketverwaltung zu installieren ist.
Und nochmal, gibt es nicht. IPKG ist die Paketverwaltung für solche Tools.
 

gerdk

Benutzer
Mitglied seit
24. Jan 2011
Beiträge
85
Punkte für Reaktionen
0
Punkte
0
OK. habs verstanden - ich hoffe am Wochende auf ein paar ruhige Stunden. Dann werd' ich IPKG installieren.

Bis dahin kann ich mir CURL ja mal ansehen..

Bis dann
Gerd
 

gerdk

Benutzer
Mitglied seit
24. Jan 2011
Beiträge
85
Punkte für Reaktionen
0
Punkte
0
eine Frage hätt' ich doch noch: In der "weitergehenden Installation" steht: "Leider hat die Originale IPKG Installation ein paar Nachteile" - giebt es eine andere Vaiante? Wenn ja wo / wie...?
Wenn nicht nehme ich an, dass es sinnvoll ist die Anleitung komplett durchzuziehen - also alle scrips und Anpassungen von Optware, atd, fetchmail, rsyncd bis zum Backupscript durchführen..

Auf gehts also
Gerd
 

Merthos

Benutzer
Mitglied seit
01. Mai 2010
Beiträge
2.709
Punkte für Reaktionen
1
Punkte
84
Alles ab "Weitergehende Installation" ist nicht nötig, das funktioniert auch so. Das "Mount Bind" kann Du noch machen, wenn Du Lust hast (lief bei mir ein halbes Jahr so), den Rest würde ich erst mal ignorieren (hab ich auch noch nicht gemacht). Das wäre erst nötig, wenn Du Dienste/Daemons laufen lassen willst, aber für die bislang genannten Vorhaben ist das nicht nötig.
 

gerdk

Benutzer
Mitglied seit
24. Jan 2011
Beiträge
85
Punkte für Reaktionen
0
Punkte
0
Ich konnte das Wochenende nicht abwarten - habs soeben versucht. Resultat:

Im Ordner "public" befindes sich der Ordner "Bootsrap" in dem sich diverse Dateien ua. auch "ipkg.sh" befinden. Die Fehlermeldung bezüglich des Prozessors habe ich "behoben" indem ich die betreffende Zeile angepasst habe. Soweit so gut. Nach dem Start der bootstrap.sh ist die Installation offensichtlich vollständig ausgeführt worden.

Ab dann hänge ich: "ipkg update" fördert fogende Meldung zu Tage: "-ash: ipkg: not found"
Was will mir diese Meldung sagen? IPKG befindet sich doch im bootstrap Ordner??
Wie komm' ich weiter?

Gerd
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat