GNU/Linux >> Tutoriels Linux >  >> Linux

Comment utiliser les commandes et les options SFTP

Présentation

SFTP (Safe File Transfer Protocol) fait partie du protocole SSH conçu pour transférer en toute sécurité des fichiers entre des systèmes distants. Il permet aux utilisateurs d'afficher, de gérer et de modifier les autorisations de fichiers et de répertoires sur des systèmes distants.

Dans ce didacticiel, nous passerons en revue les commandes que vous pouvez utiliser avec SFTP tout en fournissant des explications, des options et des exemples pour chacune.

Prérequis

  • Accès à un système local et à un serveur distant, connectés à l'aide d'une paire de clés publiques SSH.
  • Une connexion Internet fonctionnelle.
  • Accès à la fenêtre du terminal.

Liste des commandes et options SFTP

SFTP permet aux utilisateurs de transférer des données entre un serveur SFTP distant et un système client local. SFTP utilise le protocole réseau SSH pour connecter deux systèmes qui partagent une clé SSH publique.

La connexion au serveur SFTP ouvre l'interface du shell SFTP. L'interface shell SFTP prend en charge les commandes suivantes :

Commande Description
cd [path] Changez le répertoire sur le serveur distant en [path] .
lcd [path] Changez le répertoire sur le système local en [path] .
chgrp [group ID] [path] Changer la propriété du groupe en [group ID] pour le fichier ou le dossier situé à [path] .
chmod [mode] [path] Changer la propriété en [mode] pour le fichier ou le dossier situé à [path] .
chown [user ID] [path] Changer la propriété de l'utilisateur en [user ID] pour le fichier ou le dossier situé à [path] .
help Afficher le texte d'aide.
get [remote path] [local path] Transférer un fichier ou un répertoire depuis [remote path] sur le serveur distant vers [local path] sur le système local.
lls [options] [path] Afficher la liste du répertoire situé à [path] sur le système local. Utilise le ls options de commande.
ln [old path] [new path] Créer un lien symbolique à partir de [old path] vers [new path] sur le serveur distant.
lmkdir [path] Créer un répertoire à [path] sur le système local.
lpwd Afficher le répertoire local courant.
ls [options] [path] Afficher la liste du répertoire situé à [path] sur le serveur distant. Utilise le ls options de commande.
lumask [mask] Définir le masque des autorisations locales sur [mask] .
mkdir [path] Créer un répertoire à [path] sur le serveur distant.
put [local path] [remote path] Transférer un fichier ou un répertoire depuis [local path] sur le système local à [remote path] sur le serveur distant.
pwd Afficher le répertoire distant actuel.
exit Quitter l'interface SFTP.
exit Quitter l'interface SFTP.
rename [old path] [new path] Renommer un fichier sur le serveur distant à partir de [old path] vers [new path] .
rmdir [path] Supprimer un répertoire situé à [path] sur le serveur distant.
rm [path] Supprimer un fichier situé à [path] sur le serveur distant.
symlink [old path] [new path] Créer un lien symbolique à partir de [old path] vers [new path] sur le serveur distant.
version Afficher la version actuelle de SFTP
![command] Exécuter <strong>[command]</strong> dans le shell local.
! Passer temporairement au shell local.
? Afficher le texte d'aide.

Connexion au SFTP

La connexion à SFTP utilise la même syntaxe que la connexion à un système distant avec SSH :

sftp [username]@[remote hostname or IP address]

Par exemple, se connecter à un serveur avec le phoenixnap nom d'utilisateur à l'adresse IP 192.168.100.7 :

sftp [email protected]

Si la connexion réussit, le shell se déplace vers l'interface SFTP, indiquée par sftp> à la place du nom d'utilisateur actuel :

Lors de la connexion à un système distant avec SFTP, utilisez les options suivantes avec le sftp commande pour changer son comportement :

Option Description
-1 Utiliser la version 1 du protocole SSH lors de la connexion.
-4 Utilisez uniquement des adresses IPv4.
-6 Utilisez uniquement des adresses IPv6.
-A Permet le transfert de l'agent d'authentification SSH vers le serveur distant.
-a Essayer de poursuivre les transferts de fichiers interrompus.
-B [buffer size] Définissez une taille de tampon personnalisée (la valeur par défaut est de 32 768 octets).
-b [batch file] Spécifiez un fichier batch pour démarrer le sftp commande en mode batch.
-C Utiliser la compression de fichier.
-c [cipher] Sélectionnez un chiffrement à utiliser lors du chiffrement des données à transférer.
-D [SFTP server path] Se connecter à un serveur SFTP local sans utiliser SSH.
-F [SSH configuration file] Spécifiez un fichier de configuration SSH à utiliser lors de la connexion.
-f Videz les fichiers sur le disque immédiatement après le transfert.
-i [private key file] Sélectionnez un fichier contenant la clé privée pour l'authentification par clé publique.
-J [destination] Configurer le transfert TCP via la destination fournie.
-l [kbit/s] Définir une limite à la bande passante de connexion en kbit/s.
-N Désactiver le mode silencieux.
-o [SSH option] Ajouter une option de commande ssh lors de la connexion à SFTP.
-P [port number] Définir un port auquel se connecter.
-p Conserver les autorisations de fichiers et les temps d'accès lors du transfert.
-q Activer le mode silencieux.
-R [number of requests] Définissez le nombre de demandes de transfert de fichiers simultanées autorisées.
-r Transférer des répertoires de manière récursive.
-S [client] Spécifiez un client SFTP que vous souhaitez utiliser pour vous connecter.
-s [SSH subsystem or SFTP server path] Sélectionnez un sous-système SSH2 ou un chemin de serveur SFTP.
-v Tenir un journal de session détaillé.

Utilisez la exit commande pour mettre fin à la connexion en cours :

exit

Transférer des fichiers

Utilisez le get et put commandes pour créer une demande de transfert de fichier dans SFTP. Le get La commande transfère les fichiers d'un serveur distant vers le système local, tandis que la commande put commande fait le contraire.

Le get La commande utilise la syntaxe de base suivante :

get [path to file]

Utilisation de get La commande transfère un fichier du serveur distant vers le Accueil du système local annuaire. Par exemple :

get example01.txt

D'autre part, en utilisant le put La commande transfère un fichier du système local vers le Accueil du serveur distant répertoire :

put example02.txt

Pour transférer le fichier dans un autre répertoire, ajoutez le nom du répertoire à la fin de get ou put commande :

get [path to file] [path to directory]
put [path to file] [path to directory]

Pour changer le nom du fichier sur le système local, ajoutez le nouveau nom de fichier à la fin de la commande :

get [path to file] [new file name]
put [path to file] [new file name]

Le get et put les commandes utilisent les options suivantes :

Option Description
-a Essayer de reprendre un transfert de fichier.
-f Videz le fichier sur le disque immédiatement après le transfert.
-p Conserver les autorisations de fichiers et les temps d'accès lors du transfert.
-R Transférer un répertoire entier de manière récursive. Lorsque vous utilisez cette option, définissez un chemin vers un répertoire au lieu d'un chemin vers un fichier.

Modification des autorisations de fichiers

SFTP vous permet également de modifier les autorisations de fichiers et de répertoires sur le serveur distant. Le chown la commande modifie la propriété du fichier pour les utilisateurs individuels :

chown [user ID] [path to file]

Contrairement au chown commande, qui nécessite un ID utilisateur, la commande chmod fonctionne de la même manière que dans le shell standard :

chmod [permission] [path to file]

Une autre option consiste à utiliser le chgrp commande pour changer la propriété du groupe d'un fichier :

chgrp [group ID] [path to file]

SFTP vous permet également de configurer un umask local, en modifiant l'autorisation par défaut pour tous les futurs fichiers transférés vers le système local. Utilisez le lumask commande pour configurer un nouveau umask local :

lumask [permission mask]

Gestion des fichiers et des répertoires

SFTP fournit des options qui permettent aux utilisateurs de consulter et de gérer des fichiers à la fois sur le système local et sur le serveur distant. Le ls La commande vous permet de lister les fichiers et répertoires sur le serveur distant. Par exemple :

ls -l

De même, les lls (ls local ) répertorie les fichiers et répertoires sur le système local :

lls -l

Le cd et lcd les commandes modifient le répertoire de travail actuel sur le serveur distant ou le système local, respectivement :

cd [path to directory on the remote server]
lcd [path to directory on the local system]

L'utilisation de la commande mkdir crée un répertoire sur le serveur distant avec le chemin que vous fournissez :

mkdir [path to the new directory on the remote server]

Par exemple, créer Example_Directory dans la Accueil répertoire :

mkdir Example_Directory

Le mkdir la commande n'a pas de sortie, vous devez donc utiliser le ls commande pour vérifier le résultat :

Similaire à ceci, le lmkdir La commande crée un répertoire sur le système local :

lmkdir [path to the new directory on the local system]

En utilisant le même exemple :

lmkdir Example_Directory

Le rename commande change le nom d'un fichier ou d'un répertoire sur le serveur distant :

rename [old path] [new path]

Par exemple, renommer example01.txt vers sampledoc.txt :

rename example01.txt sampledoc.txt

Utilisation du rm commande supprime un fichier du serveur distant :

rm [path to file]

Par exemple, supprimer le sampledoc.txt fichier :

rm sampledoc.txt

De même, le rmdir commande supprime un répertoire du serveur distant :

rmdir [path to directory]

Par exemple, supprimer Example_Directory :

rmdir Example_Directory

Le ln et symlink les commandes créent un lien symbolique vers un fichier ou un répertoire sur le serveur distant :

ln [old path] [new path]
symlink [old path] [new path]

Par exemple, créer un lien vers example02.txt nommé example_link en utilisant le ln commande :

ln example02.txt example_link

Le pwd La commande affiche le répertoire de travail actuel sur le serveur distant en sortie :

pwd

D'autre part, le lpwd La commande crée une sortie qui affiche le répertoire de travail actuel sur le système local :

lpwd

Exécuter des commandes shell locales

SFTP vous permet d'exécuter une commande à l'aide du shell local en ajoutant un point d'exclamation (! ) avant la commande. Cela permet aux utilisateurs d'exécuter des commandes qui ne font pas partie du shell SFTP standard sur le système local.

Par exemple, SFTP ne prend pas en charge l'tree commande sous Linux. En utilisant le shell local, vous pouvez exécuter cette commande dans l'interface SFTP :

!tree

Utiliser le point d'exclamation (! ) sans commande déplace temporairement l'utilisateur vers le shell local. Pour revenir au shell SFTP, utilisez la exit commande.

Autres commandes

Utilisation de l'help ou ? commandes affiche le texte d'aide de l'interface SFTP. L'aide fournit une liste des commandes disponibles dans le shell SFTP.

La version La commande affiche la version actuelle du protocole SFTP installé :

Fiche de triche SFTP PDF

Vous trouverez ci-dessous une feuille de référence d'une page contenant toutes les commandes et options SFTP mentionnées ci-dessus. Enregistrez-le au format PDF en cliquant sur le lien ci-dessous.

TÉLÉCHARGER la feuille de triche SFTP


Linux
  1. Comment utiliser les commandes d'historique de Bash

  2. Comment utiliser les commandes 'cat' et 'tac' avec des exemples sous Linux

  3. Comment enregistrer les commandes Linux et les utiliser à la demande

  4. Comment utiliser les commandes strace et ltrace sous Linux

  5. Comment utiliser les commandes watch et jobs ensemble dans Bash ?

Comment installer et utiliser SFTP sur des serveurs Linux

Comment installer et utiliser PuTTY sous Linux

Comment utiliser les commandes Pbcopy et Pbpaste sous Linux

Comment installer et utiliser phpMyAdmin sous Linux

Comment installer et utiliser la commande fd sous Linux

Comment installer et utiliser Nu Shell sous Linux