Problem mit sftp Upload

P

promille

Aktives Mitglied
Thread Starter
Dabei seit
23.11.2004
Beiträge
1.305
Reaktionspunkte
36
Hallo. Ich bin in Sachen Unix sehr unwissend.
Jetzt hab ich von der Uni Webspace bekommen, wo man nicht mehr über ftp, sondern nur scp/sftp/ssh hochladen kann. Hab schon versucht über Cyberduck und Captain FTP was hoch zu laden, geht aber nicht.

Nun wollte ich das mal mit dem Terminal versuchen.
Dazu hab ich den Befehl von JochenN ausm 1. Post eingegeben. Allerdings ftp mit sftp ersetzt.

Geht aber leider nicht. Es kommt folgende Meldung:
-bash: /homes/user/Documents/test.html/: No such file or directory
sftp: illegal option -- i
usage: sftp [-1Cv] [-B buffer_size] [-b batchfile] [-F ssh_config]
[-o ssh_option] [-P sftp_server_path] [-R num_requests]
[-S program] [-s subsystem | sftp_server] host
sftp [[user@]host[:file [file]]]
sftp [[user@]host[:dir[/]]]
sftp -b batchfile [user@]host
Die Beschreibung von der Uni ist eher sparsam und steht hier.

Den WWW-Ordner hab ich schon erstellt.
Könnte mir da jemand weiterhelfen? (Am liebsten würde ich auch nicht einzelne Dateien, sondern evtl. auch einen ganzen Ordner hochladen).
 
nimm einfach fugu, das ist ein sftp client...
 
Mit Fugu geht's leider auch net.. :-(

EDIT:
Oder vllt. oder hab ich den Befehl aus Script falsch verstanden?
Das hab ich ins Terminal eingegeben:
~/Documents/<rest_des_lokalen_QuellPfades>/; sftp -inpV -u sftp://user:password@math.uni-bielefeld.de/ test4.html
PS: und wo der smilie steht, muss ein Doppelpunkt und "p" hin.
 
Zuletzt bearbeitet von einem Moderator:
Ich hab das ganze mal in ein neues Thema abgetrennt, da es mit dem uralt Thread eigentlich nichts zu tun hat.
Schau Dir mal die manpage zu scp an; vielleicht kommst Du damit besser zurecht.
 
@maceis,
vielen Dank! Wollte nur nicht das Forum mit zig ähnlichen Themen zuspamen.
Klingt jetzt trivial, aber welche "manpage"?

EDIT:
aah, Du meintest den Befehl "man scp".. Alles Klar, Danke!

2nd EDIT:
In der manpage hab ich leider auch keine für mich brauchbaren hinweise gefunden.
Was mich allerdings wundert, ist, dass ich mit KEINEM GUI-Prog eine Verbindung bekomme. Hab schon versucht mit Fetch, Fugu, Cyberduck und Captain FTP...

Kann es vielleicht sein, dass dieser Dienst erst im System freigeschaltet werden muss? (Ging aber auch nicht mit ausgeschalteter Firewall)
 
Zuletzt bearbeitet:
mobilephoner schrieb:
...
Kann es vielleicht sein, dass dieser Dienst erst im System freigeschaltet werden muss? (Ging aber auch nicht mit ausgeschalteter Firewall)
Ja, aber auf dem System, mit dem Du Dich verbinden möchtest.

mach mal probehalber so etwas (genau so!):
Code:
cd ~/Desktop
echo "hallo" > lokale_datei
scp lokale_datei user@math.uni-bielefeld.de:hochgeladene_datei

Wenn Fehlermeldungen kommen, bitte posten!

Ach, und noch was:
mobilephoner schrieb:
...
Den WWW-Ordner hab ich schon erstellt.
...
Wie hast Du das denn gemacht?
 
Hi,

wenn Du mit der Kommandozeile nicht so gut zurecht kommst, wäre vielleicht das Shareware-Programm Transmit etwas für Dich.
Es gibt auch eine Testversion zum Ausprobieren.
Informationen und Download unter http://www.panic.com/transmit

Viele Grüße
 
Bei mir funktioniert sftp mit Cyberduck problemlos.

Vielleicht postest Du hier einfach mal die Fehlermeldungen nach der Anleitung von maceis (falls welche kommen)
bzw. auch mal die Fehlermeldungen von Cyberduck: klappt schon das Verbinden nicht, oder gibt es erst Fehler wenn Du versuchst was hochzuladen?
 
@mikne21,
geht leider auch net, sagt "server not found".

@maceis,
der sagt mir das:
ssh: math.uni-bielefeld.de: Name or service not known
lost connection

Den WWW-Ordner hatte ich in der Uni mit einem Typen vom Computerlabor erstellt wie hier beschrieben. Wie ich die Datei da hochkriege, schien der auch nicht wirklich zu wissen.

Ich denke aber schon, dass ich auf dem Server freigeschaltet bin. Zumindest hab ich mit "mutt" Zugriff auf die eMails.
 
math.uni-bielefeld.de nimmt auch überhaupt keine ssh-verbindung an. Vielleicht geht es nur, wenn Du im Netz der uni bist. Bei mir gibts auch einige Server, die nur Verbindungen aus dem Uni-IP-Bereich zulassen...
 
Zunächst vielen Dank an alle, die mir hier weiterhelfen!
Hab aber leider noch immer nichts hinbekommen.

@theHobbit, wenn ich Cyberduck starte und bei der Verbindungsart "sftp" auswähle, erscheint neben dem Feld für die Serveradresse SOFORT ein gelbes Dreieck. D.h. bevor ich irgendeine Angabe gemacht habe! Wenn ich dann auf das Warndreick clicke, startet "Network Diagnistics" und checkt die Verbindung zum Server. Danach kommt ne Meldung "Cannot connect to server". (dabei frage ich mich, mit welchem Server Network Diagnostics verbindet, wobei ich doch noch überhaupt keine Adresse eingegeben habe..

@cwasmer, mit ssh user@ssh.math.uni-bielefeld.de baut der eine Verbindung auf. Sogar von zu Hause. Dabei kann ich z.B. mit mutt die eMails lesen. Also muss der Server wohl generell eine Verbindung von außen akzeptieren.

@Biberbeat, das Einloggen klappt mit SSH, der upload dagegen nicht..

@maceis und allen anderen, wie gesagt, ich hab von Unix nicht schrecklich viel Ahnung. Vielleicht mache ja ICH was falsch und nicht der Server oder Mac ;-)
Meine Vorgehensweise:
Zuerst hab ich mit TextEdit eine html-datei erstellt, (die nur das Wort "Hallo" enthält) und als test.html unter Documents gespeichert.
Danach starte ich das Terminal und logge ich mit "ssh user@ssh.math.uni-bielefeld.de" ein.
Danach gebe ich im Terminal zum upload der test.html den Befehl ausm alten Thread ein:
~/Documents/test.html; sftp -inpV -u sftp://user@math.uni-bielefeld.de/~user/ test.html
Daraufhin kommt die Meldung:
-bash: /homes/user/Documents/test.html: No such file or directory
sftp: illegal option -- i
(ein "ssh" bei user@[B]ssh[/B].math.uni-bielefeld.de ändert auch nichts)
D.h. doch eigentlich, dass das Programm erstmal meine test.html-Datei gar nicht findet? Und wieso ist -i eine illegal option?

Über weitere Hinweise, Vorschläge würde ich mich sehr freuen.
 
mobilephoner schrieb:
~/Documents/test.html; sftp -inpV -u sftp://user@math.uni-bielefeld.de/~user/ test.html
Hier findet sich ein Leerzeichen, wo keines hingehört. Ausserdem kennt sftp in der mit einem Mac OS x 10.4 ausgelieferten Variante zumindest keine Option i, siehe auch man sftp, dort kannst Du die Option suchen und nicht finden. Auch eine Option n kennt sftp nicht, genausowenig, wie die Optionen p, V (wohl aber P und v) und u.

Überflüssige Optionen ignorieren Terminal Programme nicht, denn eine unzulässige Eingabe könnte ja auch ein Benutzerfehler sein (und folgerichtig der Benutzer eigentlich etwas gänzlich anderes wollen). Folgerichtig muss Dein Wunsch schon hier scheitern. Aber natürlich nicht mehr lange.

probieren wir also sftp user@serv.er

Ausserdem hast Du vor Deiner lokalen Pfadwahl das cd vergessen. ~/Documents/test.htm ist der relative Pfad zu einem Dokument (relativ vom Homeverzeichniss des Benutzers aus). Wenn Du Deiner Shell einen Pfad hinschmeisst, so möchte sie wissen, was sie damit anfangen soll. Damit dies gewährleistet ist, erwartet die Shell zunächst bei der Angabe eines Pfades an der Stelle einen Befehl anzutreffen. Du solltest auf die tcsh umsteigen, deren Fehlermeldungen sind klarer.
(PS: Ich fürchte der letzte Absatz macht nichts wirklich klar)
 
Zuletzt bearbeitet:
@maceis: probiere es aus: die ausgabe von fehlermeldungen ist unter der tcsh klarer. keine frage, die shell hat an anderen stellen auch ihre nachteile (wobei sie mir persönlich trotzdem gefällt).
-bash: /homes/user/Documents/test.html: No such file or directory
erscheint mir zumindest eine unsinnige fehlerbeschreibung zu sein, hingegen
tcsh: /homes/user/Documents/test.html: Command not found.
klarer.
 
Z-Shell und Bash unterscheiden zwischen einem Kommando, das im Suchpfad nicht gefunden wurde (Command not found) und einer vollen Pfadangaben unter der keine Datei gefunden wird (No such file or directory).
Erscheint mir nicht unlogisch (und schon gar nicht unsinnig).
Für die Tcsh ist das undifferenziert ein und das selbe.

Wir wolle hier aber keine Diskussion á la "Welche ist die beste Shell?" anfangen ;).
 
Langsam bin ich hier am verzweifeln..
Hab jetzt das eingegeben:
cd ~/Documents/test.html; sftp -Pv sftp://user@math.uni-bielefeld.de/~user/test.html
Daraufhin kommt:
-bash: cd: /Users/user/Documents/test.html: Not a directory
Attaching to v...
exec: v: No such file or directory
Broken pipe
 
Du hast ja auch gar kein Verzeichniss, welches test.html heisst. Im übrigen auch nicht auf Deinem Server. richtig muss es lauten:
cd ~/Documents/;sftp sftp://user@math.uni-bielefeld.de/~user
jetzt wirst Du hoffentlich nach einem Passwort gefragt und antwortest höflich und dann
put test.html test.html
und so weiter mit allen Dokumenten, welche Du hochladen möchtest. Du beendest die Session mit "exit" oder "quit".

Das nächste mal schaufeln wir die Files dann Mithilfe eines Scriptes auf den Server.
 
Zurück
Oben Unten