Mit anderen Rechnern im lokalen Netzwerk arbeiten, Dateien verschieben, ... [Anfänger]
Inhaltsverzeichnis:
- Bevor Sie beginnen
- Herstellen einer SFTP-Verbindung
- SFTP-Befehle
- Navigieren mit SFTP
- Übertragen von Dateien mit SFTP
- Herunterladen von Dateien mit dem SFTP-Befehl
- Hochladen von Dateien mit dem SFTP-Befehl
- Dateimanipulationen mit SFTP
- Fazit
SFTP (SSH File Transfer Protocol) ist ein sicheres Dateiprotokoll, mit dem auf Dateien über einen verschlüsselten SSH-Transport zugegriffen, diese verwaltet und übertragen werden.
Im Vergleich zum herkömmlichen FTP-Protokoll bietet SFTP alle Funktionen von FTP und ist einfacher zu konfigurieren.
Im Gegensatz zum
scp command
, der nur Dateiübertragungen zulässt, können Sie mit dem Befehl
sftp
eine Reihe von Vorgängen für
sftp
ausführen und die Dateiübertragung fortsetzen.
In diesem Tutorial zeigen wir Ihnen, wie Sie den Linux-Befehl
sftp
.
Bevor Sie beginnen
Um Dateien über SFTP übertragen und verwalten zu können, benötigen Sie Schreibrechte auf dem Remote-System.
Beim Übertragen großer Dateien wird empfohlen, den Befehl sftp in einer Bildschirm- oder einer tmux-Sitzung auszuführen.
Das Verzeichnis, von dem aus Sie den Befehl
sftp
ausführen, ist das lokale Arbeitsverzeichnis.
Herstellen einer SFTP-Verbindung
SFTP funktioniert auf einem Client-Server-Modell. Es ist ein Subsystem von SSH und unterstützt alle SSH-Authentifizierungsmechanismen.
Obwohl die herkömmliche Kennwortauthentifizierung standardmäßig eingerichtet und benutzerfreundlicher ist, wird empfohlen, SSH-Schlüssel zu erstellen und eine kennwortlose SFTP-Anmeldung einzurichten, wenn Sie regelmäßig über SSH / SFTP eine Verbindung zu Ihrem Server herstellen.
Verwenden Sie zum Öffnen einer SFTP-Verbindung zu einem
sftp
Befehl
sftp
gefolgt vom Benutzernamen des Remoteservers und der IP-Adresse oder dem Domänennamen:
sftp remote_username@server_ip_or_hostname
Sobald die Verbindung hergestellt ist, wird die
sftp
Eingabeaufforderung angezeigt, und Sie können mit dem Remotecomputer interagieren:
Connected to remote_username@server_ip_or_hostname. sftp>
Wenn der Remote-SSH-Server den Standardport 22 nicht
-oPort
, geben Sie mit der Option
-oPort
den alternativen Port an:
sftp -oPort=custom_port remote_username@server_ip_or_hostname
SFTP-Befehle
Die meisten SFTP-Befehle sind ähnlich oder identisch mit den Befehlen, die Sie in der Linux-Shell-Eingabeaufforderung verwenden würden.
Sie können eine Liste aller verfügbaren SFTP-Befehle abrufen, indem Sie
help
eingeben oder
?
.
help
Available commands: bye Quit sftp cd 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 am Remoteserver angemeldet sind, ist Ihr aktuelles Arbeitsverzeichnis das Ausgangsverzeichnis des Remotebenutzers. Sie können dies überprüfen, indem Sie Folgendes eingeben:
pwd
Remote working directory: /home/remote_username
Verwenden Sie den Befehl
ls
um die Dateien und Verzeichnisse
ls
:
ls
Verwenden Sie den Befehl
cd
um zu einem anderen Verzeichnis zu navigieren. Um beispielsweise in das Verzeichnis
/tmp
zu wechseln, geben Sie
/tmp
:
cd /tmp
Die obigen Befehle werden zum Navigieren und Bearbeiten des Remote-Standorts verwendet.
Die
sftp
Shell bietet auch Befehle für die lokale Navigation, Informations- und Dateiverwaltung. Den lokalen Befehlen wird der Buchstabe
l
vorangestellt.
Um beispielsweise das lokale Arbeitsverzeichnis zu drucken, geben Sie Folgendes ein:
cd lpwd
Local working directory: /home/local_username
Übertragen von Dateien mit SFTP
Mit SFTP können Sie Dateien sicher zwischen zwei Computern übertragen.
Der Befehl
sftp
ist nützlich, wenn Sie auf einem Server ohne GUI arbeiten und Dateien übertragen oder andere Vorgänge an den Remotedateien ausführen möchten.
Herunterladen von Dateien mit dem SFTP-Befehl
Sobald Sie am Remote-Server angemeldet sind, ist Ihr aktuelles Arbeitsverzeichnis das Home-Verzeichnis des Remote-Benutzers.
Beim Herunterladen von Dateien mit dem Befehl
sftp
werden die Dateien in das Verzeichnis heruntergeladen, aus dem Sie den Befehl
sftp
eingegeben haben.
Verwenden Sie den Befehl
get
, um eine einzelne Datei vom Remote-Server herunterzuladen:
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
get filename.zip local_filename.zip
Verwenden Sie die rekursive Option
-r
, um ein Verzeichnis vom fernen System herunterzuladen:
get -r remote_directory
Wenn eine Dateiübertragung fehlschlägt oder unterbrochen wird, können Sie sie mit dem Befehl
reget
.
Die Syntax von
reget
ist die gleiche wie die von
get
:
Hochladen von Dateien mit dem SFTP-Befehl
Verwenden Sie den Befehl
put
um eine Datei vom lokalen Computer auf den Remote-SFTP-Server hochzuladen:
put filename.zip
Die Ausgabe sollte ungefähr so aussehen:
Uploading filename.zip to /home/remote_username/filename.zip filename.zip 100% 12MB 1.7MB/s 00:06
Wenn sich die hochzuladende Datei nicht in Ihrem aktuellen Arbeitsverzeichnis befindet, verwenden Sie den absoluten Pfad zur Datei.
Wenn Sie mit
put
, können Sie dieselben Optionen verwenden, die mit dem Befehl
get
verfügbar sind.
Um ein lokales Verzeichnis hochzuladen, geben Sie Folgendes ein:
put -r locale_directory
So setzen Sie einen unterbrochenen Upload fort:
Dateimanipulationen mit SFTP
Um Aufgaben auf einem Remote-Server auszuführen, stellen Sie normalerweise eine Verbindung über SSH her und erledigen Ihre Arbeit über das Shell-Terminal. In einigen Situationen hat der Benutzer jedoch möglicherweise nur SFTP-Zugriff auf den Remoteserver.
Mit SFTP können Sie einige grundlegende Dateibearbeitungsbefehle ausführen. Im Folgenden finden Sie einige Beispiele für die Verwendung der SFTP-Shell:
-
Informationen zur Festplattennutzung des Remote-Systems abrufen:
df
Size Used Avail (root) %Capacity 20616252 1548776 18002580 19067476 7%
Erstellen Sie ein neues Verzeichnis auf dem 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 fernen System:
chmod 644 file_name
Ändern Sie den Eigentümer einer Datei auf dem fernen System:
chown user_id file_name
Sie müssen die Benutzer-ID für die Befehle
chown
undchgrp
angeben.Ändern Sie den Gruppeneigentümer einer entfernten Datei mit:
chgrp group_id file_name
Wenn Sie mit Ihrer Arbeit fertig sind, schließen Sie die Verbindung, indem Sie
bye
eingeben oder
quit
.
Fazit
In diesem Tutorial haben wir Ihnen gezeigt, wie Sie mit dem Befehl sftp Dateien auf Ihren Remote-SFTP-Server herunterladen und von dort hochladen können.
Möglicherweise möchten Sie auch eine SSH-Schlüssel-basierte Authentifizierung einrichten und eine Verbindung zu Ihren Linux-Servern herstellen, ohne ein Kennwort einzugeben.
Fühlen Sie sich frei, einen Kommentar zu hinterlassen, wenn Sie Fragen oder Feedback haben.
SFTP-TerminalEasy Transfer: Übertragen von Dateien von Windows Phone über Wi-Fi
Easy Transfer ist eine kostenlose Windows Phone-Anwendung, mit der Sie Dateien freigeben können von Ihrem Telefon zu einem anderen Gerät, das ein Wi-Fi-Netzwerk verwendet.
Verwendung von skydrive zum Abrufen von Dateien von Ihrem PC aus der Ferne
Wussten Sie, dass Sie mit SkyDrive nahezu jede Datei von Ihrem Heim-PC aus fernabrufen können? Es ist ziemlich ordentlich. Schau dir die Schritte an!
Verwendung von sed zum Suchen und Ersetzen von Zeichenfolgen in Dateien
sed ist ein Streameditor. Mit sed können Sie Zeichenfolgen und Zeilen suchen, suchen und ersetzen, einfügen und löschen. Es unterstützt einfache und erweiterte reguläre Ausdrücke, mit denen Sie komplexe Muster abgleichen können.