FTP -- Datenübertragung leicht gemacht


FTP, das File-Transfer-Protokoll, ist ein sehr altes Protokoll zur Übertragung von Dateien zwischen heterogenen Systemen im Internet. Über dieses Protokoll stellt ein FTP-Server einem FTP-Klienten Dateien zur Verfügung:

Als Einblick ins (alte) Internet dient eine Simulation, die typische Befehle eines Klienten demonstriert.

FTP-Simulation

Um sich Dateien von einem FTP-Server auf einen lokalen Rechner zu kopieren, muß man zuerst einen FTP-Klienten starten und mit einem Server Kontakt aufnehmen. Die Simulation verwendet einfach die Dateien auf dem lokalen Rechner als Server-Bereich.

Um die Simulation zu starten, wechselt man unter MSDOS in den Katalog \ftp der CD und gibt dort das Kommando ftp ein. Als Argument sollte eigentlich ein Host angegeben werden; in der Simulation verwendet man einen Pfad zu einem beliebigen Katalog.

D:\FTP> ftp d:/zip
Name (d:\zip:anonymous): ftp
331 Guest login ok, send your complete e-mail address as password.
Password:
local: c:\, remote: D:\ZIP
ftp>
Für sogenannten anonymen Dateitransfer verwendet man ftp oder anonymous als login-Namen zum FTP-Server. Als Paßwort erwartet der Server dann die Angabe der email-Adresse des Benutzers. Manche Server vergewissern sich durch Rückfrage beim System des Klienten, daß diese Adresse existiert. An dem Prompt ftp> erwartet der FTP-Klient nun weitere Kommandos.

Mit dem Kommando ls kann man sich das Inhaltsverzeichnis des aktuellen Katalogs auf dem Server ausgeben lassen.

local: c:\, remote: D:\ZIP
ftp> ls
200 PORT command successful.
150 ASCII data connection (131.173.161.138,1234).
cello.zip
gawk215.zip
gs260fnt.zip
gs261exe.zip
gs261src.zip
gsview10.zip
lview31.zip
mpegv11d.zip
mpgaudio.zip
nullsock.zip
pktd11.zip
pktd11a.zip
pktd11b.zip
pktd11c.zip
qtw11.zip
vmpeg16a.zip
wplny11.zip
wunz20x.zip
local: c:\, remote: D:\ZIP
226 ASCII Transfer complete.
local: c:\, remote: D:\ZIP
ftp>

Ein typischer FTP-Server hat häufig folgende Verzeichnisstruktur:

In der Regel finden sich auf den meisten FTP-Servern README-Dateien mit Hinweisen zur Katalogstruktur.

Mit cd kann man den Katalog auf dem FTP-Server wechseln.

ftp> cd ../web
local: c:\, remote: D:\WEB
ftp>
Der simulierte Klient zeigt ständig den Namen des aktuellen Katalogs beim Klienten und beim Server. Im Ernstfall muß man den Server mit pwd fragen.

An Stelle von ls kann man sich mit dir mehr Informationen über das Verzeichnis auf dem Server ausgeben lassen. help gibt Hinweise, welche Kommandos der Klient versteht.

Aus dem Katalog \web der CD wollen wir die Startseite in einen Katalog unseres lokalen PCs kopieren.

local: c:\, remote: D:\WEB
ftp> lcd tmp
local: c:\tmp, remote: D:\WEB
ftp> get 0.htm
copy /a 0.htm c:\tmp /v
        1 file(s) copied
local: c:\tmp, remote: D:\WEB
ftp>
Mit lcd kann man den Katalog im lokalen System wechseln; die Simulation kontrolliert allerdings nicht, ob dieser Katalog auch existiert.

Das Kommando get beauftragt den Klienten, eine Datei abzuholen und im lokalen Katalog zu hinterlegen. Wie man sieht, entspricht das in etwa einem copy-Kommando mit der Option /a für Textdateien. Die Kommandos ascii und bin schalten zwischen Text- und Binärübertragung um. Erfahrungsgemäß macht man hier oft Fehler.

Die Kommandos bye oder quit beenden eine FTP-Sitzung.

ftp> bye
221 Goodbye
D:\WEB>
Der simulierte Klient hat natürlich den lokalen Arbeitskatalog verändert.

Diese primitive Simulation skizziert nur einige wichtige Befehle und Möglichkeiten eines echten FTP-Klienten. Moderne Klienten wie ws_ftp (auf der MAZ-Diskette [850 K]) haben außerdem eine grafische Oberfläche, die sich stark an dem File-Dialogfenster in Windows orientiert und recht leicht zu bedienen ist.