So verwenden Sie den Befehl SFTP zum Übertragen von Dateien

Veröffentlicht in: Articles | 0

SFTP (SSH File Transfer Protocol) ist ein sicheres Dateiprotokoll, mit dem auf Dateien über einen verschlüsselten SSH-Transport zugegriffen, verwaltet und übertragen wird.

Im Vergleich zum herkömmlichen FTP-Protokoll bietet SFTP alle Funktionen von FTP, ist jedoch sicherer und einfacher zu konfigurieren.

Im Gegensatz zu SCP , das nur Dateiübertragungen unterstützt, können Sie mit dem SFTP eine Reihe von Vorgängen für Remote-Dateien ausführen und die Dateiübertragung fortsetzen.

In diesem Tutorial zeigen wir Ihnen, wie Sie den Befehl Linux verwenden.,

Bevor Sie beginnen #

Um Dateien über SFTP übertragen zu können, müssen Sie Schreibberechtigung auf dem Remote-System haben.

Beim Übertragen großer Dateien wird empfohlen, den Befehl in einer Screen-oder tmux-Sitzung auszuführen.

Das Verzeichnis, von dem aus Sie den Befehl ausführen, ist das lokale Arbeitsverzeichnis.

Verwechseln Sie SFTP nicht mit FTPS. Beide Protokolle dienen dem gleichen Zweck. FTPS steht jedoch für FTP Secure und ist eine Erweiterung des Standard-FTP-Protokolls mit Unterstützung für TLS.,

SFTP-Verbindung herstellen #

SFTP funktioniert auf einem Client-Server-Modell. Es ist ein subsystem von SSH und unterstützt alle SSH-Authentifizierungsmechanismen.

Um eine SFTP-Verbindung zu einem Remote-System zu öffnen, verwenden Sie den Befehl , gefolgt vom Benutzernamen des Remote-Servers und der IP-Adresse oder dem Domänennamen:

sftp remote_username@server_ip_or_hostname

Wenn Sie eine Verbindung zum Host mithilfe der Kennwortauthentifizierung herstellen, werden Sie aufgefordert, das Benutzerpasswort einzugeben.,

Sobald die Verbindung hergestellt ist, wird die Eingabeaufforderung angezeigt und Sie können mit der Interaktion mit dem Remote-Server beginnen:

Connected to remote_username@server_ip_or_hostname.sftp>

Wenn der Remote-SSH-Server den Standardport 22 nicht überwacht, verwenden Sie die Option , um den SFTP-Port anzugeben:

sftp -P custom_port remote_username@server_ip_or_hostname

SFTP-Befehle #

Die meisten SFTP-Befehle sind den Linux-Shell-Befehlen ähnlich oder identisch.

Um eine Liste aller verfügbaren SFTP-Befehle zu erhalten, geben Sie help oder ?ein.,

help

Dadurch wird eine lange Liste aller verfügbaren Befehle ausgegeben, einschließlich einer kurzen Beschreibung jedes Befehls:

Available commands:bye Quit sftpcd path Change remote directory to 'path'......version Show SFTP version!command Execute 'command' in local shell! Escape to local shell? Synonym for help

Navigieren mit SFTP #

Wenn Sie auf dem Remote-Server angemeldet sind, ist Ihr aktuelles Arbeitsverzeichnis das Home-Verzeichnis des Remote-Benutzers., Sie können dies überprüfen, indem Sie Folgendes eingeben:

pwd
Remote working directory: /home/remote_username

Um die Dateien und Verzeichnisse aufzulisten, verwenden Sie den Befehl ls:

ls

Um zu einem anderen Verzeichnis zu navigieren, verwenden Sie den Befehl cd. Um beispielsweise zum Verzeichnis /tmp zu wechseln, geben Sie Folgendes ein:

cd /tmp

Die obigen Befehle werden verwendet, um zu navigieren und am entfernten Speicherort zu arbeiten.

Die SFTP-Shell bietet auch Befehle für die lokale Navigation, Information und Dateiverwaltung., Den lokalen Befehlen wird der Buchstabe lvorangestellt.

Um beispielsweise das lokale Arbeitsverzeichnis zu drucken, geben Sie Folgendes ein:

cd lpwd
Local working directory: /home/local_username

Wenn Sie Dateien mit SFTP #

übertragen, können Sie Dateien sicher zwischen zwei Computern übertragen.

Wenn Sie auf einem Desktop-Computer arbeiten, können Sie einen GUI-SFTP-Client wie WinSCP oder FileZilla verwenden, um eine Verbindung zum Remote-Server herzustellen und Dateien herunterzuladen oder hochzuladen.,

Der Befehl ist nützlich, wenn Sie auf einem Server ohne GUI arbeiten und Dateien übertragen oder andere Vorgänge auf den Remote-Dateien ausführen möchten.,

Dateien mit dem SFTP-Befehl # herunterladen

Um eine einzelne Datei vom Remote-Server herunterzuladen, verwenden Sie den Befehl :

get filename.zip

Die Ausgabe sollte ungefähr so aussehen:

Fetching /home/remote_username/filename.zip to filename.zip/home/remote_username/filename.zip 100% 24MB 1.8MB/s 00:13

Beim Herunterladen von Dateien mit , die Dateien werden in das Verzeichnis heruntergeladen, aus dem Sie den Befehl eingegeben haben.,

Wenn Sie die heruntergeladene Datei mit einem anderen Namen speichern möchten, geben Sie den neuen Namen als zweites Argument an:

get filename.zip local_filename.zip

Um ein Verzeichnis vom Remote-System herunterzuladen, verwenden Sie die rekursive -r Option:

get -r remote_directory

Wenn eine Dateiübertragung fehlschlägt oder unterbrochen wird, können Sie sie div id=“19163bead6″> Befehl.,

Die Syntax von reget entspricht der Syntax von :

reget filename.zip

Dateien mit dem SFTP-Befehl #

Um eine Datei vom lokalen Computer auf den entfernten SFTP-Server hochzuladen, verwenden Sie den Befehl put:

put filename.zip

Die Ausgabe sollte ungefähr so aussehen:

Wenn sich die Datei, die Sie hochladen möchten, nicht in Ihrem aktuellen Arbeitsverzeichnis befindet, verwenden Sie den absoluten Pfad zur Datei.,

Wenn Sie mit put arbeiten, können Sie dieselben Optionen verwenden, die mit dem Befehl verfügbar sind.

Um ein lokales Verzeichnis hochzuladen, geben Sie Folgendes ein:

put -r locale_directory

Um einen unterbrochenen Upload fortzusetzen:

reput filename.zip

Dateimanipulationen mit SFTP #

Um Aufgaben auf einem Remote-Server auszuführen, stellen Sie normalerweise eine Verbindung über SSH her und führen Ihre Arbeit über das Shell-Terminal aus. In einigen Situationen hat der Benutzer jedoch möglicherweise nur SFTP-Zugriff auf den Remote-Server.,

Mit SFTP können Sie einige grundlegende Dateimanipulationsbefehle ausführen.,remote server:

mkdir directory_name
  • Benennen Sie eine Datei auf dem Remote Server um:

    rename file_name new_file_name
  • Löschen Sie eine Datei auf dem Remote server:

    rm file_name
  • Löschen Sie ein Verzeichnis auf dem Remote Server:

    rmdir directory_name
  • Ändern Sie die Berechtigungen einer Datei auf dem Remote-System:

    chmod 644 file_name
  • Ändern Sie den Besitzer einer Datei auf dem Remote-System:

    chown user_id file_name

    Sie müssen die Benutzer-ID an die chown und chgrp Befehle.,

  • Ändern Sie den Gruppenbesitzer einer Remote-Datei mit:

    chgrp group_id file_name
  • Sobald Sie mit Ihrer Arbeit fertig sind, schließen Sie die Verbindung, indem Sie bye oder quiteingeben.

    Fazit #

    In diesem Tutorial haben wir Ihnen gezeigt, wie Sie mit dem Befehl Dateien herunterladen und auf Ihren Remote-SFTP-Server hochladen können.

    Möglicherweise möchten Sie auch eine SSH-schlüsselbasierte Authentifizierung einrichten und eine Verbindung zu Ihren Linux-Servern herstellen, ohne ein Kennwort einzugeben., Wenn Sie regelmäßig eine Verbindung zu denselben Systemen herstellen, können Sie Ihren Workflow vereinfachen, indem Sie alle Verbindungen in der SSH-Konfigurationsdatei definieren .

    Schreibe einen Kommentar

    Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.