← Toutes les fiches

Transfert de fichiers Débutant

SCP, copier des fichiers via SSH

Transférer des fichiers et répertoires entre machines distantes de façon sécurisée grâce au protocole SSH.

Mis à jour le · 2 min de lecture

scpsshtransfertlinuxcopie

Définition

scp (Secure Copy Protocol) est une commande Unix servant à copier des fichiers et des répertoires entre machines à travers une connexion chiffrée SSH. Elle réutilise l’infrastructure d’authentification existante (mot de passe ou clé SSH) sans nécessiter de démon supplémentaire sur le serveur distant.

Syntaxe générale

La commande suit toujours le même schéma :

scp [options] source destination

L’un des deux emplacements (ou les deux) peut être distant. Un chemin distant s’écrit sous la forme utilisateur@serveur:chemin/vers/cible.

Mots-clés et options

OptionRôle
-rCopie récursivement un répertoire entier
-P <port>Spécifie le port SSH distant (attention au P majuscule)
-pPréserve les dates de modification, d’accès et les permissions
-CActive la compression gzip pendant le transfert pour gagner du temps
-i <clé>Indique le fichier d’identité SSH (clé privée) à utiliser
-qMode silencieux (masque la barre de progression)

Exemples de code

1. Envoyer un fichier vers un serveur distant

scp ./rapport.pdf debian@serveur.example.com:/home/debian/documents/

2. Récupérer un fichier distant en local

scp debian@serveur.example.com:/var/log/nginx/access.log ./access.log

3. Copier un dossier avec port SSH et clé privée spécifiques

scp -P 2222 -i ~/.ssh/cle_serveur -r ./site-web/ debian@serveur.example.com:/var/www/site/

Limites courantes

  • Pas de reprise : si la connexion coupe à 98 %, le transfert doit repartir de zéro.
  • Pas de transfert delta : modifier une seule ligne dans un fichier de 5 Go réexpédie la totalité des 5 Go.
  • Obsolescence progressive : les versions récentes d’OpenSSH privilégient désormais le protocole SFTP sous le capot pour scp.
La copie des exemples est disponible sur chaque bloc de code.

Lancer le quiz