FTP-Client Yafc

Aus LinuxUser 08/2008

FTP-Client Yafc

Datenschaufler

Der konsolenbasierte Client Yafc erledigt den Datentausch mit FTP- und SSH-Servern komfortabel, einfach und interaktiv.

Inhaber von Webspace kennen das Problem beim Hochladen von Webseiten, Bildern und Dateien: Man benötigt einen FTP-Client. Zwar bringen die meisten Distributionen standardmäßig ein Programm namens ftp mit, das aber nicht sonderlich komfortabel ausfällt. Ähnlich sieht es mit den Web-FTP-Lösungen der diversen Provider aus.

Moderne Desktops wie Gnome oder KDE bringen zwar FTP-Erweiterungen mit, die Drag & Drop beherrschen, diese versagen aber schon mal beim Setzen der Rechte für Dateien auf dem Server und lassen sich auch nicht in Skripten nutzen. Der FTP-Client Yafc (http://yafc.sourceforge.net/, Abbildung 1) ist zwar schon etwas betagt und konsolenbasiert wie ftp, bietet aber deutlich mehr Möglichkeiten und lässt sich komfortabler nutzen.

Abbildung 1: Den konsolenbasierten FTP-Client Yafc steuern Sie über Textbefehle und nicht mit der Maus.

Abbildung 1: Den konsolenbasierten FTP-Client Yafc steuern Sie über Textbefehle und nicht mit der Maus.

Der Programmname Yafc steht als Akronym für – sie haben es schon erraten – Yet Another FTP Client. Unter Ubuntu befördert ein sudo apt-get install yafc das Werkzeug auf die Festplatte. Auch Suse bringt Version 1.1.1 als Binärpaket mit, das Sie über den Paketmanager installieren kann. Fehlt Yafc wider Erwarten bei der Distribution Ihrer Wahl, so finden Sie die Quellen zum Selbstkompilieren auf der Projekt-Webseite.

Verbindung zum Server

Damit Sie über FTP mit Yafc Dateien übertragen können, muss auf der Gegenseite ein FTP-Server laufen. Darüber hinaus benötigen Sie die Zugangsdaten, also Nutzername und Passwort. Eine Verbindung zum Server bauen Sie im Terminalfenster mit einem Befehl auf, der folgender Syntax folgt:

$ yafc OptionenProtokoll://User:Passwort@Server:Port/Verzeichnis

Zu den nützlichsten Optionen zählen hier beispielsweise -a für den anonymen Zugriff (den der Server zulassen muss) oder -q zum Unterdrücken des Begrüßungstextes. Eine vollständige Auflistung aller Möglichkeiten liefert der Aufruf yafc -h.

Geben Sie kein Protokoll vor, denn nimmt Yafc automatisch an, dass Sie ftp:// verwenden möchten. Alternativ kann der Client aber auch verschlüsselt über ssh:// kommunizieren (Abbildung 2). Hierfür zeichnet dann auf der Gegenseite kein FTP-, sondern ein SSH-Server zuständig. Der Vorteil: Es werden keine unverschlüsselten Klartextpasswörter wie bei FTP übertragen.

Abbildung 2: Yafc unterstützt nicht nur den Datentransport via FTP, sondern kommt auch mit verschlüsselten und somit sicheren SSH-Verbindungen zurecht.

Abbildung 2: Yafc unterstützt nicht nur den Datentransport via FTP, sondern kommt auch mit verschlüsselten und somit sicheren SSH-Verbindungen zurecht.

Wie das Protokoll, so dürfen Sie auch den Nutzernamen auslassen: Yafc verwendet dann den Namen des lokalen Users. Mit der Option -u unterdrücken Sie diesen Automatismus, Yafc fragt dann den zu verwendenden Benutzernamen ab. Zusätzlich zum Username können Sie, durch einen Doppelpunkt getrennt, das Passwort für den Account auf dem Server übergeben. Dies empfiehlt sich aus Sicherheitsgründen aber nur für automatisierte Skripte – oder Situationen, in denen Ihnen garantiert niemand beim Eintippen des Befehls über die Schulter blickt.

Die Angabe des Servernamens ist Pflicht, die des Ports dagegen nur notwendig, falls dieser von den Standardeinstellungen abweicht. Bei Bedarf können Sie noch das Verzeichnis auf dem Server angeben, in dem Yafc mit seiner Arbeit beginnen soll. So baut etwa der Befehl

$ yafc ssh://hopfnehn@172.17.0.221:/Dokumente

eine SSH-verschlüsselte Verbindung zum Server 172.17.0.221 für den Benutzer hopfnehn auf. Anschließend fragt der Server nach dem Passwort und verbindet den FTP-Client mit dem Verzeichnis /Dokumente.

Yafc kann nicht nur mit einem einzelnen Server Kontakt aufnehmen, sondern ist auch in der Lage, Verbindungen zu mehreren Servern parallel zu verwalten. Mit dem Befehl

$ yafc ssh://hopfnehn@172.17.0.221:/Dokumente ssh://hoepfner@172.17.0.222

baut Yafc neben der bereits erwähnten eine weitere Verbindung auf. Zwischen den Verbindungen wechseln Sie im interaktiven Modus mittels des Befehls switch.

Statt gleich beim Programmstart von Yafc eine Serververbindung aufzubauen, können Sie den Client auch unmittelbar im interaktiven Modus starten. Der Befehl

yafc> open ssh://hopfnehn@172.17.0.221:/Dokumente ssh://hoepfner@172.17.0.222

am Kommandoprompt von Yafc stellt dann die Verbindung zu den gewünschten Servern her.

Der interaktive Modus

Nach dem geglückten Verbindungsaufbau befindet sich Yafc im interaktiven Modus, in dem Sie die gewünschten Dateitransfers anstoßen. Dazu stehen zahlreiche Kommandos zur Verfügung, die sowohl das Navigieren in den Server-Verzeichnissen als auch auf dem Client-Rechner ermöglichen.

Analog zu den bekannten Shell-Befehlen listet ein ls den aktuellen Verzeichnisinhalt auf dem Server (Abbildung 3) auf, ein cd Verzeichnis wechselt in einen anderen Ordner und pwd verrät Ihnen, in welchem Verzeichnis Sie sich gerade befinden. Wollen Sie diese Befehle nicht auf dem Server, sondern lokal ausführen, so stellen Sie ihnen ein Ausrufezeichen voran. Eine Befehlsübersicht liefert help.

Abbildung 3: Im interaktiven Modus verhält sich Yafc fast wie eine Shell und unterstützt sogar farbliche Hervorhebungen (    <code srcset=

–color) und Detailinfos ( -l).” width=”300″ height=”197″ /> Abbildung 3: Im interaktiven Modus verhält sich Yafc fast wie eine Shell und unterstützt sogar farbliche Hervorhebungen ( --color) und Detailinfos ( -l).

Der Befehl put überträgt Daten vom Client auf den Server, get holt sie vom Server auf den Client. Dabei fragt Yafc gegebenenfalls nach, bevor es bereits existierende Dateien oder Verzeichnisse überschreibt. Einen großen Vorteil gegenüber anderen konsolenbasierten FTP-Programmen Stellt die Möglichkeit dar, Verzeichnisse rekursiv zu übertragen. Das Kommando put -r test/ sorgt nicht nur dafür, dass das Verzeichnis test auf den Server gelangt, sondern überträgt auch alle darin befindlichen Unterverzeichnisse und Dateien. Diese Rekursion in Kombination mit get nutzen Sie bei Bedarf auch zum Erstellen vollständiger Sicherungskopien der Server-Daten.

Nach dem Austausch aller angeforderten Daten schließen Sie die Verbindung(en) mittels des Kommandos close und beenden Yafc mit exit.

Fazit

Zum manuellen oder skriptgesteuerten Übertragen von vielen Dateien erweisen sich konsolenbasierte FTP-Clients als erste Wahl. Yafc, einer der komfortabelsten Vertreter dieser Gattung, bietet deutlich mehr Funktionen als der Standard-Client ftp. Neben den hier vorgestellten Möglichkeiten zählen dazu unter anderem die Unterstützung von Proxys oder so genannte NOHUP-Datenübertragungen: Dabei läuft die Datenübertragung auch dann noch weiter, wenn der Nutzer sich aus dem System ausloggt – sofern der Rechner weiter läuft.

Glossar

SSH

Secure Shell. Ein Netzwerkprotokoll für das verschlüsselte Übertragen von Daten in Computernetzen.

LinuxUser 08/2008 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben