Table des matières

commande scp

SCP : Secure CoPy

SCP est le nom d'une commande fournis par le paquet “openssh-client”. La commande permet de façon très simple d'échanger des fichiers et des dossiers entre un client SSH et un serveur SSH.

L'utilisation de la commande SCP permet de rapidement prendre et envoyer des fichiers en ligne de commande entre machines Linux.

Nous allons ici utiliser la même structure de commande que la commande “cp” sous Linux qui permet de copier un fichier. SCP prend en effet le modèle de “cp” pour son utilisation basique.

Prenons le schéma suivant, il est souvent plus facile de visualiser les flux réseau ainsi :

On dispose donc de deux machines sous Linux, avec chacune leur arborescence.

Envoi d'un fichier via SSH en utilisant SCP

Si je suis sur la Machine mickael et que je souhaite envoyer le fichier /home/mickael/data/Fichier2 dans le répertoire /var/www du serveur Linux, je vais utiliser la commande suivante :

  scp /home/mickael/data/Ficher2 root@192.168.10.131:/var/www/

Quelques explications, vous allez voir, ce n'est pas si complexe que cela

Ici, on retrouve la structure de la commande “cp” dans laquelle on spécifie la source, puis la destination. Entre les deux, on peut voir “root@192.168.10.131 :”.

En effet, étant donné que l'on souhaite envoyer le fichier en question sur une autre machine, il faut bien spécifier son IP, de plus, si l'on passe par SSH, il faut s'authentifier. On va donc se logguer en root sur notre machine distante pour y déposer notre fichier. Le “:” permet de spécifier le chemin dans la machine distante. S'il n'est pas spécifié, les fichiers atteriront dans le dossier par défaut de l'utilisateur : la home. (/root pour l'utilisateur root, /home/user pour l'utilisateur “user”, etc.).

Note : Il faut bien sûr être certain que le chemin de destination existe sur la machine de destination. Dans le cas contraire, nous obtiendrons une erreur de la part de SSH.

scp : transfert de fichier à travers une connexion ssh

Avantages :

Inconvénients :

Exemple de cas d’utilisations :

Envoi de fichiers et répertoires

De serveur à serveur depuis votre machine locale

Copie récursive d’un dossier d’un serveur (serveur1) vers un autre serveur (serveur2) depuis votre machine locale.

Cela nécessite d’avoir accès aux deux serveurs, depuis votre machine locale, vous lancez une commande qui copiera les fichiers d’un serveur à un autre.

  scp -r -p user@serveur1:chemin/vers/dossier/source user@serveur2:chemin/vers/dossier/destination

Copier dans le presse-papier

De serveur à serveur en étant connecté à un serveur

La commande est sensiblement la même, vous êtes connecté sur la machine où sont disponibles les fichiers.

  scp -r -p chemin/vers/dossier/source user@serveur2:chemin/vers/dossier/destination

Copier dans le presse-papier

Aide sur scp : copie de fichiers

1. Définition

La commande scp permet de copier un fichier ou un répertoire (-r) du client vers le serveur ou du serveur vers le client. Le chemin du serveur peut être indiqué en absolu (/home/dupont/Repertoire par exemple) ou relatif à partir du répertoire de base Repertoire. Pour utiliser scp, vous devez connaître l’arborescence exacte des répertoires de la machine distante. Il est impératif que SSH soit installé sur les deux machines devant communiquer pour effectuer votre transfert. Attention: il sera nécessaire de donner votre mot de passe car au Centre de Calcul, il n’est pas possible de faire une authentification par échange de clés SSH (voir se connecter au Centre de Calcul avec SSH).

2. Usage

  scp [-pqrvBC1246] [-F ssh_config] [-S program] [-P port] [-c cipher][-i identity_file] [-l limit] [-o ssh_option]
  [[user@]host1:]file1[...] [[user@]host2:]file2

3. Syntaxe

     scp Login1@Serveur1:Chemin1/NomFichier1 Login2@Serveur2:Chemin2/NomFichier2
     scp Fichier login@serveur:Chemin
     scp -r Repertoire login@serveur:Chemin
     scp login@serveur:Chemin/Fichier .
     scp -r login@serveur:Chemin/Repertoire .

4. Exemple :

     scp calvat@ccali.in2p3.fr:/afs/in2p3.fr/home/c/calvat/Readme.txt .
     scp -r calvat@ccali.in2p3.fr:/afs/in2p3.fr/home/c/calvat/toto .

Liens Web

Transfert de fichier via SSH

Connection en ssh SFTP avec Filezilla

SFTP et Filezilla