Tutoriel LFTP sur Linux avec des exemples
- 4087
- 278
- Romain Martinez
Il n'y a certainement pas de pénurie de client FTP sur Linux: certains sont livrés avec une interface utilisateur graphique telle que Filezilla, d'autres sont des applications de ligne de commande qui peuvent être utilisées même lorsque des serveurs d'affichage, tels que Xorg ou Wayland, ne sont pas disponibles. Dans cet article, nous parlons de l'un des clients CLI FTP les plus utilisés et les plus riches en fonctionnalités: LFTP.
Dans ce tutoriel, vous apprendrez:
- Comment installer LFTP sur les distributions Linux les plus utilisées
- Comment se connecter et s'authentifier avec un hôte distant
- Comment créer, supprimer, modifier et répertorier les signets
- Certaines des commandes LFTP les plus utilisées
- Comment exécuter les commandes de manière non interactive
- Comment télécharger des fichiers torrent avec LFTP
Exigences et conventions logicielles utilisées
Catégorie | Exigences, conventions ou version logicielle utilisée |
---|---|
Système | Distribution indépendante |
Logiciel | lftp |
Autre | Autorisations racinaires pour installer le package LFTP |
Conventions | # - nécessite que les commandes Linux sont exécutées avec des privilèges racine soit directement en tant qu'utilisateur racine, soit par l'utilisation de Sudo commande$ - Exige que les commandes Linux sont exécutées en tant qu'utilisateur non privilégié régulier |
Installation
Comme décrit dans sa page manuelle, lftp est un programme de transfert de fichiers sophistiqué qui permet aux connexions aux hôtes éloignés en utilisant une variété de protocoles tels que FTP, FTPS, SFTP, HTTP, HTTPS, Protocoles BitTorrent, etc. Étant open source, le programme est disponible dans le référentiel de tous les systèmes d'exploitation basés sur Linux les plus utilisés; L'installation de l'application sur Debian et ses dérivés tels que Ubuntu et Linux Mint n'est qu'une question de fonctionnement:
$ sudo apt-get update && sudo apt-get install lftp
Sur les versions récentes de Fedora, le package peut être installé en utilisant le DNF Gestionnaire de package, simplement en émettant la commande suivante:
$ sudo dnf installer lftp
Si Archlinux est votre pilote quotidien, vous pouvez installer LFTP en utilisant Pac-Man. Le package est disponible dans le référentiel «supplémentaire»:
$ sudo pacman -s lftp
Avec le logiciel installé sur notre système, nous pouvons commencer à jeter un œil à certaines de ses fonctionnalités les plus intéressantes.
Connexion à un serveur distant
Lors de l'utilisation lftp Il y a essentiellement deux façons de nous connecter à un hôte distant. La première est en invoquant l'application de notre coquille et en fournissant l'URL de l'hôte distant, la seconde consiste à utiliser le ouvrir
Commande, quand déjà dans l'invite LFTP.
Connexion à un hôte distant lors de l'invoquer LFTP
Pour se connecter à un hôte distant lors de l'invocation de l'application LFTP à partir de notre shell, tout ce que nous avons à faire est de fournir l'URL de la machine distante, comme indiqué dans l'exemple suivant:
$ lftp ftp: // ftp.bost à distance.com
Après avoir lancé la commande, si la connexion à l'hôte distant est réussie, nous serons présentés avec l'invite LFTP, prêt à accepter nos commandes (nous pouvons également entrer l'invite LFTP simplement en invoquant l'application sans aucune option ni argument):
LFTP FTP.bost à distance.com: ~>
À ce stade, comme nous sommes déjà connectés à l'hôte distant, pour nous authentifier, nous pouvons utiliser le connexion
alias, ou le utilisateur
Commande (la première est juste un alias intégré pour la seconde). Pour effectuer l'authentification, nous serions
Par conséquent, courez:
LFTP FTP.bost à distance.com: ~> Connexion our username ourpassword
Si le mot de passe n'est pas fourni sera interactif:
LFTP FTP.bost à distance.com: ~> Connexion OurUserName Mot de passe:
Enfin, pour obtenir une authentification complètement non interactive, les informations d'identification de connexion peuvent être fournies directement dans l'URL que nous passons à LFTP pour la connexion:
$ lftp ftp: // ourUsername: ourpassword @ ftp.bost à distance.com
Connexion à un hôte distant lors de l'invite LFTP
Pour se connecter à un hôte distant lorsque vous utilisez déjà l'invite LFTP, nous devons utiliser le ouvrir
Commande, qui utilise la syntaxe suivante:
Open [Options] Site
Pour vous connecter à la même machine distante factice que nous avons utilisée dans l'exemple précédent, nous exécuterons:
lftp: ~> ouvrir ftp: // ftp.bost à distance.com
Le ouvrir
La commande, lorsqu'elle est utilisée comme dans l'exemple précédent, nous connectera simplement à l'hôte distant, sans effectuer d'authentification. Il est cependant possible de fournir des informations de connexion via le --utilisateur
et --mot de passe
options. Par exemple, pour se connecter et se connecter à la machine distante avec nos informations d'identification, nous exécuterons:
lftp: ~> ouvrir ftp: // ftp.bost à distance.com --User ourUsername --word-mot ourpassword
Alternativement, nous pouvons fournir les informations de connexion dans le cadre de l'URL, tout comme nous l'avons fait auparavant:
lftp: ~> ouvrir ftp: // ourUsername: ourpassword @ ftp.bost à distance.com
Créer et gérer les signets
Afin d'accéder et de s'authentifier facilement avec un hôte distant, sans avoir à fournir toutes les informations nécessaires chaque fois que nous voulons nous y connecter, nous pouvons créer des signets. Pour accomplir cette tâche, nous pouvons utiliser le signet
Commande en cas d'invite LFTP. La commande accepte une série de sous-communs qui nous permettent de créer et de manipuler des signets; Voyons ce qu'ils sont.
Création d'un signet (ajouter sous-commande)
La première sous-commande, ajouter
, Créons un nouveau signet. Tout ce que nous avons à fournir, c'est le nom que nous voulons utiliser pour le signet et les informations de connexion. Par exemple, pour créer un signet pour ftp: // ftp.bost à distance.com
qui comprend les informations de connexion que nous exécuterons:
LFTP: ~> Bookmark RemoteHost FTP: // OurUser: OurPassword @ FTP.bost à distance.com
Comme vous le voyez, nous avons fourni le mot de passe de l'authentification dans la machine distante dans le cadre de l'URL à utiliser avec le signet. Ici, nous devons remarquer deux choses importantes: la première est que, par défaut, les mots de passe ne sont pas stockés dans le fichier de signets (~ /.Local / Share / LFTP / Bookmarks
ou ~ /.LFTP / Bookmarks
) sauf si nous spécifions l'option Définir BMK: SAVE-PASSWORDS OUI
dans le fichier de configuration de l'application (les paramètres par utilisateur sont stockés dans le ~ /.LFTPRC
ou ~ /.LFTP / RC
Les fichiers, le fichier de configuration à l'échelle du système, est plutôt / etc / lftp.confli
).
La deuxième chose à remarquer est que les mots de passe sont stockés en texte clair et cela pourrait représenter un risque de sécurité si la machine sur laquelle nous travaillons ne peut pas faire confiance.
Fournir l'URL à utiliser pour un signet n'est pas toujours nécessaire. Si nous sommes déjà connectés à l'hôte distant pour lequel nous créons un signet, nous pouvons simplement invoquer le signet
commande et ne fournissez que le nom de signet que nous voulons utiliser:
lftp ourUser @ ftp.bost à distance.com: ~> Bookmark Remotehost
Pour utiliser le signet «RemoteHost» et se connecter à l'hôte distant correspondant, nous exécuterons:
$ LFTP Remotehost
Ou, en utilisant le ouvrir
commande:
LFTP: ~> Open Remotehost
Suppression d'un signet (Del Subcommand)
La suppression d'un signet est vraiment facile: tout ce que nous avons à faire est d'utiliser le del
sous-commande et fournissez le nom du signet que nous voulons supprimer, par exemple:
LFTP: ~> Bookmark Del Remotehost
Édition de signets (modifier sous-commande)
Pour modifier nos signets, nous pouvons utiliser le modifier
sous-commande. Une fois que nous l'exécuterons, le fichier contenant les signets sera ouvert dans notre éditeur de texte par défaut:
LFTP: -> Modifier les signets
Tout ce que nous avons à faire est de faire les modifications appropriées et de les sauver comme nous le ferions normalement. Le fichier de signets peut également être édité en invoquant directement notre éditeur (c'est juste un fichier texte, rien d'obscur), lorsqu'il n'est pas dans l'invite LFTP.
Lister les signets (lister la sous-commande)
Pour énumérer tous nos signets, tout ce que nous avons à faire est d'utiliser le liste
sous-commande. La liste des signets sera signalée à l'écran, et si les mots de passe sont stockés à l'intérieur, seront masqués avec un X
personnage:
LFTP: -> Liste de signet Remotehost FTP: // OurUser: xxxx @ ftp.bost à distance.com /
Commandes LFTP
Jusqu'à présent, nous venons de voir comment se connecter, authentifier et créer des signets avec LFTP. Voyons maintenant certaines des commandes les plus utiles que nous pouvons utiliser lorsqu'elles sont connectées à un serveur distant. Pour obtenir une liste complète des commandes disponibles que nous pouvons taper aider
et appuyez sur Entrée, lorsque vous êtes dans l'invite LFTP:
LFTP: ~> AIDE
Listing du contenu d'un répertoire distant
La première chose que nous pouvons vouloir faire lorsqu'une connexion est établie et que nous sommes authentifiés sur un serveur distant est de répertorier le contenu du répertoire de travail à distance. Pour accomplir la tâche, tout comme nous le ferions localement, nous pouvons utiliser le LS
commande:
lftp ourUser @ ftp.bost à distance.com: /> ls dr-xr-xr-x 2 19304109 19304109 4096 7 juil 2016 . DR-XR-XR-X 2 19304109 19304109 4096 7 juillet 2016… […]
De la même manière, pour modifier le répertoire de travail à distance, nous pouvons utiliser le CD
commande. Et si nous voulons exécuter la version «locale» de ces commandes, pour indiquer le contenu de notre répertoire de travail local ou le modifier? Tout ce que nous avons à faire est de préfixer les commandes avec un !
(Marque d'exclamation): Toutes les commandes avec ce préfixe seront considérées comme des commandes de coquille locales. Dans l'exemple ci-dessous, nous énumérons le contenu de notre répertoire de travail local:
lftp ourUser @ ftp.bost à distance.com: /> !LS Desktop Documents télécharge des photos musicales
Modifier un fichier distant
Pour modifier un fichier distant, nous pouvons utiliser le modifier
commande. Lorsque nous le faisons, le fichier distant est récupéré dans un répertoire temporaire sur notre machine locale, et il est ouvert dans notre éditeur de texte par défaut. Une fois le contenu modifié et enregistré,
Le fichier est automatiquement re-téléchargé.
Récupérer et télécharger des fichiers et des répertoires
Pour récupérer un fichier distant à notre répertoire de travail local, nous pouvons utiliser le obtenir
commande. Dans son utilisation de base, nous fournissons l'emplacement du fichier distant et éventuellement le chemin local où il doit être enregistré (par défaut, le fichier sera enregistré à l'aide de son nom de base). Pour sauver la télécommande WP-Config-échantillon.php
fichier distant localement, comme goûter.php
, Nous courions:
lftp ourUser @ ftp.bost à distance.com /> Obtenez un échantillon WP-Config.Échantillon PHP -O.php
Plusieurs fichiers peuvent être téléchargés en même temps en répétant la même syntaxe.
Pour effectuer l'opération opposée, donc pour télécharger un fichier local sur l'hôte distant, nous pouvons utiliser le mettre
commande. Fondamentalement, nous fournissons le chemin du fichier local à télécharger comme argument sur la commande. Si le fichier doit être enregistré à distance avec un nom différent, nous le fournissons comme l'argument de la -o
Option, tout comme nous l'avons fait ci-dessus. Dans l'exemple suivant, nous téléchargeons le fichier local WP-Config-échantillon.php
, et enregistrer dans l'hôte distant comme goûter.php
:
lftp ourUser @ ftp.bost à distance.com /> mettre WP-Config-échantillon.Échantillon PHP -O.php
Le obtenir
et mettre
Les commandes ne peuvent récupérer et télécharger des fichiers réguliers: cela signifie qu'ils ne fonctionneront pas avec les répertoires. Si nous voulons télécharger ou télécharger des répertoires et leur contenu, nous devons utiliser le miroir
commande'. La commande, comme son nom l'indique, crée un miroir d'un répertoire distant sur notre machine locale, ou vice-versa. Tout ce que nous devons fournir est la cible source, qui est par défaut comme la télécommande, et, éventuellement, le répertoire cible, qui est par défaut. Voyons un exemple:
lftp ourUser @ ftp.bost à distance.com /> miroir -p 10 site local_backup
La commande ci-dessus créera un miroir du télécommande placer
répertoire sur notre machine locale où il sera enregistré comme local_backup
. Quel est le -P
Option que nous avons utilisée? Le -P
Option (abréviation pour --parallèle
) accepte un entier comme argument, qui est le nombre maximal de fichiers à télécharger en parallèle (télécharger un fichier à l'époque serait vraiment fastidieux!).
Pour inverser les répertoires distants et locaux, nous devons utiliser le -R
option, formulaire court pour --inverse
: Cette option se fera pour qu'un miroir inversé soit créé, donc le premier argument transmis à la commande miroir est considéré comme le local
répertoire, et le second en tant que télécommande. Les fichiers peuvent être explicitement inclus ou exclus du miroir en utilisant le
-je
(--inclure
) et -X
(--exclure
) Options respectivement. Les deux options acceptent une expression régulière comme argument: tous les noms de fichiers correspondant à l'expression seront inclus ou exclus du miroir.
Il est également possible d'utiliser le -e
Option (abréviation pour --supprimer
) pour créer des miroirs identiques: les fichiers existants sur la destination mais pas sur la source seront supprimés.
Commandes en cours d'exécution
Jusqu'à présent, nous avons vu comment nous pouvons exécuter certaines commandes à partir de l'invite LFTP. Et si nous voulons les exécuter d'une manière complètement non interactive? Tout ce que nous avons à faire est d'utiliser le LFTP -c
option. Lorsque cette option est utilisée, les commandes sont passées à mesure que les arguments sont exécutés, puis LFTP sort automatiquement. Les commandes doivent être séparées
par un point-virgule. Supposons que nous voulons nous connecter à un hôte distant et créer un miroir du placer
Répertoire localement à un répertoire nommé local_backup
. Nous courions:
$ lftp -c "ouvrir ftp: // ouruser: ourpassword @ ftp.bost à distance.com; miroir --parallel = 10 site local_backup "
Télécharger des fichiers torrent
LFTP peut également être utilisé comme client torrent. Tout ce que nous avons à faire est de fournir l'emplacement d'un fichier torrent (il peut s'agir d'un fichier local, d'une URL ou d'une aimant lien). Par défaut, les fichiers récupérés sont stockés dans le répertoire de travail actuel, mais un emplacement différent peut être spécifié via le -O
option. Pour télécharger l'iso stable debian via Torrent dans le ~ / Télécharger
Répertoire, par exemple, nous courions:
lftp: ~> torrent https: // cdimage.Debian.org / debian-cd / current / amd64 / bt-cd / debian-10.7.0-AMD64-NETINST.ISO.torrent -o ~ / téléchargements
Conclusions
Dans ce didacticiel, nous avons appris l'utilisation de base de l'application LFTP: nous avons vu comment installer l'application sur certaines des distributions Linux les plus utilisées, comment se connecter et s'authentifier avec un serveur distant, comment créer des signets pour l'accès des emplacements rapides et l'accès et le Commandes qui doivent être utilisées pour répertorier le contenu des répertoires distants et locaux, pour modifier des fichiers distants, et télécharger et télécharger des fichiers vers et depuis un hôte distant. Nous avons également vu comment exécuter les commandes de manière non interactive. Enfin, nous avons vu comment nous pouvons utiliser LFTP comme client torrent. Pour une liste complète du
fonctionnalités et les commandes que nous pouvons exécuter lors de l'utilisation lftp, Veuillez consulter son manuel!
Tutoriels Linux connexes:
- Liste des clients FTP et installation sur Ubuntu 20.04 Linux…
- Liste des clients FTP et installation sur Ubuntu 22.04 Linux…
- Choses à installer sur Ubuntu 20.04
- Une introduction à l'automatisation Linux, des outils et des techniques
- Configuration du serveur FTP sur Linux
- Choses à faire après l'installation d'Ubuntu 20.04 Focal Fossa Linux
- Comment se connecter à un serveur FTP à l'aide de Python
- Fichiers de configuration Linux: 30 premiers
- Comment configurer le serveur et le client FTP / SFTP sur Almalinux
- Comment activer / désactiver Wayland sur Ubuntu 22.04 Desktop
- « Comment installer la distribution de python de l'informatique scientifique anaconda sur Linux
- Comment installer les pilotes nvidia sur Almalinux 8 »