e Das Protokoll FTP (File Transfer Protocol) wurde entwickelt, um Dateien zwischen verschiedenen Rechnern kopieren zu können. Um die Sache nicht unnötig zu verkomplizieren, wurde auch das Kommando für diese Art der Datenübertragung ftp genannt. Sicher kennen Sie schon die Funktion des Herunterladens von Dateien über einen Webbrowser durch Anklicken eines Links. Häufig zeigen Links auf Webseiten auch direkt auf so genannte FTP-Server.
Unter Debian GNU/Linux können Sie in einer Shell Dateien von einem FTP-Server auf Ihren Rechner kopieren. Das Kommando ftp ist nicht sehr komfortabel, erfüllt aber seinen Zweck. Alternativ können Sie auch das Programm ncftp installieren, das einige Arbeitsschritte vereinfacht.
Hier eine kleine Beispielsitzung mit dem Programm ftp; wir besorgen uns den neuesten Kernel-Patch.
Starten Sie das Programm ftp, indem Sie auf der Kommandozeile den Namen des Servers angeben, von dem Sie die Dateien kopieren möchten.
fr@debian:~$ ftp ftp.kernel.org Connected to zeus.kernel.org. 220 ProFTPD 1.2.0pre10 Server (ProFTPD) [zeus.kernel.org] Name (ftp.kernel.org:fr): ftp 331 Anonymous login ok, send your complete e-mail address as password. Password: 230- Welcome to the LINUX KERNEL ARCHIVES ftp.kernel.org "Much more than just kernels" IF YOU'RE ACCESSING THIS SITE VIA A WEB BROWSER PLEASE USE THE HTTP URL BELOW INSTEAD! ...
Alternativ können Sie auch zuerst das Programm ohne Servernamen starten und danach mit dem Befehl open <SERVER>, zum Beispiel also open ftp.kernel.org, die Verbindung herstellen. Nach kurzer Zeit sollten Sie nach einem Loginnamen gefragt werden. Wenn Sie auf dem Zielrechner über ein eigenes Zugangskonto verfügen und eine Datei aus einem nicht öffentlichen Bereich kopieren möchten, geben Sie hier Ihren Benutzernamen und danach Ihr Passwort an. Achtung: Bedenken Sie, dass das FTP-Protokoll keinerlei Verschlüsselung von Daten vornimmt! Ihr Benutzername und vor allem auch das Passwort werden im Klartext übertragen und können unter Umständen von einem Angreifer (Hacker) mitgelesen werden. Wenn Sie Daten aus nicht-öffentlichen Bereichen kopieren möchten, verwenden Sie besser das Kommando scp (Secure Copy) aus dem Paket ssh.
Bei einem Zugriff auf einen öffentlichen (public) FTP-Server können Sie immer den Benutzernamen „ftp“ oder „anonymous“ sowie als Passwort Ihre eigene E-Mail-Adresse verwenden.
Nach erfolgreichem Login erhalten Sie die Meldung, dass es sich bei dem entfernten Rechner um ein Unix-System handelt und dass der Übertragungsmodus auf binäre Übertragung gesetzt wurde. Eine Übertragung von Dateien im Textmodus (ASCII) ist nur in den seltensten Fällen sinnvoll; Sie können auch Textdateien problemlos im Binärmodus übertragen.
Sie können nun viele der normalen Kommandos, die Sie bereits aus der normalen Unix-Shell kennen, verwenden. Beispiele:
ftp> ls 200 PORT command successful. 150 Opening ASCII mode data connection for file list. lrwxrwxrwx 1 hpa ftpadmin 18 Nov 5 1999 debian -> pub/mirrors/debian lrwxrwxrwx 1 hpa ftpadmin 21 Nov 9 1999 debian-cd -> pub/mirrors/debian-cd dr-xr-x--- 2 mirrors ftpadmin 4096 Oct 12 1999 for_mirrors_only drwxr-xr-x 7 korg korg 4096 Aug 11 10:19 pub lrwxrwxrwx 1 hpa ftpadmin 18 Nov 8 1999 redhat -> pub/mirrors/redhat lrwxrwxrwx 1 root root 10 Oct 28 1999 welcome.msg -> pub/README 226 Transfer complete. ftp> cd /pub/linux/kernel 250 CWD command successful. ftp> ls 200 PORT command successful. 150 Opening ASCII mode data connection for file list. -r--r--r-- 1 korg korg 18458 Mar 12 1994 COPYING -r--r--r-- 1 korg korg 36981 Sep 16 1996 CREDITS drwxr-xr-x 4 korg korg 4096 Oct 5 1999 Historic -r--r--r-- 1 korg korg 12056 Sep 16 1996 README drwxr-xr-x 2 korg korg 4096 Apr 14 11:55 SillySounds drwxr-xr-x 4 korg korg 4096 Jul 10 02:34 crypto drwxr-xr-x 18 korg korg 4096 Aug 7 08:04 people drwxr-xr-x 4 korg korg 4096 Mar 7 10:38 ports drwxr-xr-x 3 korg korg 12288 Aug 17 23:40 testing drwxr-xr-x 2 korg korg 4096 Oct 5 1999 v1.0 drwxr-xr-x 2 korg korg 16384 Oct 5 1999 v1.1 drwxr-xr-x 2 korg korg 4096 Oct 5 1999 v1.2 drwxr-xr-x 2 korg korg 28672 Oct 5 1999 v1.3 drwxr-xr-x 2 korg korg 12288 Oct 5 1999 v2.0 drwxr-xr-x 2 korg korg 36864 Oct 5 1999 v2.1 drwxr-xr-x 2 korg korg 4096 Jun 28 10:52 v2.2 drwxr-xr-x 2 korg korg 16384 May 23 15:51 v2.3 drwxr-xr-x 2 korg korg 4096 Aug 9 19:26 v2.4 226 Transfer complete. ftp> cd v2.4 250 CWD command successful.
Wie Sie sehen, funktionieren die Kommandos ls und cd wie gewohnt. Natürlich können Sie beim Kommando ls auch Wildcards verwenden:
ftp> ls L* 200 PORT command successful. 150 Opening ASCII mode data connection for file list. -rw-r--r-- 1 korg korg 0 Aug 9 19:16 LATEST-IS-2.4.0-test6 ftp> ls *test6* 200 PORT command successful. 150 Opening ASCII mode data connection for file list. -rw-r--r-- 1 korg korg 0 Aug 9 19:16 LATEST-IS-2.4.0-test6 -rw-r--r-- 1 korg korg 18106527 Aug 9 19:16 linux-2.4.0-test6.tar.bz2 -rw-r--r-- 1 korg korg 248 Aug 9 19:16 linux-2.4.0-test6.tar.bz2.sign -rw-r--r-- 1 korg korg 22299559 Aug 9 19:16 linux-2.4.0-test6.tar.gz -rw-r--r-- 1 korg korg 248 Aug 9 19:16 linux-2.4.0-test6.tar.gz.sign -rw-r--r-- 1 korg korg 450477 Aug 9 19:16 patch-2.4.0-test6.bz2 -rw-r--r-- 1 korg korg 248 Aug 9 19:16 patch-2.4.0-test6.bz2.sign -rw-r--r-- 1 korg korg 537149 Aug 9 19:16 patch-2.4.0-test6.gz -rw-r--r-- 1 korg korg 248 Aug 9 19:16 patch-2.4.0-test6.gz.sign 226 Transfer complete. ftp> hash Hash mark printing on (1024 bytes/hash mark). ftp> get patch-2.4.0-test6.bz2 local: patch-2.4.0-test6.bz2 remote: patch-2.4.0-test6.bz2 200 PORT command successful. 150 Opening BINARY mode data connection for patch-2.4.0-test6.bz2 (450477 bytes). ######### ...
Hier finden wir gleich mehrere neue Kommandos: hash schaltet die Anzeige des Übertragungsfortschrittes ein, für 1024 Byte wird ein Zeichen „#“ gesetzt. Wenn Sie nun die Datei patch-2.4.0-test6.bz2 auf Ihren Rechner übertragen wollen, benutzen Sie hierzu das Kommando get mit dem gewünschten Dateinamen. Wenn Sie mehrere Dateien nacheinander übertragen wollen, können Sie das Kommando mget verwenden; hierbei können Sie Wildcards verwenden.
Natürlich können Sie auch Dateien von Ihrem Rechner zu einem entfernten Rechner übertragen; hierzu dient das Kommando put beziehungsweise mput. Beachten Sie hierbei, dass Sie normalerweise nicht in jedes beliebige Verzeichnis auf einem FTP-Server schreiben dürfen. Das Übertragen von Dateien auf einen Server setzt immer die passenden Zugriffsrechte voraus.
Wenn Sie ein wenig mit dem „klassischen“ FTP gearbeitet haben, werden Sie bemerken, dass es nicht sehr komfortabel zu handhaben ist. Hier kommt als textbasierte Alternative das Programm ncftp oder eine grafische Variante ins Spiel.
Das Paket ncftp ist ein sehr leistungsfähiger Ersatz für das ursprüngliche Programm ftp und besteht neben dem eigentlichen Programm zur Datenübertragung (ncftp) noch aus den Programmen ncftpget, ncftpput und ncftpls sowie ncftpbookmark (zum Verwalten von Lesezeichen) und ncftpbatch (zum Organisieren von größeren bzw. komplexeren Datenübertragungen).
Natürlich verfügt ncftp über alle Funktionen, die Sie von ftp kennen. Sehr praktisch ist, dass Sie, wie Sie es aus der Standard-Shell von Debian GNU/Linux kennen, Dateinamen mit der TAB-Taste vervollständigen können und Kommandos noch einmal über die Cursortasten aufrufen und verändern können.
Wenn ncftp gestartet ist, erhalten Sie mit dem Kommando help eine Übersicht der Kommandos. Geben Sie hinter dem Kommando help an, zu welchem Kommando Sie eine Hilfe wünschen. Das Kommando help showall zeigt noch einige weitere Kommandos.
Diese beiden Kommandos sind eine Schnittstelle zu ncftp und können über Skripte gesteuert werden. Sie dienen zum Hinauf- bzw. Herunterladen von Dateien.
Das Programm gFTP stellt eine sehr leistungsfähige Alternative zu der Kommandozeilen-Version des Programms ftp dar. Sie müssen sich hierbei nicht um die diversen Kommandos kümmern und können, ähnlich wie bei einem Dateimanager, Dateien oder Verzeichnisse kopieren.
gFTP ist so programmiert, dass Sie mehrere FTP-Verbindungen gleichzeitig öffnen können (multithreaded) und somit nicht warten müssen, bis eine Datenübertragung beendet ist, um eine weitere zu beginnen. Praktisch ist auch, dass Sie Dateien mit FTP- oder HTTP-Servern (Webservern) austauschen können. gFTP unterstützt weiterhin die Übertragung von kompletten Verzeichnissen, und abgebrochene Übertragungen können fortgesetzt werden.
Weitere Funktionen von gFTP sind:
Lesezeichen zum schnellen Zugriff auf Server
„Caching“ von Verzeichnissen
„Drag & Drop“-Unterstützung
Verbindung auch per Kommandozeile: gftp user:pass@ftp-site:port/directory
Ansehen und Verändern von Dateien auf dem entfernten Rechner
Oberfläche in vielen Sprachen, auch Deutsch
© 1999-2005 Frank Ronneburg - Dieser Inhalt ist unter einem Creative Commons Namensnennung - Nicht-kommerziell - KeineBearbeitung Lizenzvertrag lizenziert (creativecommons.org/licenses/by-nc-nd/2.0/de/).