FTP (File Transfer Protocol) est un protocole réseau standard utilisé pour transférer des fichiers vers et depuis un réseau distant.
Dans ce tutoriel, nous allons vous montrer comment utiliser le Linux ftp
commande à travers des exemples pratiques.
Dans la plupart des cas, vous utiliserez un client FTP de bureau pour vous connecter au serveur distant et télécharger ou télécharger des fichiers. Cependant, le ftp
La commande est utile lorsque vous travaillez sur un serveur sans interface graphique et que vous souhaitez transférer des fichiers via FTP vers ou depuis un serveur distant.
Avant de commencer #
Le trafic FTP n'est pas crypté. Pour un transfert de données sécurisé, utilisez SCPou SFTP.
Pour pouvoir transférer des fichiers, vous devez au moins disposer des autorisations de lecture sur le fichier source et d'écriture sur le système cible.
Lors du transfert de fichiers volumineux, il est recommandé d'exécuter la commande ftp dans un screen ou tmuxsession.
Le répertoire à partir duquel vous exécutez le ftp
commande est le répertoire de travail local.
Établir une connexion FTP #
-
Pour ouvrir une connexion ftp vers un système distant, invoquez le
ftp
commande suivie de l'adresse IP ou du nom de domaine du serveur distant. Par exemple, pour vous connecter à un serveur FTP au « 192.168.42.77 », vous saisirez :ftp 192.168.42.77
-
Si la connexion est établie, un message de confirmation s'affichera et vous serez invité à entrer votre nom d'utilisateur FTP, dans cet exemple le nom d'utilisateur FTP est
linuxize
:220---------- Welcome to Pure-FTPd [privsep] [TLS] ---------- 220-You are user number 1 of 50 allowed. 220-Local time is now 21:35. Server port: 21. 220-This is a private system - No anonymous login 220-IPv6 connections are also welcome on this server. 220 You will be disconnected after 15 minutes of inactivity. Name (192.168.42.77:localuser): linuxize
You may see a different confirmation message depending on the FTP service running on the remote server.
-
Une fois que vous avez entré le nom d'utilisateur, vous serez invité à saisir votre mot de passe :
Password:
-
Si le mot de passe est correct, le serveur distant affichera un message de confirmation et le
ftp>
invite.230 OK. Current restricted directory is / Remote system type is UNIX. Using binary mode to transfer files. ftp>
anonymous
comme nom d'utilisateur et votre adresse e-mail comme mot de passe. Commandes FTP communes #
La plupart des commandes FTP sont similaires ou identiques aux commandes que vous taperiez dans l'invite du shell Linux.
Voici quelques-unes des commandes FTP les plus courantes
help
ou?
- lister toutes les commandes FTP disponibles.cd
- changer de répertoire sur la machine distante.lcd
- changer de répertoire sur la machine locale.ls
- lister les noms des fichiers et répertoires du répertoire distant courant.mkdir
- créer un nouveau répertoire dans le répertoire distant courant.pwd
- imprimer le répertoire de travail courant sur la machine distante.delete
- supprimer un fichier dans le répertoire distant courant.rmdir
- supprimer un répertoire dans le répertoire distant courant.get
- copier un fichier de la télécommande vers la machine locale.mget
- copier plusieurs fichiers de la télécommande vers la machine locale.put
- copier un fichier de la machine locale vers la machine distante.mput
- copier plusieurs fichiers de la machine locale vers la machine distante.
Télécharger des fichiers avec le ftp
Commande #
Une fois connecté, votre répertoire de travail actuel est le répertoire personnel de l'utilisateur distant.
Lors du téléchargement de fichiers avec le ftp
commande, les fichiers seront téléchargés dans le répertoire à partir duquel vous avez tapé le ftp
commande.
Si vous souhaitez télécharger les fichiers dans un autre répertoire local, basculez-y en utilisant le lcd
commande.
Disons que nous voulons télécharger les fichiers sur le ~/ftp_downloads
répertoire :
lcd ~/ftp_downloads
Pour télécharger un seul fichier depuis le serveur distant, utilisez le get
commande. Par exemple, pour télécharger un fichier nommé backup.zip
vous utiliseriez la commande suivante :
get backup.zip
Le résultat devrait ressembler à ceci :
200 PORT command successful
150-Connecting to port 60609
150 6516.9 kbytes to download
226-File successfully transferred
226 2.356 seconds (measured here), 2.70 Mbytes per second
6673256 bytes received in 2.55 seconds (2.49 Mbytes/s)
Pour télécharger plusieurs fichiers à la fois, utilisez le mget
commande. Vous pouvez fournir une liste de noms de fichiers individuels ou utiliser des caractères génériques :
mget backup1.zip backup2.zip
Lors du téléchargement de plusieurs fichiers, vous serez invité à confirmer chaque fichier.
mget backup1.zip? y
200 PORT command successful
150 Connecting to port 52231
226-File successfully transferred
226 0.000 seconds (measured here), 31.51 Kbytes per second
14 bytes received in 0.00058 seconds (23.6 kbytes/s)
mget backup2.zip? y
200 PORT command successful
150-Connecting to port 59179
150 7.2 kbytes to download
226-File successfully transferred
226 0.000 seconds (measured here), 16.68 Mbytes per second
7415 bytes received in 0.011 seconds (661 kbytes/s)
Une fois que vous avez terminé de télécharger les fichiers depuis le serveur FTP distant, fermez la connexion en utilisant soit le bye
ou quit
commande :
quit
221-Goodbye. You uploaded 0 and downloaded 6544 kbytes.
221 Logout.
Télécharger des fichiers avec la commande FTP #
Pour télécharger un fichier d'un répertoire local vers un serveur FTP distant, utilisez le put
commande :
put image.jpg
Le résultat devrait ressembler à ceci :
200 PORT command successful
150 Connecting to port 34583
226-File successfully transferred
226 0.849 seconds (measured here), 111.48 Kbytes per second
96936 bytes sent in 0.421 seconds (225 kbytes/s)
Si vous souhaitez télécharger un fichier qui ne se trouve pas dans votre répertoire de travail actuel, utilisez le chemin absolu vers le fichier.
Pour télécharger plusieurs fichiers d'un répertoire local vers un serveur FTP distant, appelez le mput
commande :
mput image1.jpg image2.jpg
mput image1.jpg? y
200 PORT command successful
150 Connecting to port 41075
226-File successfully transferred
226 1.439 seconds (measured here), 102.89 Kbytes per second
151586 bytes sent in 1.07 seconds (138 kbytes/s)
mput image2.jpg? y
200 PORT command successful
150 Connecting to port 40759
226-File successfully transferred
226 1.727 seconds (measured here), 111.75 Kbytes per second
197565 bytes sent in 1.39 seconds (138 kbytes/s)
Lors du téléchargement de plusieurs fichiers, la commande vous demandera de confirmer chaque fichier que vous souhaitez télécharger.
Une fois que vous avez terminé de télécharger des fichiers sur votre serveur FTP distant, fermez la connexion avec bye
ou quit
.
Conclusion #
Dans ce tutoriel, vous avez appris à utiliser le ftp
commande pour télécharger et charger des fichiers sur votre serveur FTP distant.
N'hésitez pas à laisser un commentaire si vous avez des questions.