Archiv verlassen und diese Seite im Standarddesign anzeigen : File-Upload per Bash
der_angler
18.01.05, 09:58
Hallo,
ich habe ne ziemlich dumme Frage. Und zwar, wie kann ich unter Fedora Core 2 eine Datei auf meinen Webserver laden??
Und zwar per Bash. Will mir ein Skript basteln was folgendes tut:
1. jeden Tag das Fernsehprogramm runterladen - OK!
2. das xml-File zippen - OK!
3. das gezippte File auf meinen Webserver aufspielen - FEHLER!
4. das ganze zuhause vom Webserver donwloaden und eintragen - OK!
Also wie ihr seht geht es mir wirklich nur darum wie ich per Skript ne Datei auf einen Webserver hochladen kann und vorallem wie und wo ich die Zugangsadaten zu meinem Webserver eintragen muss?
Please help me :)
hi,
hast du ein ftp-zugang zu deinem webserver? wenn ja ist ftp (file transfer programm) dein freund.
ftp -u ftp://<username>:<password>@<host><pfad> <datei zum hochladen>
mfg
jofisch
Lege in dein Homedir folgende Datei an
.netrc
In diese schreibst du rein
machine ip_adresse_des_ftp_servers
login dein_login_name
password dein_passwort
Dann gehst du hin und schreibts in ein File,ich nenns hiermal ftpfile, folgendes rein:
cd in_das_dir_das_du_willst
put /Pfad/zum/File/zum/hochladen
quit
Dann rufst du einfach auf mit:
ftp ip_adresse_ftpserver < ftpfile
fertig.
Nun schreibst du das ganze halt noch als dein crontab und fertig.
P.S. Die .netrc darf nur für den Eigentümer les/schreibar sein.
Also mach nach dem anlegen bitte ein chmod 600 ~/.netrc
Sascha-Ulf
18.01.05, 11:05
man wget ist Dein Freund. Damit kannst Du aus der Konsole heraus gezielt Dateien von anderen Servern downloaden, man kann auch ganze Websites downloaden.
edit /
wget -b http://DOMAIN/Datei
wget -r http://DOMAIN
@Sascha-Ulf
upload, nicht download
Sascha-Ulf
18.01.05, 11:16
Ist mir schon klar, aber ich finde es einfacher das Skript gleich auf dem Webserver laufen zu lassen. Warum ein Skript von zwei Rechnern abhängig machen? Aber na ja, der andere Weg wird sicherlich gehen.
scp ist ein Teil der SSH-Suite und kann somit die gleichen Mechanismen (Public-/Private-Key-Verfahren) nutzen...
der_angler
18.01.05, 11:41
... ich habe es jetzt mal so versucht
[root@rhsrv root]# ftp -p ftp://username:password@ftp.christopher-boehm.de yum.conf
aber dann erscheint nur folgendes
ftp: ftp://username:password@ftp.christopher-boehm.de yum.conf: Servname not supported for ai_socktype
Also klappt das irgendwie nicht!
Achja, die Funktion "ftp -u" kennt er bei mir gar nicht.
hmm dann scheint das unter fc2 ne andere version zu sein. unter debian (sarge) und suse(8.2, 9.1) funkt das einwandfrei.
mfg
jofisch
ich mach immer
scp /etc/yum.conf root@hostname:/etc
da ich dort im .ssh-Verzeichnis von root meinen publickey hitnerlegt habe (in authorized-keys) geht das ohne passwort usw, also auch per cron...
der_angler
18.01.05, 15:10
nur das ich auf meinem Webserver weder ssh-Zugriff habe, noch einen PublicKey hinterlegt habe und schon gar keine cronjobs erzeugen kann, deswegen das ganze mit 2 Servern.
Also könnt ihr das mit scp glatt vergessen und mir vielleicht sagen was das für ne seltsame Fehlermeldung ist.
Kann doch net so schwer sein eine Datei upzuloaden oder?
Kann doch net so schwer sein eine Datei upzuloaden oder?
Würdest du mein Posting gelesen haben, dann hättest du schon lange deine Lösung.
Aber nö wird anscheinend nicht gelesen. Tztztztz!
Und dann wundern sich die Leute wenn man auf ihrer Postings nicht mehr antwortet.
der_angler
19.01.05, 21:51
... habe es jetzt ja auch mit deiner Lösung hinbekommen :) :) :) :) Danke
Aber jetzt würde ich gerne nochmal zu dem
wget -b http://www.xxxx.de/daten.zip was fragen, und zwar startet das Ding ja so im Hintergrund. Hmmm, aber wenn ich ein Skript habe, wie halte ich das den dann so lange an bis der Download erfolgreich war. Weil ich will ja mit dem File weiter arbeiten, aber wenn der im Hintergrund runterlädt geht das Skript ja weiter ???
Und wo speichert er den das File?
und zwar startet das Ding ja so im Hintergrund. Hmmm, aber wenn ich ein Skript habe, wie halte ich das den dann so lange an bis der Download erfolgreich war. Weil ich will ja mit dem File weiter arbeiten, aber wenn der im Hintergrund runterlädt geht das Skript ja weiter ???
wget --quiet -c -nH http://www.xxxx.de/daten.zip &
wait $!
wait wartet im Skript auf Beenden von wget (->help wait, man bash)
Und wo speichert er den das File?
man wget :D (Option -O wenn Du einen eigenen Namen geben willst)
In Verbindung mit obigem -nH im aktuellen Verzeichnis.
Gruß,
Wolfgang
Wenn du hinter dem wget das & weglässt, brauchst du auch kein wait mehr. Das & steht ja dafür, dass der Prozess in den Hintergrund versetzt wird.
Wenn du hinter dem wget das & weglässt, brauchst du auch kein wait mehr. Das & steht ja dafür, dass der Prozess in den Hintergrund versetzt wird.
Ich habe die Frage prinzipiell verstanden: also für den Fall, daß zwischen
"wget &" und wait noch ein paar (Vordergrund-)Befehle stehen, an einem
bestimmten Punkt im Skript der Download aber abgeschlossen sein soll.
So hatte ich "geht das Script ja weiter..." gelesen (auf den zweiten Blick
vielleicht falsch ?)
Ansonsten macht das in der Tat keinen Sinn ;)
Gruß,
Wolfgang
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.