Mit dem Internetprotokoll FTP (File Transfer Protocol) übertragen Sie Daten zwischen zwei Rechnern. Dabei kommunizieren ein FTP-Client und ein FTP-Server miteinander. Die meisten Server bieten so genanntes anonymes FTP an: Benutzer melden sich in der Regel mit dem Benutzernamen anonymous oder ftp und meist ohne Passwort an – dennoch gehört es zum guten Ton, die eigene E-Mail-Adresse anzugeben. Andere FTP-Server, etwa bei Webspace-Anbietern, verlangen eine Authentifizierung mit Benutzername und Kennwort.
Doch Vorsicht: Anders als sichere Protokolle (wie die Secure Shell SSH) überträgt FTP Benutzernamen, Passwort und die restlichen Daten im Klartext und eignet sich daher nicht für den Austausch vertraulicher Informationen.
Wer nicht den eingebauten FTP-Client des Webbrowsers oder Dateimanagers verwenden möchte, sollte sich die beiden Kommandozeilen-Alternativen Ftp und Ncftp anschauen.
Ein einfacher Kommandozeilenclient, der auf jeder Distribution zur Standardausstattung gehört, ist Ftp. Zum Verbinden tippen Sie beispielsweise:
ftp ftp.Server .de
Alternativ starten Sie den Client mit ftp und verbinden sich dann am Kommandoprompt über den Befehl
ftp> open ftp.Server .de
mit dem gewünschten Ziel. Nach der Kontaktaufnahme sehen Sie die Aufforderung zum Login: Hier geben Sie wie schon erwähnt entweder anonymous, ftp oder den vom Webspace-Anbieter festgelegten Benutzernamen und das zugehörige Passwort ein (Listing 1). Das Kennwort tippen Sie dabei "blind" – im Gegensatz zu Ncftp zeigt dieser Client keine Sternchen an.
ftp> open ftp.debian.org Connected to ftp.debian.org. 220 saens.debian.org FTP server (vsftpd) Name (ftp.debian.org:huhn): ftp 331 Please specify the password. Password:
Nach der Anmeldung fordert Ftp über den Prompt ftp> zur Eingabe von Befehlen auf. Die Kommandos help oder ? blenden eine Übersicht der möglichen Kommandos ein (Abbildung 1). Viele erinnern von der Syntax her an bekannte Bash-Befehle (cd, ls, exit etc.). Einige sind selbsterklärend, andere eher etwas kryptisch. Weitere Informationen zu den einzelnen Kommandos zeigt das Programm über:
ftp> help Befehl
Um zu erfahren, in welchem Verzeichnis auf dem Server Sie sich befinden, tippen Sie (wie auf der Bash) pwd ("print working directory"), und auch den Inhalt erfahren Sie über den vertrauten Befehl ls. In einen anderen Ordner bringt Sie der Befehl cd Verzeichnis
, cd .. führt eine Ebene höher, und mit cd landen Sie im Basisverzeichnis des FTP-Servers.
TIPP
Um auf dem lokalen Rechner ein Verzeichnis zu wechseln, steht Ihnen der Befehl lcd zur Verfügung. Andere lokale Kommandos geben Sie mit einem vorangestellten Ausrufezeichen ein, z. B. !ls, um den Inhalt des lokalen Ordners aufzulisten.
Über get bzw. mget laden Sie Daten vom FTP-Server ins aktuelle Verzeichnis auf den eigenen Rechner herunter. Während Sie bei get den Dateinamen genau angeben müssen, versteht mget auch Wildcards. Um beispielsweise alle Dateien eines bestimmten Verzeichnisses auf den lokalen Rechner zu schaufeln, tippen Sie am Prompt mget *. Bei Bedarf geht es auch genauer:
ftp> mget *.tar.gz
lädt nur Dateien mit der Endung .tar.gz herunter. Standardmäßig bittet Ftp nun für jede einzelne Datei, auf die das Muster zutrifft, um Bestätigung. Geben Sie entweder y oder n ein, um den Transfer zu starten oder eine Datei zu überspringen. Möchten Sie diese Abfrage abschalten, erledigen Sie das über das Kommando prompt:
ftp> prompt Interactive mode off.
Gleiches gilt für die Befehle mput (überträgt Daten zum Server) und mdelete (löscht Daten auf dem Server) – eine entsprechende Zugriffsberechtigung (Schreibrechte) auf dem FTP-Server vorausgesetzt.
Sie verabschieden sich von der Gegenseite mit dem Kommando close. Entsprechend beendet der Befehl quit nicht nur die Sitzung, sondern auch das Programm.
Zwar richten die meisten Distributionen den Kommandozeilenclient Ncftp nicht standardmäßig mit ein, er findet sich aber fast immer auf den Installationsmedien. Alternativ holen Sie sich das Tool von der Ncftp-Homepage [1], wo es für viele verschiedene Plattformen zum Download bereitsteht.
Von der grundsätzlichen Bedienung her unterscheidet sich Ncftp nicht wesentlich von Ftp: Um die Verbindung zu einem Server herzustellen, geben Sie diesen schon beim Programmstart oder zusammen mit dem Befehl open an (Listing 2).
huhn@asteroid:~$ ncftp Ncftp 3.1.8 (Jul 27, 2004) by Mike Gleason (http://www.Ncftp.com/contact/). ncftp> open ftp.debian.org Connecting to 128.101.240.212… saens.debian.org FTP server (vsftpd) Logging in…
Die Anmeldung an Anonymous-Servern erledigt Ncftp automatisch für Sie. Benötigen Sie zur Authentifizierung Benutzername und Kennwort, geben Sie beide direkt mit an:
ncftp> open -u Username -p Passwort ftp.Server .de
Die Kommandos help, pwd, cd, lcd, close und quit funktionieren genau wie unter Ftp. Dass der Befehl zum Auflisten des Verzeichnisinhalts ls heißt, überrascht daher nicht. Hier bietet Ncftp allerdings ein zusätzliches Feature an: Sofern der Server dies unterstützt, erhalten Sie mit ls -l ein ausführliches Listing; entsprechend zeigt ls -la auch versteckte Dateien und Verzeichnisse an.
Ncftp bietet aber noch mehr: Wie von der Bash gewohnt, unterstützt der Client die so genannte Tab Completion – tippen Sie den ersten Buchstaben eines Kommandos oder eines Datei/Verzeichnisnamens und drücken Sie [Tab]. Sobald der Name eindeutig ist, vervollständigt Ncftp diesen. Geben Sie den ersten Buchstaben eines Kommandos ein und drücken zweimal die Tabulator-Taste, zeigt Ncftp alle Befehle, die mit diesem Buchstaben beginnen.
Wie zu erwarten, heißt das Kommando zum Übertragen von Dateien auf den lokalen Rechner get. Zusätzlichen Komfort bietet Ncftp, weil das Programm den Fortschritt des Downloads und die Transferrate in der untersten Zeile anzeigt (Abbildung 2).
Ein praktisches Feature ist, dass Ncftp abgebrochene Downloads wiederaufnehmen kann. Lassen Sie get auf eine Datei los, die bereits auf dem lokalen Rechner existiert, meldet Ncftp The local file Datei
already exists. ("Die lokale Datei Datei gibt es schon.") Anschließend zeigt der FTP-Client Angaben zur Dateigröße und dem Zeitstempel für die lokale und (sofern sich die beiden Dateien unterscheiden) die entfernte Datei.
Anschließend fragt das Programm an, was es tun soll. Wie Sie in Abbildung 3 sehen, haben Sie an dieser Stelle die folgenden Möglichkeiten:
o überschreibt die lokale Datei.r nimmt einen abgebrochenen Download wieder auf.a hängt die Datei vom FTP-Server an die lokale Datei an.s bricht den Vorgang ab.n erlaubt, die Datei unter neuem Namen abzulegen.o! überschreibt beim Download mehrerer Dateien alle lokalen Pendants.r! setzt die Datenübertragung für alle Dateien fort.s! oder c bricht die Aktion für alle Dateien ab.
Ebenso wie der Befehl ls bringt get Optionen mit, die zusätzliche Features bieten. Um beispielsweise einen ganzen Ordner rekursiv, also inklusive aller Dateien und Unterverzeichnisse, zu übertragen, tippen Sie:
ncftp> get -R Verzeichnis
Außerdem bietet get einen Parameter, eine Datei unter anderem Namen abzulegen. Der Aufruf
ncftp> get -z README README.TXT
legt die Datei README auf dem eigenen Rechner unter dem Namen README.TXT ab. Gerade für Textdateien bringt get eine weitere praktische Funktion mit: Standardmäßig überträgt Ncftp im so genannten Binary-Modus, es verändert die Dateien beim Datentransfer also nicht. Handelt es sich um ASCII-Dateien mit unterschiedlichen Zeilenumbrüchen, den Editoren auf verschiedenen Plattformen verwenden, weisen Sie Ncftp mit
ncftp> get -a datei.txt
an, die Datei im ASCII-Modus herunterzuladen. Möchten Sie dauerhaft in diesen Modus wechseln, so verwenden Sie das Kommando type:
ncftp> type ascii ncftp> type Type is A (ASCII). ncftp> type binary ncftp> type Type is I (binary/image).
Wie Sie sehen, schalten Sie mit type nicht nur um, sondern zeigen auch den derzeitigen Zustand an.
Last but not least bietet das Kommando get den Parameter -f, der dafür sorgt, dass der Client vorhandene Dateien immer überschreibt, ohne die Auswahl, anzuhängen, den Download wiederaufzunehmen oder ähnliches.
Ncftp bietet einen Befehl, der sämtliche Arbeiten des Clients direkt in den Hintergrund verlegt. Die Verwendung der Kommandos bgget, bgput und bgstart hat den Vorteil, dass die Eingabeaufforderung des FTP-Clients direkt wieder freigegeben wird. Teilen Sie dem Programm über bgget oder bgput zuerst mit, welche Daten in welche Richtung wandern sollen (Listing 3). Die Verwendung des (bg)put-Befehls setzt wiederum voraus, dass Sie auf dem Server Schreibrechte besitzen.
ncftp …e/pool/main/m/man2html > bgget *.deb + Spooled: get man2html_1.5-23.1_alpha.deb + Spooled: get man2html_1.5-23.1_arm.deb + Spooled: get man2html_1.5-23.1_i386.deb + Spooled: get man2html_1.5-23.1_m68k.deb + Spooled: get man2html_1.5-23.1_powerpc.deb + Spooled: get man2html_1.5-23.1_sparc.deb
Welche Transferwünsche im Spool auf Sie warten, zeigen Sie mithilfe des Befehls jobs an. Sie starten die Datenübertragung durch Eingabe von bgstart. Ncftp verrichtet die Arbeit im Hintergrund (auch noch nach Programmende) und verrät, in welchem Logfile Sie den Fortschritt beobachten können:
Watch the "/home/huhn/.ncftp/spool/log" file to see how it is progressing.
Zum Betrachten des Logfiles bietet sich der Befehl tail -f an, da er die Anzeige der Datei bei jeder Veränderung aktualisiert. So können Sie verfolgen, was Ncftp tut, ohne immer wieder das Logfile mit less oder more neu anschauen zu müssen.
Tippfaule oder vergessliche Menschen profitieren von der Möglichkeit, Lesezeichen in Ncftp anzulegen. Während einer Session tippen Sie das Kommando bookmark, bestätigen den Namensvorschlag von Ncftp mit [Eingabe] oder geben einen eigenen Bezeichner für das Lesezeichen an:
ncftp> bookmark Enter a name for this bookmark, or hit enter for "debian": debiantest Bookmark "debiantest" saved.
Ebenso bietet der Ncftp-Client von sich aus an, ein solches Lesezeichen anzulegen, wenn Sie close oder quit tippen. Sogar passwortgeschützte Zugänge merkt sich Ncftp und legt diese (verschlüsselt) in Ihrem Home-Verzeichnis in der Datei .ncftp/bookmarks ab.
Bei der nächsten Verbindungsaufnahme geben Sie einfach open zusammen mit dem Bookmark-Namen ein. Alternativ bietet open, gefolgt von [Eingabe], eine Übersicht der vorhandenen Lesezeichen. Eine Übersicht über die gespeicherten Lesezeichen erhalten Sie daneben auch über das Kommando von bookmarks.
Der FTP-Client bietet in dieser Ansicht sogar einen einfachen Editor an, um die Lesezeichen zu bearbeiten:
/ed bearbeitet den jeweiligen Eintrag./del löscht das Lesezeichen./dup dupliziert das Lesezeichen./new fügt ein Lesezeichen hinzu.Haben Sie die Arbeit mit den Lesezeichen beendet, so verlassen Sie über [X] den Bookmark-Editor wieder.
[1] Ncftp-Website: http://www.ncftp.com/